scope-attr-valid

L’attribut scope doit avoir une valeur valide

manualconfiance : mediumgravité : minorperceivable

Vérifie que scope="..." vaut row, col, rowgroup ou colgroup.

Applicabilité. S’applique aux éléments <th> dotés d’un attribut scope non vide. Le modèle de tableau HTML ne lit scope que sur <th>, et les navigateurs l’ignorent ailleurs (sur un <td>, ou sur l’attribut scope propre d’un élément personnalisé).

Attendu. La valeur de scope est « row », « col », « rowgroup » ou « colgroup » (sans distinction de casse, et sans retrait des espaces : HTML compare le mot-clé exactement, donc scope=" col " n’est pas un en-tête de colonne). Une valeur de scope invalide n’est pas reconnue par les technologies d’assistance, qui perdent sans le signaler l’association d’en-tête de ligne ou de colonne qu’elle devait déclarer.

Ce que rapporte un constat.

  • value : la valeur scope telle qu’écrite.

Ces champs de data.details aident à lire et à reproduire un constat. À part reasonCode et les quelques champs que la page Schéma de sortie donne comme stables, ils ne constituent pas un contrat stable : un champ peut être renommé ou supprimé dans une version mineure, ne vous appuyez donc pas dessus.

Exemples

pass
<table><tr><th scope="col">Name</th></tr></table>

« col » est une valeur scope valide.

can't tell
<table><tr><th scope="column">Name</th></tr></table>

« column » n’est pas une valeur scope valide (le jeton correct est « col »).

Comment vérifier

Quand cette règle ne peut pas trancher, elle renvoie cantTell et laisse la question à une personne. Chaque question qu’elle peut poser figure ici sous son code de raison, avec les étapes pour y répondre. Un constat porte les mêmes étapes dans howToCheck, dans la langue de l’analyse. Voir Schéma de sortie.

SCOPE_ATTR_INVALID

  1. Repérez le th indiqué par le rapport et lisez la valeur de son scope.
  2. Regardez le tableau et déterminez si cet en-tête étiquette une colonne ou une ligne.
  3. Vérifiez que scope vaut exactement row, col, rowgroup ou colgroup, sans espace superflu ni autre mot.

Réussite. La valeur de scope est row, col, rowgroup ou colgroup et correspond à la direction de l’en-tête.

Échec. La valeur de scope n’est pas un mot-clé reconnu : elle ne déclare donc aucune direction d’en-tête (bonne pratique, H63).

Voir le code source