RGAA 4.1.2 · Tableaux · Critère 5.8
Chaque tableau de mise en forme ne doit pas utiliser d’éléments propres aux tableaux de données. Cette règle est-elle respectée ?
Un tableau de mise en page qui porte des en-têtes ment au lecteur d'écran : il annonce une grille de données là où il n'y a qu'une disposition, et fait entendre des étiquettes qui ne veulent rien dire.
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.
- 5.8.1 Chaque tableau de mise en forme (balise
<table>) vérifie-t-il ces conditions ?- Le tableau de mise en forme (balise
<table>) n’a pas d’attributsummary(sinon vide) et ne contient pas de balises<caption>,<th>,<thead>,<tfoot>ou de balises ayant un attribut WAI-ARIArole="rowheader",role="columnheader"; - Les cellules du tableau de mise en forme (balises
<td>) ne possèdent pas d’attributsscope,headersetaxis.
- Le tableau de mise en forme (balise
Comment le vérifier
- Pour chaque tableau identifié comme étant de mise en forme, ouvrir son balisage.
- Vérifier l'absence de
<caption>,<th>,<thead>,<tfoot>, et de toutrole="columnheader"ourole="rowheader". - Vérifier l'absence de
summarynon vide sur le<table>, et descope,headersouaxissur les<td>. - Si l'un de ces éléments est présent, deux issues : soit le tableau porte en réalité des données — et c'est le 5.6 qu'il faut lire — soit il faut les retirer.
Ce que notre outil fait
Assisté
Le moteur repère les éléments concernés et vous pose la question. Il ne conclut pas à votre place.
L'outil sait lister les marques propres aux tableaux de données présentes dans un <table> donné. Ce qu'il ne sait pas, c'est si ce tableau est de mise en forme : la question précède l'analyse, et c'est vous qui y répondez.
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.
- Un gabarit d'e-mail collé dans une page traîne presque toujours un
<thead>décoratif. role="presentation"sur le<table>neutralise la sémantique à l'exécution, mais le test porte sur le balisage : les éléments doivent être retirés.