Le XHTML est un langage de transition entre le HTML 4 et le XML 1.0. Il utilise la syntaxe et les mots de HTML 4 ce qui lui assure une bonne compatibilité avec les navigateurs d'anciennes générations. Le XHTML répond aussi à certaines règles de XML ce qui, nous le verrons plus tard, impose une rigueur dans la codification des pages.
Cet article est basé sur la documentation fournie par le W3C disponible à l'adresse suivante http://www.w3.org/TR/xhtml1. Une version française traduite par Karl Dubost est disponible ici.
Mais qu'est ce que le XHTML ?
XHTML est une famille de types de documents basée sur XML et étendant HTML 4. En gros, c'est une mise à jour des types de documents (Transitional, Strict et Frameset) du HTML 4 pour qu'il soit compatible avec les navigateurs comprenant le XML. Cette mise à jour permet aux développeurs de rendre compatible leur contenu avec XML et (si des règles simples sont suivies) avec HTML.
Quels sont les avantages de passer à XHTML ?
(repris de la documentation originale)
Les documents XHTML sont conformes à XML, ce qui implique qu'ils sont directement lisibles, éditables et validables avec les outils XML standards
Les documents XHTML peuvent être écrits pour fonctionner aussi bien ou mieux qu'ils ne le faisaient précédemment dans les navigateurs compatibles HTML 4 ainsi que dans les nouveaux agents utilisateurs XHTML 1.0.
Les documents XHTML peuvent utiliser des applications qui reposent sur le DOM HTML autant que sur le DOM XML.
La famille XHTML des documents évoluant, les documents compatibles à XHTML 1.0 pourront interagir bien plus facilement au sein d'environnements XHTML variés.
Le XHTML est la prochaine étape de l'évolution de l'Internet. En faisant le choix de l'XHTML, vous entrez dans le monde XML tout en restant compatible avec le HTML 4.
Pourquoi passer à XHTML ?
Nous venons de voir quels étaient les bénéfices de la migration à XHTML. Mais XHTML est bien plus que ça.
XHTML étant basé sur XML, il est par définition modulable et il est possible de lui ajouter d'autres balises ou d'autres attributs facilement, en suivant la spécification sur XHTML Modularization. Par exemple, la création d'un module "Chimie" permettrait la représentation de formules ou de molécules au sein d'une page sans passer par des images.
XHTML, tout comme XML, est un langage de description de contenu, c'est à dire que la mise en page sera faite par l'ajout d'une feuille de style. Cette approche permet de rendre lisible et accessible toutes les informations contenues au sein d'une page à tous les types de navigateurs. Il est ainsi possible de consulter un site conforme à XHTML à l'aide d'un smartphone, d'une télévision, d'un pocketPC, terminal alpha... La conversion sera faite automatiquement par le navigateur.