Qu'est-ce que XHTML ?
Se familiariser avec le langage XHTML, ses variantes, ses spécificités.
Le langage XHTML (eXtended HyperText Markup Language) n'est pas véritablement un langage de programmation, c\'est plutôt un langage de balisage, tout comme XML sur lequel il est basé. Il sert à décrire le corps d\'une page web, sa structure interne faite de balises dites balises XHTML. Ainsi, tous les éléments d\'une page web (images, formulaires, liens hypertextes, scripts JavaScript, vidéos, etc...) sont incorporés par le navigateur au moment où il interprète votre page grâce à leurs balises respectives.
Par exemple, pour inclure une image dans une page, c\'est la balise img qui est utilisée :
| 1. 2. 3. 4. 5. 6. 7. 8. 9. | <ul> <li>l\'attribut <span class="code">lang</span> devient <span class="code">xml:lang</span> ;</li> <li>l\'attribut <span class="code">name</span> des éléments <span class="code">a</span> et <span class="code">map</span> devient <span class="code">id</span> ;</li> <li>la collection d\'éléments (module) <span class="code">ruby</span> a été ajoutée, ce module permet d\'afficher une petite boite de texte à côté d\'une autre boite de texte en relation avec elle. Il est utilisé pour afficher une annotation sur un texte, et le plus souvent, pour porter une indication de prononciation, pratique très répandu dans l\'est de l\'Asie, principalement au Japon et en Chine.</li> </ul> |

Ceci est une balise XHTML valide. Le nom de cette balise est img,
src et alt sont appelés les attributs de la balise
img. La balise img étant une balise auto-fermante, elle DOIT se terminer par
" />" (sans les guillemets et sans oublier l\'espace devant le slash).
Pour plus d\'informations sur la syntaxe de XHTML, vous pouvez consulter mon article sur
La syntaxe de XHTML - Migration depuis HTML.
Dans notre petit exemple, le navigateur va rechercher, à partir du répertoire courant (celui où se trouve la page qui contient cette balise),
le sous-répertoire images, puis, s\'il le trouve, le fichier image qui porte le nom de
monImage.jpg contenu dans ce sous-répretoire. S\'il trouve le fichier image, il affichera alors cette image
à l\'endroit où sa balise figure dans le code XHTML. En revanche, si pour une raison ou pour une autre, le navigateur ne parvenait pas
à trouver l\'image demandée (le plus souvent à cause d\'une erreur de chemin), il afficherait le message contenu dans l\'attribut
alt.
Le langage XHTML est le digne successeur du langage HTML, dont la syntaxe est basée sur SGML (Standard Generalized Markup Language). Cependant, il ne s\'agit QUE d\'une reformulation de la syntaxe de HTML : tout ce qu\'il est possible de faire en HTML peut également se concevoir en XHTML. J\'ai pris le parti de ne décrire sur ce site que XHTML, et pas (ou peu) HTML, car, même s\'il est bien évidemment toujours possible de développer ses pages en HTML, le XHTML constitue une évolution majeure.
En effet, développer vos pages en respectant le standard XHTML vous permettra de disposer d\'un site compatible XML (eXtensible Markup Language), un langage de balisage générique de plus en plus utilisé dont le but est de permettre l\'interopérabilité entre les divers systèmes d\'informations, en vue de l\'échange automatisé de contenu. Cette interopérabilité est rendue possible grâce au fait que les systèmes d\'informations n\'utilisent plus qu\'un seul format d\'échange de données pour communiquer entre eux. Si vous désirez en savoir plus sur le langage XML et les avantages de se conformer à ce standard, vous pouvez lire XHTML, un langage compatible XML.
De même qu\'il existe plusieurs versions de HTML, XHTML se décline lui aussi. Il existe ainsi les types de documents XHTML Basic, XHTML 1.0, XHTML 1.1, et XHTML 2.0.
- XHTML Basic : ce type de document est approprié à la navigation sur des appareils qui ne disposent pas des mêmes ressources
que les ordinateurs classiques de bureau ou portables. Il a été conçu pour permettre aux téléphones portables, PDAs
(Personal Digital Assistants) et autres ordinateurs de poche (liste certainement non exhaustive : en réalité, tous les appareils mobiles capables de naviguer sur le web)
de proposer à leurs utilisateurs un moyen de surfer tout en profitant de ce qui fait l\'essentiel de la navigation sur le web : l\'accessibilité.
XHTML Basic supporte l\'inclusion d\'images, l\'utilisation de formulaires, de tableaux élémentaires (des tableaux trop grands poseraient des problèmes d\'affichage pour les petites écrans de ces appareils) et la prise en charge des objets (sous réserve, le cas échéant, que les plugins nécessaires existent (!) et soient installés).
Bien qu\'il soit une restriction de XHTML, le type de document XHTML Basic confère au document qui l\'utilise un type de document XHTML. Un document de type XHTML Basic sera donc compatible XML. -
XHTML 1.0 : ce type de document est une reformulation de HTML 4 en une applicatiom XML 1.0, et trois DTDs correspondant à celles
définies dans HTML 4. La sémantique de XHTML 1.0 reste celle de HTML 4. XHTML 1.0 est utilisable avec les navigateurs HTML actuels à condition de suivre
certaines règles.
XHTML 1.0 est le type de document le plus utilisé en raison de sa stabilité et de sa compatibilité avec XML. -
XHTML 1.1 : ce type de document est une reformulation de XHTML 1.0 Strict, grâce à l\'utilisation des modules XHTML. Certaines fonctionnalités
de HTML 4 apparaissant comme obsolètes ont été gardées dans XHTML 1.0, elles sont maintenant clairement séparées des fonctionnalités valides.
XHTML 1.1 ne représente pas un grand intérêt si l\'on n\'a pas besoin d\'afficher du texte d\'une langue de l\'est de l\'Asie... En effet, XHTML 1.1 diffère très peu de XHTML 1.0 Strict. Les différences sont les suivantes :- l\'attribut lang devient xml:lang ;
- l\'attribut name des éléments a et map devient id ;
- la collection d\'éléments (module) ruby a été ajoutée, ce module permet d\'afficher une petite boite de texte à côté d\'une autre boite de texte en relation avec elle. Il est utilisé pour afficher une annotation sur un texte, et le plus souvent, pour porter une indication de prononciation, pratique très répandu dans l\'est de l\'Asie, principalement au Japon et en Chine.
Ce type de document n\'apporte donc pas grand chose de plus que son parent le XHTML 1.0 Strict. En outre, il est bien trop exigeant pour s\'imposer face à ce dernier. Préférez le XHTML 1.0 Strict, il vous apportera autant de satisfaction pour beaucoup moins de frais. -
XHTML 2.0 : ce type de document est la dernière version en date du standard XHTML. Il apporte certaines nouveautés (mais pas
forcément améliorations...) au processus de conception de pages web. Ainsi apparaissent les deux spécifications du W3C : XForms et Xframes.
XForms est une application dérivée du langage XML qui permet la création de formulaires évolués.
XFrames est une autre application dérivée du langage XML qui permet d\'utiliser des cadres (frames) pour afficher plusieurs fichiers dans une même page web. C\'est une petite révolution pour la gestion des cadres. On en avait bien besoin car seule la version 1.0 de XHTML supportait cette utilisation barbare et dépréciée des cadres qui ne laissait que très peu de libertés aux webmasters.
XHTML 2.0 introduit également l\'utilisation des listes de navigation : des listes spécialement destinées à contenir les liens de navigation. L\'élément XHTML object occupe une plus grande place, notamment grâce (ou à cause...) de la disparition de l\'élément img (!) Ce type de document permet à tous les éléments XHTML de contenir des liens, ce qui signifie qu\'ils sont tous potentiellement cliquables. De plus, les balises h1 à h6 seront apparemment conservées par soucis de compatibilité ascendante avec les pages web n\'utilisant pas XHTML 2.0, mais une nouvelle façon de former ses titres apparait : plus aucun ordre !



