Il existe un outil en ligne gratuit permettant de vérifier la validité d'une page HTML: ce service, mis à disposition par le Consortium W3C, regarde d'abord le type du document dont il est question puis vérifie tout le HTML et s'assure qu'il respecte le standard indiqué (noms de balises, imbrication d'éléments,...):
Outil de validation mise à disposition gratuitement par le W3C
En choisissant l'option (3) pour valider le fichier bar.html, nous remarquons que la page n'est pas conforme au standard HTML4.01: en effet, cette norme impose l'utilisation de l'attribut alt dans chaque élément <img> pour des raisons d'accessibilité afin que les mal-voyants, par exemple, puissent savoir en quoi consiste l'image sans la voir.
En réévaluant le fichier à l'aide de l'outil de validation, nous constatons que le HTML est presque conforme au HTML 4.01 Transitoire. Seules manquent certaines informations concernant l'encodage des caractères:
Comme vous le savez, les fichiers sont enregistrés comme des suites de 0 et de 1. Ces suites sont organisées en séquence (par exemple d'un octet) et chaque séquence est associée à l'encodage d'un caractère. Cet encodage est une relation bijective entre une suite de 0 et de 1 d'une part et un caractère d'autre part. Or, les capacités des disques durs sont limitées; il a donc fallu limiter le nombre de 0 et de 1 par séquence représentative de caractère. Comme le nombre total de caractères à représenter dans les langues écrites sur Terre est bien supérieur au nombre de combinaisons possibles de ces suites de 0 et de 1, une même suite peut être interprétée de plusieurs manières selon l'encodage utilisé. C'est la raison pour laquelle il est impératif de mentionner explicitement au navigateur l'encodage de caractères utilisé lors de la sauvegarde du fichier HTML. Cette information est placée dans un élément <meta> situé dans l'en-tête <head> du fichier:
En rajoutant la ligne ci-dessus au fichier bar.html, ce dernier devient valide selon l'outil de validation:
Afin d'éviter des problèmes avec les accents, il est préférable d'utiliser l'encodage UTF8 pour vos documents à l'aide de la déclaration suivante:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">