Le XHTML répond à une exigence de mise en forme des documents HTML.
La mise en place de ce nouveau standard a pour but de rendre compatible
les documents de type HTML avec la norme d'écriture des documents XML.
Les principales différences entre HTML et XHTML sont syntaxiques.
Si vous maîtrisez le HTML, le XHTML ne représente qu'une suite de bonnes pratiques à
appliquer lorsque vous créez vos pages.
Les règles à appliquer pour valider du XHTML sont :
La fermeture de toutes les balises
Ne pas laisser de balises se chevaucher
Ecrire en minuscule le nom des balises et des attributs
Ne pas laisser d'attributs présents sans valeur associée
Encadrer les valeurs appliquées aux attributs par des guillemets
Spécifier le standard utilisé pour l'écriture de la page : balise DOCTYPE
Ne plus utiliser les balises et les attributs obsolètes
» Fermeture des balises :
Fermer une balise correspond à écrire le tag de fermeture approprié à cette balise.
Certaines balises nécéssite déjà ce tag de fermeture (<a href...> ... </a> par exemple).
Cependant un certains nombre de balises ne nécessite pas de tag de fermeture :
<br>
<hr>
<img>
<input>
...
Ainsi lorque vous voulez écrire un retour à la ligne vous devez fermer la balise :
<br></br>
Cette syntaxe est correcte, mais la syntaxe la plus courante pour fermer une
balise est la suivante : <br /> (espace, slash "/" et ">")
nous venant tout droit du xml. La syntaxe " />" (respecter l'espace) est donc celle à appliquer.
Cette nécessité vient à nouveau d'une cohérence syntaxique avec le XML.
L'imbrication des tags doit être respectée : l'ordre de fermeture des tags doit
s'effectuer dans l'ordre inverse de celui d'ouverture. En d'autres termes,
le dernier tag ouvert doit être le premier fermé.
Exemples :
<b><u>mauvaise écriture des tags</b></u>
<u><b>écriture correcte des tags</b></u>
<b><u>écriture correcte des tags</u></b>
» Ecriture des balises et attributs en minuscules :
Il n'est plus possible en XHTML d'écrire par exemple :
<INPUT TYPE="hidden" name="test">
Il faut écrire les mots input et type en minuscule et toujours penser à bien écrire la fermeture de la balise:
<input type="hidden" name="test" />
» Spécifier la valeur de chaque attribut :
Certaines des balises HTML possèdent des attributs sans valeurs. La balise
<td> utilise par exemple l'attribut nowrap qui empêche les retours
à la ligne dans la cellule. les attributs checked ou disabled ne prennent pas non
plus de valeur.
Pour répondre à cette norme il faut donner la valeur correspondant au nom de l'attribut.
Une zone de texte non éditable s'écrira alors :
<input type="text" disabled="disabled" value="Texte définitif">
Toute valeur associée à un attribut doit être encadrée par des guillemets pour
être valable. Il n'est donc pas possible d'écrire explicitement des guillemets
dans la valeur d'un attribut. Pour contourner ce problème il suffit d'écrire le code
HTML associé ().
» Utiliser la balise <!doctype> :
La balise doctype définie le type de standard employé pour le balisage
de la page. Trois variantes existent :
- DTD Strict
- DTD Transitionnal
- DTD Frameset