Test 5.7.1

Pour chaque contenu de balise <th> s’appliquant à la totalité de la ligne ou de la colonne, la balise <th> respecte-t-elle une de ces conditions (hors cas particuliers) ?

La balise <th> possède un attribut id unique ;

La balise <th> possède un attribut scope ;

La balise <th> possède un attribut WAI-ARIA role="rowheader" ou role="columnheader".

Méthodologie 5.7.1

  1. Retrouver dans le document les tableaux de données ;
  2. Pour chaque en-tête (élément <th>) s’appliquant à la totalité de la ligne ou de la colonne, vérifier que l’élément <th> possède :
    • Soit un attribut id unique ;
    • Soit un attribut scope ;
    • Soit un attribut WAI-ARIA role="rowheader" ou "columnheader".
  3. Si c’est le cas pour chaque en-tête s’appliquant à la totalité de la ligne ou de la colonne, le test est validé.

Tests suivants et précédents au clavier

Test précédent : Maj +

Test suivant : Maj +

Avec ces raccourcis clavier, atteindre

Éléments et attributs

<th> id role='columnheader' role='rowheader' scope 'columnheader'

Note technique du critère 5.7

Si l’attribut headers est implémenté sur une cellule déjà reliée à un en-tête (de ligne ou de colonne) avec l’attribut scope (avec la valeur col ou row), c’est l’en-tête ou les en-têtes référencés par l’attribut headers qui seront restitués aux technologies d’assistance. Les en-têtes reliés avec l’attribut scope seront ignorés.

Cas particuliers du critère 5.7

Dans le cas de tableaux de données ayant des en-têtes sur une seule ligne ou une seule colonne, les en-têtes peuvent être structurés à l’aide de balise <th> sans attribut scope.

Définitions

En-tête de colonne ou de ligne

Contenu d’une cellule dans un tableau de données (la première cellule d’une colonne ou d’une ligne, généralement) qui sert d’intitulé pour la totalité ou une partie des cellules de la colonne ou de la ligne. Une colonne ou une ligne peut contenir plusieurs en-têtes (en-tête intermédiaire). Lorsque les en-têtes s’appliquent à l’ensemble d’une ligne ou d’une colonne, ils peuvent être structurés avec une balise <th> ou une balise pourvue d’un attribut WAI-ARIA role="rowheader" ou role="columnheader". Dans le cas contraire, seule une balise <th> peut être utilisée.

Note : seule la balise <th> étant totalement supportée par l’ensemble des technologies d’assistance, il est fortement recommandé de privilégier cette solution lors de la mise en œuvre afin d’éviter de nombreuses vérifications dans les différentes combinaisons prévues dans l’environnement de test (ou « base de référence »).

Tableau de données

Un tableau de données est une structure introduite par une balise <table> ou lorsqu’il est correctement restitué par les technologies d’assistance par une balise pourvue d’un attribut WAI-ARIA role="table". Cette balise permet de structurer des informations en lignes et en colonnes via des cellules de données et des cellules d’en-têtes.