Passer au contenu
SilktideAide

Attribut scope obsolète

Silktide vérifie les attributs scope placés sur des cellules de données de tableau ordinaires. L’attribut scope décrit à quoi s’applique un en-tête; il ne doit donc se trouver que sur les cellules d’en-tête. Sur une cellule de données, il est obsolète et peut induire les technologies d’assistance en erreur.

En , scope est défini pour les cellules d’en-tête <th>. Le placer sur une cellule de données <td> signifie généralement l’une de ces deux choses : soit la cellule est réellement un en-tête et devrait être un <th>, soit l’attribut provient d’un ancien balisage et devrait être supprimé.

<!-- Problème : scope sur une cellule de données -->
<td scope="col">Nom</td>

Pourquoi c’est important

Un construit sa représentation d’un tableau à partir du balisage. Un attribut scope sur une cellule de données envoie un signal contradictoire : l’élément dit « Je suis une donnée », tandis que l’attribut dit « J’étiquette d’autres cellules ». Les différentes résolvent cette contradiction différemment : certaines ignorent l’attribut, d’autres traitent la cellule comme un en-tête. Le tableau peut donc être annoncé avec des en-têtes erronés ou incohérents selon le logiciel utilisé par le visiteur.

Comment corriger le problème

Déterminez ce qu’est réellement la cellule :

  1. Si elle agit comme un en-tête, remplacez-la par un <th> et conservez une valeur scope valide (row, col, rowgroup ou colgroup) :
<!-- Corrigé : l’en-tête est une véritable cellule d’en-tête -->
<th scope="col">Nom</th>
  1. S’il s’agit de données ordinaires, supprimez entièrement l’attribut scope :
<!-- Corrigé : cellule de données simple -->
<td>Nom</td>

Comment Silktide effectue cette vérification

  1. Trouve chaque cellule de tableau sur chaque page.
  2. Signale chaque cellule de données <td> qui comporte un attribut scope, quelle que soit sa valeur.

En savoir plus

Dernière mise à jour

Cette page vous a-t-elle été utile?