RGAA 4.1.2 · Éléments obligatoires · Critère 8.2
Pour chaque page web, le code source généré est-il valide selon le type de document spécifié ?
Une technologie d'assistance ne devine pas mieux qu'un navigateur : sur un balisage cassé, l'arbre d'accessibilité devient imprévisible et les liaisons `for`/`aria-labelledby` désignent le mauvais élément.
Ce que dit le référentiel
Transcription du RGAA 4.1.2, sans interprétation. C’est ce texte qui fait foi, et celui que vous citez dans un rapport.
- 8.2.1 Pour chaque déclaration de type de document, le code source généré de la page vérifie-t-il ces conditions ?
- Les balises, attributs et valeurs d’attributs respectent les règles d’écriture ;
- L’imbrication des balises est conforme ;
- L’ouverture et la fermeture des balises sont conformes ;
- Les valeurs d’attribut id sont uniques dans la page ;
- Les attributs ne sont pas doublés sur un même élément.
Comment le vérifier
- Récupérer le code source généré — celui que le navigateur a réellement reçu, complété de ce que les scripts ont construit.
- Le passer au validateur du W3C.
- Ne retenir que ce que le test énumère : règles d'écriture, imbrication, ouverture et fermeture, unicité des
id, attributs non doublés. Les autres messages du validateur ne font pas la non-conformité. - Sur une application rendue côté client, coller le DOM sérialisé plutôt que le source initial : les deux diffèrent souvent.
Ce que notre outil fait
Jugement humain
Aucune machine ne tranche ce critère. L’outil vous présente les éléments et enregistre votre constat.
L'extension ne vérifie rien ici, et c'est une décision. Elle ne voit que le DOM — la version déjà réparée par le navigateur —, où les balises mal fermées et les imbrications fautives ont disparu : elle validerait ce qui est valide par construction. Elle ouvre donc le validateur du W3C sur la page auditée, d'un clic, et vous demande ce qu'il rapporte. Seules les lignes « Error » comptent pour ce critère ; les « Warning » et les « Info » ne rendent pas une page invalide. Sur une page derrière authentification, le validateur reçoit un 404 : l'extension copie alors le code source généré, doctype en tête, à coller dans l'onglet « Check by text input ».
Comment nous mesurons ce que l'outil sait faire · ce critère s'audite dans l'extension RGAA Lab.
Les pièges
Les erreurs qu’on rencontre vraiment, relevées au fil des audits.
- L'
iddupliqué est le défaut le plus fréquent et le plus dommageable :<label for>etaria-labelledbyne retiennent que la première occurrence. - Un composant réutilisé plusieurs fois dans la page duplique ses
idsans que personne ne s'en aperçoive : c'est la cause à chercher en premier.