[Coup de gueule] Arrêtons de confondre XHTML et CSS !

Actualitéweb

Publié par le (15458 lectures)

Une petite piqûre de rappel, maintes et maintes fois répétée et pourtant...

Assez fréquemment, sur les forums de webmasters que je hante, je lis ce genre de choses :

... Le but du XHTML est d'éviter les tableaux afin d'avoir une mise en page uniquement conçue en CSS.

... Le but du XHTML est de faire une séparation entre la fond et la forme.

Ce genre d'amalgames est un leitmotiv dans les salons de discussions en ligne. On dirait que la mode "CSS" ou "Web 2.0" veut tellement couper les ponts avec la conception web ancienne (à traduire par "tableaux de mise en forme" et "Wysiwyg") que l'on en devient fanatique et que l'on dédaigne certains langages - le HTML - sous prétexte qu'il permettent de concevoir des sites obsolètes.

Voilà certainement la grosse confusion des années actuelles.

Encore une fois, faisons une rapide piqûre de rappel :

  • le but du XHTML n'est pas d'éviter les tableaux (les tableaux sont et resteront des balises tout à fait valides et utiles)
  • les tableaux de mise en page ne sont pas prohibés, mais seulement déconseillés lorsqu'ils sont imbriqués (comme peuvent l'être des <div> imbriqués)
  • le but du XHTML n'est pas d'avoir une page uniquement gérée via CSS : les feuilles de styles existent et cohabitent depuis HTML et n'ont rien de spécifique à XHTML
  • le but de XHTML n'est pas de dissocier le contenu du contenant : là aussi, HTML le faisait très bien avant. Pour rappel, seules les versions strictes (de HTML ou XHTML) exigent cette séparation.

Pour rappel, les seules différences entre HTML et XHTML sont de l'ordre de la rigueur dans les balises (fermeture, imbrication, minuscules, etc.) et n'a strictement rien à voir avec les tableaux ou les CSS.

C'est en général le choix d'un doctype (strict ou transitionnel) qui va orienter la décision d'employer CSS ou non, mais pas le choix du langage.

OK, le contenu de ce coup de gueule a été dit et redit un peu partout, notamment dans ce blog ou le forum. Mais j'ai vraiment la sensation qu'il faut parfois en rajouter une couche de temps en temps pour que ça impregne bien les esprits.

Une dernière fois :

  • Oui, le HTML permet de faire des sites obsolètes avec des tableaux.
  • Oui le XHTML le permet tout autant.
  • Oui, il est tout à fait possible de faire un document valide, propre, accessible, en CSS, et HTML
  • Oui il est possible de faire des documents bien laids et invalides en XHTML transitionnel là où HTML strict aurait été un bien meilleur choix.

Voilà, c'est fait et ça soulage ;)

Commentaires

Bon rappel, utile à certains.

Par contre une petite erreur... un document se doit d'être sémantique pour respecter l'esprit des standards. Donc pas de tableau de mise en page, même non imbriqué :)

"Je suis toujours épaté de voir comment certain d'entre nous prennent à coeur toutes ces choses."

> Pour certains, ils s'agit de leur métier quand-même, donc ça me semble assez primordial d'être à jour dans sa profession.

Bref,en toute rigueur, un document XHTML est un document XML bien formé, (validé par une DTD spécifique)un document HTML ne l'est pas.
Le XHTML est un dialecte XML, pas le HTML.
Un document XHTML peut être transformé via une feuille XSLT, pas un document HTML etc...
Pour comprendre réellement la différence entre les deux, il faut avoir au moins des notions sur les dialectes XML.

Bon billet qui remet les pendules à l'heure. Il est vrai que l'amalgamme est courant.

J'adore ton commentaire Sébastien Guillon, surtout tes deux exemples !

@Sébastien Guillon > Merci pour ces exemples.

Pour XHTML 1.1 mal servi, on peut piocher ici aussi (voir les liens contenus) : forum.alsacreations.com/f...

Et pour voir un exemple frappant de site propre en HTML et CSS, pourquoi ne pas faire un tour sur le site du gourou mondial des CSS, Eric Meyer ? ;)
meyerweb.com/ (HTML 4.01 transitionnel)

Il est vrai qu'il ya de nombreuses confusions, mais la transition générale vers l'utilisation de <div> à la place de tableaux risque de prendre du temps.

"Il est vrai qu'il ya de nombreuses confusions, mais la transition générale vers l'utilisation de <div> à la place de tableaux risque de prendre du temps."

>> Raaah, mon prochain billet sera : "arrêtons de vouloir remplacer systématiquement les tableaux par des <div>" et son sous-titre : "le retour de la Divite chronique".

Ah ben ça aussi, ça a déjà été dit et redit :-/

"le but de XHTML n'est pas de dissocier le contenu du contenant : là aussi, HTML le faisait très bien avant."

Non, c'est en fait ni l'un ni l'autre...

... Ce dont le but est de dissocier le contenu du contenant (ie la dissociation de la description/structuration du contenu et de sa présentation suivant les types de media) c'est les CSS.

En fait conceptuellement parlant les CSS c'est fait pour ça, permettre d'opérer cette dissociation.

Commentaires clos