A screen reader needs to know what a piece of a page is, not only what it looks like. The ARIA role table describes rows and columns of data.
What this role means
Rows and columns of data.
ARIA roles add meaning to the accessibility tree. They do not automatically make something clickable, move keyboard focus or build an interface. Those behaviors come from native HTML controls or from correctly implemented JavaScript.
See table in a real page
<table>
<caption>Study hours</caption>
<tr><th scope="col">Day</th><th scope="col">Hours</th></tr>
<tr><td>Friday</td><td>2</td></tr>
</table>
Read the example
You may notice that the snippet does not write role="table" explicitly. That is intentional: the native element already communicates this meaning, so repeating the role would add unnecessary markup.
Use table for data, not for positioning page content.
When to use it
Start with native HTML whenever possible. Add ARIA only when it provides missing meaning for an interface that you cannot build with the appropriate native element.
In an accessibility inspector, compare the accessible role and name with the visible content. The important goal is that both keyboard users and screen-reader users can understand the page.
Try it yourself
Put the example on a practice page and inspect it using your browser accessibility panel. If it includes interactive controls, reach them with Tab and check whether they work without a mouse. Explain whether the semantics come from native HTML or an explicit ARIA role.
Common Beginner Mistakes
- Adding
role="table"without checking whether an ordinary HTML element already supplies the right semantics. - Use table for data, not for positioning page content.
- Confusing the role announced by a screen reader with the behavior that the browser implements.
Key Takeaways
tableis related to rows and columns of data.- Use table for data, not for positioning page content.
- Native HTML is the first choice; ARIA should clarify meaning, not replace working HTML.