HTML est une norme qui définit un certain nombre d'éléments. Si tu définis tes propres éléments: tu ne fais plus du HTML, tu ne respecte plus la norme, ton code est invalide, tu fais ta propre mixture et tu fais des offrandes aux dieux mauvais pour que ton code soit compris par les navigateurs.
Une distinction qui peut t'aider (même si je ne sais pas si elle est bien orthodoxe), c'est la différence entre syntaxe et vocabulaire. HTML est un langage avec une syntaxe et un vocabulaire. Tu respectes la syntaxe, mais tu inventes ton propre vocabulaire.
Voici une erreur de syntaxe en HTML:
<p><strong>Kikoo lol</p>
Et voici une erreur de vocabulaire:
<kikoo lol>PTDR</kikoo>
Il est recommandé de produire du code HTML valide, qui respecte à la fois la syntaxe et le vocabulaire de ce standard. Même si les agents utilisateur arrivent à «rattraper» un certain nombre d'erreurs aussi bien de syntaxe que de vocabulaire, il n'est pas conseillé de se fier à ces largesses car on finit par avoir des surprises. Pour être plus précis:
- Tu peux avoir 10 erreurs de validation mais un seul problème qui en résulte. Le souci, c'est qu'il est bien difficile de retrouver quelle erreur de validation crée le problème concret. Dans les cas les plus extrêmes, on se retrouve à chercher une aiguille dans une meule de foin et on maudit la personne qui a produit ce putain de saloperie de code de merde! (Que ce soit soi-même ou une autre personne.)
- Tu peux avoir 10 erreurs de validation et 0 problème dans un navigateur, 1 problème dans un deuxième navigateur, 6 dans un autre, 2 dans un dernier... Il n'y a pas de standard pour la compréhension de ce qui est hors-langage. Le standard, c'est de respecter la syntaxe et le vocabulaire du langage.
Modifié par Florent V. (02 Sep 2009 - 15:37)