J'ai reçu ce matin le courrier suivant :

Je suis développeur web depuis 1997. Je suis passé du HTML au XHTML1.0 strict, avec un code sémantiquement correct, l'emploi massif des CSS... Pourtant, je n'ai pas de besoins spécifiques justifiant l'emploi de XHTML, mais je m'y tiens, car j'y trouve énormément d'avantages.

Abonné au flux RSS de Alsacretions (site prônant pour les nouveaux standards), je suis tombé sur ce sujet

Du coup, je me remets moi-même en question. Faut-il retourner au HTML (4.01 strict), en pensant que le XHTML1.0 n'apporte rien et est même risqué en terme de pérennité, car transitoire.

Ou faut-il (comme je le pensais) poursuivre dans cette voix, en suivant les recommandations du W3C et ainsi, participer au glissement des sites vers l'XHTML. J'ai besoin d'un avis, sur la question, de professionnels du Web et des standards que vous êtes, pour y voir plus clair.

J'ai convenu avec l'expéditeur que je répondrais sur le Standblog, car ce genre de question est d'intérêt général. Le nombre de commentaires suite au billet de Raphaël (Alsacréations) en est une preuve supplémentaire.

Je ne vais pas me lancer dans une longue dissertations sur l'intérêt des standards. si le sujet vous intéresse, OpenWeb est là pour ça. Et je tiens à ajouter que dans OpenWeb, je suis de très loin le plus médiocre de tous en terme de technique, qu'on se le dise !

En substance, la réponse courte à notre question est la suivante :

utilisez le standard qui vous convient !

Maintenant, revenons un peu sur le sujet, avec plus de détails. Les standards, comme à peu près tout dans la vie, c'est une histoire de compromis, pour une raison toute simple : rien dans ce monde n'est parfait. Cela tient principalement à deux choses :

  1. les navigateurs contiennent des bogues et c'est aussi le cas, dans une moindre mesure, des spécifications ;
  2. il faut s'accommoder de l'existant : rares sont les occasions de repartir d'une feuille blanche. Il faut sortir un site qui fonctionne avec (en vrac), le système de gestion de contenu, le contenu déjà rédigé, les tierces parties (régie publicitaire, mesure d'audience), les capacités des gens qui travaillent sur le projet, et les navigateurs qui sont déjà déployés auprès des utilisateurs... Il faut aussi préparer l'avenir, et l'avenir, c'est probablement XML (ou alors j'ai loupé une grosse marche).

Pour ma part, j'ai choisi XHTML 1.0 strict pour ce blog, pour Openweb et mozilla-europe.org. J'apprécie la rigueur du XHTML, notre travail peut bénéficier des outils liés au monde XML, nous séparons le contenu de la présentation ce qui nous donne une plus grande productivité, et nous permet d'avoir une grande rapidité de téléchargement des pages.

Mais pourquoi pas XHTML 1.1 ? Raphaël l'explique très bien, c'est un problème de type MIME, lequel n'est pas (encore) supporté par Internet Explorer.

J'aurais pu aussi choisir HTML 4.01 Strict, qui est très proche, mais qui ne permet pas de bénéficier facilement des outils de manipulation issus du monde XML (dont XSLT). L'avantage de HTML 4.01 Strict tient aussi au fait qu'il est moins intransigeant que le XHTML 1.0 quant à l'insertion de scripts dans le document. Pour beaucoup de gens, HTML 4.01 est la solution idéale.

Enfin, HTML 4.01 transitionnal sera bien pratique pour ceux qui ont des outils de mesure d'audience dépassé, ou des systèmes de publicité qui exigent de doctype. Notons qu'il est possible de séparer le contenu de la présentation (et donc passer aux CSS) tout en utilisant du transitionnel, ce qui permettra dans le futur de passer au strict à moindre coût, au moment où les éléments qui retenaient en mode transitionnel seront remplacés par des solutions plus modernes.

Enfin, je voudrais préciser un point important. On entend souvent dire, et notre lecteur n'est pas en reste, que certains standards sont transitoires ou bientôt obsolètes. C'est faux. Les standards sont là pour rester. Le HTML 4.01, au hasard, n'a pas été rendu obsolète par le XHTML. Il n'y a pas de pression à migrer depuis un standard qui vous convient. Le seul point gênant, c'est celui des logiciels qui vont interpréter votre contenu dans le futur. Le XML a un grand avenir, le HTML 4.01 restera très probablement aussi. Par contre, la soupe de balise est déjà morte. La preuve en est, les navigateurs modernes n'arrivent pas, malgré des efforts considérables, à répliquer parfaitement les limitations d'Internet Explorer ! Aussi, les propriétaires de documents façon soupe de balise ont du souci à se faire pour la pérennité de leurs données.