Le langage XHTML représente la prochaine génération
du langage HTML (actuellement dans sa version 4): il en reprend
la quasi-totalité des balises, mais son architecture en fait
une application XML (de l'XML "présentable", dirons-nous,
signifiant par là que les documents XHTML ont une structure
de présentation). Rappelons-nous (voir l'article
suivant) que les documents XML s'appuient sur une définition
de type de document (DTD). Pour l'XHTML, trois DTDs sont disponibles:
"Strict", "Transitional" et "Frameset".
On écrira, respectivement:
<!DOCTYPE html PUBLIC "-//W3C//DTD
XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"DTD/xhtml1-frameset.dtd">
A noter que le consortium W3
travaille à remplacer les DTD (issues du SGML) par des "schémas
XML".
XHTML/XML: les différences
XHTML se distingue du langage HTML sur les points suivants:
- toutes les balises doivent être en minuscule;
- les élements imbriqués sont possibles, mais sans
"chevauchement" (ainsi, <p><b>...</b></p>
est permis, pas <p><b>...</p></b>);
- les balises "non vides" doivent être fermées
(ainsi de <p>, <td>, <tr>, dont on pouvait omettre
la fermeture en HTML 4);
- les balises "vides" (comme <img>) doivent être
fermées (on écrira <img source="image.gif"
/>, <hr />, <input type="submit" value="ok"
/>, etc.);
- les valeurs des attributs de balise doivent être
placées entre guillements (ce qui était facultatif
en HTML 4);
- enfin, les "raccourcis" du type <td nowrap> au
lieu de <td nowrap="nowrap"> ne sont plus permis.
Par ailleurs, les scripts Javascript ou CSS devraient être
importés plutôt qu'imbriqués directement dans
le document XHTML, ceci pour éviter tout risque "d'expansion"
de certains marqueurs spécifiques par le processeur XML.
On le voit, tout document HTML "mal formé" (au
sens de l'XML) n'est potentiellement pas candidat à être
un document XHTML. Ce souci de rigueur est aussi la condition de
compatibilité avec l'XML, langage "extensible"
puisqu'il est possible de définir ses propres balises. Le
XHTML, de par sa définition, n'échappe pas à
cette règle. Par ailleurs, imposer une structure rigoureuse
aux documents HTML ajoute à leur universalité, et
rend leur compréhension par diverses internet appliances
moins hasardeuse.
Structure type d'un document XHTML
La structure type d'un document XML est la suivante (par exemple):
<!DOCTYPE html PUBLIC "-//W3C//DTD
XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Exemple</title>
</head>
<body>
<p>
<a href="http://www.journaldunet.com">Journal du
Net</a>
</p>
</body>
</html>
Pour plus d'informations sur XHTML, consultez la page suivante:
http://www.w3.org/TR/xhtml1/
|