Tables are scrollable or reformatted on mobile
Why it matters
HTML tables have no built-in responsiveness. At mobile widths, a data table with more than four or five columns will overflow the viewport — either forcing horizontal scroll on the entire page (a WCAG 2.2 SC 1.4.10 Reflow violation) or getting clipped silently. Users lose access to the rightmost columns, which often contain the most actionable data: status, actions, amounts. Scrollable table wrappers preserve all data while keeping the page layout intact. Reformatted stacked layouts are a stronger solution for complex tables but require deliberate CSS work.
Severity rationale
Medium because wide tables cause horizontal scroll or data truncation on mobile, but only when tables are present — the impact is conditional on content width.
Remediation
Wrap every <table> in a horizontally scrollable container. In JSX:
<div className="overflow-x-auto w-full">
<table className="min-w-full text-sm">...</table>
</div>
For denser data tables, a stacked mobile layout avoids scroll entirely. In src/app/globals.css:
@media (max-width: 640px) {
table, thead, tbody, tr, th, td { display: block; }
thead { position: absolute; clip: rect(0 0 0 0); }
tr { margin-bottom: 1rem; border: 1px solid var(--border); }
td::before { content: attr(data-label); font-weight: 600; display: block; }
}
DetectionPro
The detection method for this pattern is part of AuditBuffet Pro.
The full method (what to look for, pass and fail conditions, and how results get reported) ships inside the Mobile Responsiveness Audit. The pattern definition, severity rationale, and remediation remain openly licensed under CC-BY-4.0.
External references
- wcag:2.2 · 1.4.10 — Reflow
Taxons
History
- 2026-04-18·v1.0.0·Initial import from mobile-responsiveness·automated