Toegankelijke tabellen maken met HTML
Tabellen zijn een krachtig hulpmiddel om gestructureerde gegevens weer te geven. Denk aan prijstabellen, roosters of statistieken. Maar tabellen worden ook vaak verkeerd gebruikt, bijvoorbeeld om layout te bouwen in plaats van data te tonen. Dat maakt een site minder toegankelijk en moeilijker te onderhouden. In dit artikel leer je hoe je correcte en toegankelijke tabellen maakt met HTML, zodat ze bruikbaar zijn voor iedereen, inclusief schermlezers.
Wanneer gebruik je een tabel?
Gebruik een tabel alleen wanneer je gegevens in een grid of matrix wilt weergeven, dus met rijen en kolommen die samen een betekenis hebben. Voorbeelden:
- Cijfers en statistieken 
- Vergelijkingen van producten 
- Agenda’s en roosters 
- Financiële data 
Gebruik een tabel niet voor layout. Daarvoor heb je CSS.
De basis van een tabel in HTML
Een eenvoudige tabel ziet er zo uit:
- <table>: start van de tabel.
- <tr>(table row): een rij.
- <th>(table header): een kolomtitel.
- <td>(table data): een cel met inhoud.
Tabellen structureren met <thead>, <tbody> en <tfoot>
Voor grotere tabellen is het handig om de structuur te verduidelijken.
Hiermee kun je koppen, inhoud en voetnoten van elkaar scheiden.
Beschrijvende titel met <caption>
Elke tabel moet een korte titel hebben die uitlegt waar de tabel over gaat. Dit doe je met <caption>.
Een screenreader leest deze caption voor als introductie van de tabel.
Toegankelijkheid: gebruik scope in headers
Bij grote tabellen is het soms onduidelijk welke kop bij welke cel hoort. Met het attribuut scope maak je dit duidelijk.
- scope="col": deze header geldt voor een kolom.
- scope="row": deze header geldt voor een rij.
Screenreaders lezen nu duidelijker de relatie tussen de cellen.
Complexe tabellen met headers en id
Bij tabellen met meerdere lagen van koppen is scope niet altijd genoeg. Dan gebruik je id en headers.
Zo weet een screenreader exact welke koppen bij elke cel horen.
Styling van tabellen
Een tabel moet niet alleen functioneel zijn, maar ook overzichtelijk. Met CSS kun je veel verbeteren.
Met zebra-styling (wisselende rijen) maak je tabellen makkelijker leesbaar.
Responsieve tabellen
Een tabel kan op mobiel al snel te breed worden. Er zijn verschillende oplossingen:
Scrollbare tabel
Stacken op mobiel
Een alternatieve oplossing is om tabellen op mobiel te “stapelen”. Dat vraagt meer CSS en soms JavaScript.
Veelgemaakte fouten met tabellen
- Tabellen gebruiken voor layout in plaats van data. 
- Geen - <th>gebruiken, alleen- <td>.
- Geen titel of beschrijving toevoegen. 
- Koppen niet koppelen aan cellen bij complexe tabellen. 
- Te kleine tekst en weinig witruimte. 
Tips voor toegankelijke tabellen
- Gebruik altijd - <caption>om context te geven.
- Pas - scope,- headersen- idtoe bij complexe structuren.
- Zorg dat tabellen ook zonder CSS logisch blijven. 
- Maak tabellen niet te breed en overweeg scrollbare containers. 
- Test tabellen met een schermlezer om de toegankelijkheid te checken. 
Met de juiste HTML en een beetje CSS kun je tabellen maken die niet alleen overzichtelijk zijn, maar ook volledig toegankelijk en bruikbaar voor iedereen.

