Algemeen Internet Software Toetsing Toegankelijke Bouwers

W3C ijkpunt 5.1 Geef voor tabellen met data de rij- en kolomheaders aan

Referentie: De WCAG ijkpunten zijn identiek aan de Waarmerk drempelvrij ijkpunten en de Webrichtlijnen.

Beschrijving

Het is belangrijk om de juiste (HTML-)tabelopmaak te gebruiken als je gegevens wilt presenteren in tabellen. In deze datatabellen zijn meestal te onderscheiden: een rij met kolomkoppen, een kolom met rijkoppen en de cellen met de gegevens. Een complexe datatabel heeft voor de kolom- en/of rijkoppen nog een extra niveau: een verdere detaillering van de kopinformatie. Bijvoorbeeld de kolomkop inkomsten is verder onderverdeeld in de jaren 2002 en 2003. Zie W3C ijkpunt 5.2 voor de eisen die gesteld worden aan complexe datatabellen.

In de code van datatabellen gebruik je doorgaans <tr>-tags voor de rijen ("tr" staat voor table row) en <td>-tags voor de datacellen ("td" staat voor table data). Om de rij- en kolomkoppen aan te geven moet je <th>-tags ("th" staat voor table header) gebruiken. Door het gebruik van de <th>-tags is de hulpapparatuur beter in staat om de koppen te indentificeren. Het is dan mogelijk om bij de data in een datacel de bijbehorende kopinformatie te presenteren.

Het gebruik van datatabellen maakt je gegevens beter toegankelijk. Gebruik daarom geen inspringingen of style sheets om je gegevens te presenteren. Als je een tabel alleen gebruikt voor de opmaak van je pagina moet je geen <th>-tags gebruiken. Het wordt ook aanbevolen om geen gebruik te maken van tabellen voor de layout van een pagina, maar in plaats daarvan style sheets te gebruiken. Gebruik alleen tabellen om gegevens te presenteren.

Relevante Webrichtlijnen: R-pd.11.1, R-pd.11.2, R-pd.11.3, R-pd.11.4, R-pd.11.5, R-pd.11.6, R-pd.11.7, R-pd.11.8, R-pd.11.9, R-pd.11.10,

Voordelen

  • Blinden, slechtzienden en mensen met een verstandelijke handicap hebben het meest voordeel van deze richtlijn. Door de juiste broncode te gebruiken in datatabellen worden de informatie en de structuur gescheiden van de presentatie. Het scheiden van informatie en structuur van presentatie maakt het mogelijk om informatie op alternatieve manieren te presenteren zonder verlies van informatie of structuur. Zodoende kan met de behoeften en beperkingen van verschillende gebruikers rekening gehouden worden. Zo kan bijvoorbeeld informatie die visueel in een datatabel gepresenteerd wordt, bijvoorbeeld de relatie van een datacel met een kolom- of rijkop, ook in spraak of in braille (tekst) gepresenteerd worden.

Criteria voor toetsing

  • In een datatabel zijn kolom- en of rijheaders aangegeven.

Voorbeeld

Eenvoudige datatabel voor treinreis

In de onderstaande tabel is te zien dat door het gebruik van de juiste HTML-code de data duidelijk weergegeven wordt. Voor de kolomkoppen zijn <th>-tags gebruikt.

Prijsoverzicht voor reis van Utrecht Centraal naar Haarlem (prijs in €)
Soort kaart 2e klas 1e klas
Enkele reis 8,00 12,40
Retour 14,10 21,90
Weekendretour 14,10 21,90

De gebruikte tabelopmaak maakt het ook voor hulpapparatuur mogelijk om de informatiestructuur weer te geven. Als een bezoeker bijvoorbeeld de cursor van de derde cel in de tweede kolom (retour 2e klas) naar de derde kolom verplaatst zou de uitvoer van de hulpapparatuur er als volgt uit kunnen zien:

1e klas
21,90

Voor de bezoeker is het nu veel duidelijker in welke kolom hij zich bevindt, waardoor de informatie in de datacellen beter begrepen kan worden. Nu is het bijvoorbeeld duidelijk dat 21,90 de prijs is voor een 1e klas retourtje en niet voor een tweede klas retourtje.

De code die in dit voorbeeld gebruikt is:

  1. <table width="50%" cellspacing="0" cellpadding="0" border="1" summary="Overzicht tarieven treinreis Utrecht naar Haarlem">
  2. <caption>Prijsoverzicht voor reis van Utrecht Centraal naar Haarlem (prijs in euro)</caption>
  3. <tr>
  4. <th>Soort kaart</th>
  5. <th>2e klas</th>
  6. <th>1e klas</th>
  7. </tr>
  8. <tr>
  9. <th>Enkele reis</th>
  10. <td align="right">8,00</td>
  11. <td align="right">12,40</td>
  12. </tr>
  13. <tr>
  14. <th>Retour</th>
  15. <td align="right">14,10</td>
  16. <td align="right">21,90</td>
  17. </tr>
  18. <tr>
  19. <th>Weekendretour</th>
  20. <td align="right">14,10</td>
  21. <td align="right">21,90</td>
  22. </tr>
  23. </table>

Als in je tabel ook de eerste kolom koppen bevat, dien je natuurlijk ook voor die cellen de <th>-tags te gebruiken zoals in bovenstaand voorbeeld is gedaan. Het summary attribuut wordt aangeraden maar is prioriteit 3.

Telefoonlijst

Soms worden tabellen gebruikt terwijl eigenlijk layout wordt bedoeld zoals vaak in het geval van een lijst van namen van medewerkers met telefoonnummer. Het is dan voldoende om alleen de kolomkoppen van <th> te voorzien:

Telefoonlijst geheime afdeling
Naam Telefoon
Koschinski 0345-672378
Manchusario 0345-672379
Panchomanza 0345-672354
Zarathusch 0345-672359

Hieronder staat de code van de telefoonlijst. Als die door een schermleesprogramma wordt voorgelezen, dan wordt steeds eerst de naam en dan het nummer opgenoemd. Alleen de kolomkoppen zijn voorzien van table headers

  1. <table width="50%" cellspacing="0" cellpadding="0" border="1" summary="Telefoonlijst medewerkers">
  2. <caption>Telefoonlijst geheime afdeling</caption>
  3. <tr>
  4. <th>Naam</th>
  5. <th>Telefoon</th>
  6. </tr>
  7. <tr>
  8. <td>Koschinski</td>
  9. <td>0345-672378</td>
  10. </tr>
  11. <tr>
  12. <td>Manchusario</td>
  13. <td>0345-672379</td>
  14. </tr>
  15. <tr>
  16. <td>Panchomanza</td>
  17. <td>0345-672354</td>
  18. </tr>
  19. <tr>
  20. <td>Zarathusch</td>
  21. <td>0345-672359</td>
  22. </tr>
  23. </table>

Summary, caption en abbreviation

Een caption is noodzakelijk. de samenvattting en de afkorting voor lange koppen is prioriteit 3. Ze zijn echter wel erg gewenst. Hieronder staat een tabel met alledrie. De code staat verderop.

Koffierooster
Naam van medewerker Soort koffie Wel of niet suiker Gewone melk, koffiemelk of geen melk Sterk of normaal
Ron Expresso Niet Geen Sterk
Eric Cappucino Wel Melk Normaal
Henk Gewoon Niet Geen Normaal

Om te voorkomen dat bij iedere cel de lange versie van een kop wordt voorgelezen is het belangrijk om een kolom of rijkop te voorzien van een afkorting. Die wordt dan door de schermlezer software gebruikt om te worden voorgelezen of omgezet naar braille.

  1. <table width="50%" cellspacing="0" cellpadding="0" border="1" summary="Koffie en thee medewerkers">
  2. <caption>Koffierooster</caption>
  3. <tr>
  4. <th>Naam van medewerker</th>
  5. <th abbr="soort">Soort koffie</th>
  6. <th abbr="suiker">Wel of niet suiker</th>
  7. <th abbr="melk">Gewone melk, koffiemelk of geen melk</th>
  8. <th abbr="sterkte">Sterk of normaal</th>
  9. </tr>
  10. <tr>
  11. <th>Ron</th>
  12. <td>Expresso</td>
  13. <td>Niet</td>
  14. <td>Geen</td>
  15. <td>Sterk</td>
  16. </tr>
  17. <tr>
  18. <th>Eric</th>
  19. <td>Cappucino</td>
  20. <td>Wel</td>
  21. <td>Melk</td>
  22. <td>Normaal</td>
  23. </tr>
  24. <tr>
  25. <th>Henk</th>
  26. <td>Gewoon</td>
  27. <td>Niet</td>
  28. <td>Geen</td>
  29. <td>Normaal</td>
  30. </tr>
  31. </table>

Definities

Datatabel (gegevenstabel)
Een tabel waarin gegevensinformatie wordt gestructureerd. De horizontale en/of verticale positie van de informatie geeft betekenis aan de gegevens die in de datatabel wordt weergegeven.

Verwijzingen

  • R-pd.11.2 Gebruik het th (table header) element voor het beschrijven van een kolom of rij in een tabel met relationele informatie.
  • R-pd.2.9 Bouw een website volgens de Web Content Accessibility Guidelines (WCAG 1.0) van het W3C.

©2010 Stichting Accessibility. Disclaimer | Privacy policy | XHTML en CSS valide

Login

Meer informatie

Evaluatietip

Mogelijkheid 1: Zoek visueel naar datatabellen en controleer de broncode. Controleer of de kolom- en/of rijkoppen zijn voorzien van <th>-tags!

Mogelijkheid 2: Met de Homepage Reader van IBM kunnen tabellen worden getest op goede werking (dit kan natuurlijk ook met bijvoorbeeld JAWS of Supernova.