XHTML : le grand raté du Web

Le langage XHTML devait remplaçer le HTML, or 8 ans après sa sortie. Le constat est sans appel, on utlise XHTML 1.0 dans l’une de ses variantes pour écrire les pages Web, et l’on demande aux différents navigateurs de l’interpréter en tant que HTML (MIME type `text/html`). La version 1.1 oblige l’utilisation du bon type mime (`application/xhtml+xml`).

Ce mode d’utilisation à été mis en place par le W3C pour faciliter la transition du HTML au XHTML, pour pouvoir être interprété par les navigateurs n’interprétant pas le XHTML (`application/xhtml+xml`). Malheuresement, Internet Explorer refuse encore de l’interpréter.
Par ailleurs, l’utilisation du type mime `text/html` implique l’utilisation par les agents utilisateurs d’un DOM HTML et non d’un DOM XML.
La quasi totalité des frameworks javascript fonctionne uniquement sur un DOM HTML, rendant l’utilisant du XHTML réellement impossible.

Donc, encore aujourd’hui ne pouvons pas profiter des améliorations qu’apporte l’utilisation d’une syntaxe basé sur XML, tel l’utilisation d’espace de nommage, la rapidité d’analyse pour le rendu, l’indexation (comparé au SGML), la rigueur syntaxique. Le XHTML restera à mon sens le plus grand raté du Web.

L’avenir

La future version de HTML, le HTML 5 va continuer à fournir les 2 syntaxes (HTML5, XHTML5) avec obligation stricte d’utiliser le bon type mime. Vu l’existant actuelle, et le manque d’envie par certaine firme de fournir une implémentation correct pour un rendu XHTML. Je crois que je repasserais à la syntaxe basé sur le SGML.

Articles liés

Conformité XHTML et accessibilité
Layout 3 colonnes en XHTML / CSS
Le Doctype HTML 5 : un message pour l’avenir ?
Style interprété par tous les navigateurs sauf IE 6
Linux : premier système d’exploitation grand public en 2013 ?

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" cssfile="">