Table without header cells
Without th cells, a screen reader cannot say which column or row a number belongs to.
The markup we quote
<table>
<tr><td>Service</td><td>Price</td></tr>
</table>
Every finding quotes the exact markup responsible, so you can confirm it by viewing the page source — you never have to take our word for it.
How to fix it
- For a data table, mark the header cells with
<th scope="col">orscope="row"; the table block does this when you use the header-row option. - For a layout table — one used to position things, not to hold data — say so with
role="presentation"and leave it alone.
When we might be wrong
We cannot tell a data table from a layout table, which is why the advice covers both. A table with no header cells and no role will always be reported.
Check whether it is fixed
Check a page free Get the plugin
If the finding is wrong, tell us with the page and the line. A wrong finding costs more trust than a missing one, and it is the defect we treat as urgent.