Accessibility Wiki

Tables need valid row and cell structure

PDF/UA check TABLE_LEGALITY · Tables · severity Medium · PDF/UA 8.2.5.26 Table

↩ Back to the rules index · WCAG cross-reference

Why it matters

Tables must have proper row and cell structure. Malformed tables confuse screen readers, which may announce data in wrong order or fail to convey the tabular relationships.

What you will see

A Table element does not contain at least one row with cells in it — the structure is malformed.

How to fix

Restructure the Table element so it contains at least one TR row (directly or inside THead/TBody/TFoot), with each TR holding TH or TD cells. If the content is not actually a table, retag it with appropriate non-table elements instead.

Step-by-step guide

  1. Open the Accessibility tags panel (View > Show/Hide > Side panels > Accessibility tags) and locate the flagged Table element.
  2. Expand the Table and check its children: the only valid children are TR rows (either directly or grouped inside THead, TBody, or TFoot) plus an optional Caption; each TR must contain TH or TD cells.
  3. Decide whether the content is a genuine data table. If it merely positions unrelated content on the page, it is a layout table and should not be tagged Table.
  4. For a genuine table with missing rows: right-click the Table (or THead/TBody/TFoot) in the tags panel, choose New Tag > Table Row (TR), then drag the stray cell or content tags into the new TR so every cell sits inside a row.
  5. For cells tagged with the wrong type (e.g. P directly under Table), retag them as TD or TH: select the tag, open Properties, and change the Type to Table Data Cell or Table Header Cell.
  6. If the tagging is badly scrambled, retag the whole region instead: open All tools > Prepare for accessibility > Fix reading order (the Reading Order tool), drag a selection around the table on the page, and click Table to regenerate Table/TR/TD structure, then refine cells in the Table Editor.
  7. If the content is a layout table, dissolve the table tagging: change the Table tag type to Div (or another appropriate container), retag former cells as P or other semantic types, and remove the empty TR shells.

Verify: Re-run the EQChecker scan and confirm TABLE_LEGALITY reports no errors. Also run Acrobat's accessibility check (All tools > Prepare for accessibility > Check for accessibility); no table structure errors should remain.

Note: A Caption element is a legitimate direct child of Table and does not violate this rule; per 8.2.5.27 it shall be the first child, or the last child when it follows the table content. PDF/UA-2 8.2.5.26 NOTE 5 confirms a single TR may mix TH and TD cells. Layout tables are the most common false positive: the correct fix there is to remove Table tagging entirely, not to invent rows and cells.

WCAG success criteria

1.3.1 Info and Relationships — Level A

Structure and relationships conveyed visually (headings, lists, tables, labels, groups) must also be available programmatically.

Understanding 1.3.1

Standards

This check contributes to the following standards:

PDF/UA WCAG A EN 301 549

Standard Criteria
PDF/UA-2 (ISO 14289-2:2024) 8.2.5.26 Table
EN 301 549 (non-web documents) 10.1.3.1