Skip to main content

HTML Standards: The TBody Tag

SimpleAccess.io Elements Series

Elements Index

The <tbody> Element

As defined in the HTML Living Standard, the <tbody> element represents the body content of a table. It groups the primary data rows, separating them from the header (<thead>) and footer (<tfoot>).

Product Inventory
Product Price
Screen Reader Guide $25.00
A11y Checklist $10.00

(The data rows are wrapped in a <tbody> element.)

<table> <thead>...</thead> <tbody> <tr> <td>Data 1</td> <td>Data 2</td> </tr> </tbody> </table> View HTML Living Standard: The tbody element

Technical Rules & Hierarchy

WCAG Requirement: Info and Relationships

Success Criterion 1.3.1 (Level A): Information, structure, and relationships conveyed through presentation can be programmatically determined.

The <tbody> element helps define the "data zone" of the table. For screen reader users, this structural clarity allows them to distinguish between the labels (headers) and the actual values. When multiple <tbody> elements are used, they can be used to create logical sections within a large dataset, making the table easier to navigate.

Understand SC 1.3.1: Info and Relationships

Best Practices

A11y Tip: Row Headers

When the first cell of every row in your <tbody> acts as a label for that row, use <th scope="row"> instead of <td>. This tells the screen reader to announce that specific cell as the header for the rest of the row.

© 2026 SimpleAccess.io — Native Standards for Everyone.

Back to Index Home