Il existe deux types de normes pour écrire le code (X)HTML : le HTML (HTML 4 ou HTML5) et le xhtml (xhtml 1 ou HTML5).
Notez que HTML5 accepte aussi bien le standard HTML que xhtml.
La différence entre les deux réside dans le fait que xhtml se doit d'être conforme aux spécifications XML.
Différences principales entre les deux versions.
- En xhtml, les balises et attributs doivent être en minuscules.
Si la portion de code suivante
est valide en HTML, elle ne le sera pas en xhtml, pour lequel il faudra écrire
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <DIV ID="elementDIV"> <UL CLASS="liste"> <LI></LI> <LI></LI> </UL> </DIV>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <div id="elementDIV"> <ul class="liste"> <li></li> <li></li> </ul> </div>
- En xhtml, les valeurs d'attributs doivent être entourées de quotes.
De la même manière,
est valide en HTML, pas en xhtml.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <DIV ID=elementDIV> <UL CLASS=liste> <LI></LI> <LI></LI> </UL> </DIV>
- En xhtml, tout attribut doit avoir une valeur.
Le code suivant
est valide en HTML mais devra être écrit en xhtml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <SELECT> <OPTION VALUE=1>1</OPTION> <OPTION VALUE=2 CHECKED>2</OPTION> <OPTION VALUE=3>3</OPTION> </SELECT>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <select> <option value="1">1</option> <option value="2" checked="checked">2</option> <option value="3">3</option> </select>
- En xhtml, toute balise doit être fermée.
Si en HTML, certaines balises n'ont pas besoin d'être fermées, xhtml impose que toute balise le soit (y compris les balises dites autofermantes).
Le code suivant est valide en HTML :
mais devra s'écrire en xhtml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <P><IMG> <DIV> <UL> <LI>Liste 1 <LI>Liste 2 <LI>Liste 3 </UL> </DIV>
Notez que les différences ne sont pas liées à la structure du document mais juste à la façon d'écrire le balisage.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <p><img /></p> <div> <ul> <li>Liste 1</li> <li>Liste 2</li> <li>Liste 3</li> </ul> </div>
De même, pour autant que le doctype soit correctement renseigné, les deux syntaxes sont supposées produire le même rendu, c'est-à-dire que les navigateurs n'interprèteront pas le code à leur façon comme ils le font si le code n'est pas valide.
Si la syntaxe HTML permet d'éluder des parties jugées inutiles ou induites, le xhtml permet quant à lui d'avoir une syntaxe plus rigoureuse et donc d'éviter de potentielles erreurs de relecture du code.
Et vous ?
Quelle syntaxe privilégiez-vous ?
Pourquoi ce choix ?
Quels sont selon vous les avantages et inconvénients de chaque syntaxe ?
Avez-vous par le passé évolué d'une syntaxe à l'autre ou êtes-vous resté sur vos choix initiaux ? Pourquoi ?
N'hésitez pas bien sûr d'apporter vos compléments d'informations concernant les deux syntaxes !
Partager