Certaines balises de fermeture HTML 1 sont facultatives , à savoir:
</HTML>
</HEAD>
</BODY>
</P>
</DT>
</DD>
</LI>
</OPTION>
</THEAD>
</TH>
</TBODY>
</TR>
</TD>
</TFOOT>
</COLGROUP>
Remarque: à ne pas confondre avec les balises fermantes dont l'inclusion est interdite , à savoir:
</IMG>
</INPUT>
</BR>
</HR>
</FRAME>
</AREA>
</BASE>
</BASEFONT>
</COL>
</ISINDEX>
</LINK>
</META>
</PARAM>
Remarque: xhtml
est différent du HTML. xhtml est une forme de xml, qui nécessite que chaque élément ait une balise de fermeture. Une balise de fermeture peut être interdite en html, mais obligatoire en xhtml
.
Les balises de fermeture facultatives sont-elles
- idéalement inclus , mais nous les accepterons si vous les avez oubliés, ou
- idéalement non inclus, mais nous les accepterons si vous les mettez
En d'autres termes, dois- je les inclure ou ne pas les inclure?
La spécification HTML 4.01 indique que la fermeture des balises d'élément est facultative , mais ne dit pas s'il est préférable de les inclure, ou préférable de ne pas les inclure.
D'un autre côté, un article aléatoire sur DevGuru dit :
La balise de fin est facultative. Cependant, il est recommandé de l'inclure.
La raison pour laquelle je pose la question est que vous savez que c'est facultatif pour des raisons de compatibilité; et ils les auraient rendus ( obligatoires | interdits ) s'ils avaient pu.
En d'autres termes: qu'est-ce que HTML 1, 2, 3 a fait par rapport à ces balises de fermeture, désormais facultatives. Que fait HTML 5? Et que dois- je faire?
Remarque
Il est interdit à certains éléments en HTML d'avoir des balises de fermeture. Vous n'êtes peut-être pas d'accord avec cela, mais c'est la spécification, et ce n'est pas à débattre. Je demande des balises de fermeture facultatives et quelle était l'intention.
Notes de bas de page
1 HTML 4.01
/>
, comme <meta charset="utf-8" />
même si <meta charset="utf-8">
est valide HTML5?
<meta charset="utf-8" />
est un html invalide , il doit l' être <meta charset="utf-8">
. D'autre part , le xhtml <meta charset="tuf-8">
n'est pas valide , il doit être<meta charset="utf-8" />
<meta charset="UTF-8"/>
avec la balise de fermeture. Sinon, comment polyglotte ou xhtml pourrait-il être validé en html5 et xml?
</p>
balises de fermeture et le second les omet!