ID'er for tabeloverskrifter
Silktide tjekker tabeller, der forbinder deres celler med overskrifter ved hjælp af attributten headers. I disse tabeller skal hver overskriftscelle have sit eget ID, ellers kan forbindelserne ikke fungere.
I komplekse tabeller – for eksempel tabeller med to niveauer af overskrifter eller celler, der strækker sig over flere rækker – kan forholdet mellem en celle og dens overskrifter ikke bestemmes ud fra placeringen alene. løser dette med attributten headers: Hver datacelle angiver id-værdierne for de overskriftsceller, der gælder for den. Det virker kun, hvis hver overskriftscelle faktisk har et id.
<!-- Problem: Den anden overskrift har ikke noget id, så celler kan ikke referere til den -->
<table>
<tr>
<th id="name">Navn</th>
<th>Score</th>
</tr>
<tr>
<td headers="name">Ada</td>
<td>98</td>
</tr>
</table>
Hvorfor dette er vigtigt
Når en tabel bruger headers-tilknytninger, læser en de tilknyttede overskrifter højt før hver værdi, så lytteren kan holde styr på, hvor vedkommende er i en kompleks tabel. En overskriftscelle uden et id kan ikke refereres til, så cellerne under den annonceres uden kontekst, og tabellen bliver gætværk for alle, der ikke kan se den.
Sådan løser du det
- Giv hver
<th>-overskriftscelle i tabellen et uniktid. - Opdater attributten
headersfor hver datacelle, så den angiver ID'erne for alle de overskrifter, der gælder for den, adskilt af mellemrum:
<!-- Løst: Hver overskrift har et id, og cellerne refererer til dem -->
<table>
<tr>
<th id="name">Navn</th>
<th id="score">Score</th>
</tr>
<tr>
<td headers="name">Ada</td>
<td headers="score">98</td>
</tr>
</table>
- Du kan også overveje at forenkle tabellen. Enkle tabeller med én række eller kolonne af overskrifter behøver slet ikke
headers-tilknytninger –<th>-celler med attributtenscopeer nok og langt nemmere at vedligeholde.
Sådan tester Silktide dette
- Find hver tabel på hver side.
- Spring tabeller over, hvor ingen celler bruger en
headers-attribut – dette tjek gælder kun for tabeller, der bruger eksplicitte overskriftstilknytninger. - I de resterende tabeller rapporteres hver
<th>-overskriftscelle, der ikke har enid-attribut.