Naar inhoud springen
SilktideHelp

Verouderd scope-attribuut

Silktide controleert op scope-attributen die op gewone tabelgegevenscellen zijn geplaatst. Het scope-attribuut beschrijft waarop een kop betrekking heeft en hoort daarom alleen op kopcellen te staan; op een gegevenscel is het verouderd en kan het hulptechnologie misleiden.

In is scope gedefinieerd voor <th>-kopcellen. Als het op een <td>-gegevenscel wordt geplaatst, betekent dat meestal een van twee dingen: de cel is eigenlijk een kop en moet een <th> zijn, of het attribuut is achtergebleven uit oude markup en moet worden verwijderd.

<!-- Probleem: scope op een gegevenscel -->
<td scope="col">Name</td>

Waarom dit belangrijk is

Een bouwt zijn beeld van een tabel op basis van de markup. Een scope-attribuut op een gegevenscel is een tegenstrijdig signaal: het element zegt "Ik ben gegevens", terwijl het attribuut zegt "Ik label andere cellen". Verschillende lossen die tegenstrijdigheid verschillend op: sommige negeren het attribuut, andere behandelen de cel als een kop. Daardoor kan de tabel worden voorgelezen met verkeerde of inconsistente koppen, afhankelijk van de software die de bezoeker gebruikt.

Zo los je het op

Bepaal wat de cel werkelijk is:

  1. Als de cel als kop fungeert, wijzig je deze in een <th> en behoud je een geldige scope-waarde (row, col, rowgroup of colgroup):
<!-- Opgelost: de kop is een echte kopcel -->
<th scope="col">Name</th>
  1. Als het een gewone gegevenscel is, verwijder je het scope-attribuut volledig:
<!-- Opgelost: gewone gegevenscel -->
<td>Name</td>

Zo test Silktide dit

  1. Zoek elke tabelcel op elke pagina.
  2. Rapporteer elke <td>-gegevenscel die een scope-attribuut bevat, ongeacht de waarde ervan.

Meer informatie

Laatst bijgewerkt

Was deze pagina nuttig?