Responsive Layout
One layout that reflows across sizes, ideally driven by content limits rather than by device categories.
Definition
Responsive design, as defined by Ethan Marcotte in 2010, combines a fluid grid, flexible media and media queries so a single layout adapts to any viewport. Modern CSS allows much of this to happen intrinsically, without explicit breakpoints.
Craft convention. True because the industry converged on it. Breaking it costs familiarity, not correctness.
On this plate
Reach for this when
- Any web layout.
- Testing accessibility compliance.
- Reviewing behaviour at 400 percent zoom.
Common mistakes
- Designing desktop first and discovering the priority order too late.
- Horizontal page scroll at small widths.
- Hover-only interactions.
- Testing at the standard breakpoints only, and never at the awkward widths between them.
Order of preference for adaptation
- 1.Intrinsic sizing: minmax, auto-fit, min and clamp. The layout adapts continuously with no breakpoints at all.
- 2.Container queries: components respond to their own available width.
- 3.Media queries: reserved for genuine structural changes, such as a sidebar becoming a drawer.
- 4.Separate templates: only when the task itself differs by device, which is rare.
Things that break at small sizes
- Fixed-width elements, especially tables and code blocks. Give them their own scroll container.
- Long unbroken strings such as URLs and identifiers. Use overflow-wrap.
- Absolute positioning that assumed a wider parent.
- Hover-dependent interactions, which do not exist on touch.
- Fixed headers and footers that consume most of a short viewport, particularly with a keyboard open.
What breaks first as the viewport narrows
| Element | Failure | Response |
|---|---|---|
| Data table | Horizontal scroll, or unreadable compression | Cards per row, or a prioritised subset of columns |
| Multi-column form | Ambiguous order | Single column, always |
| Long navigation | Overflow or wrap into three lines | Priority plus overflow, or a drawer |
| Fixed-width media | Overflow past the viewport | Intrinsic sizing with a maximum |
| Side-by-side comparison | Nothing fits | Stacked with a sticky attribute column |
| Long unbroken strings | Horizontal scroll from one URL | Wrapping rules that allow anywhere breaks |
In practice
- i.
Tables at 320px
Data displayA table wrapped in a focusable, labelled scroll container keeps every column intact and remains usable by keyboard. Collapsing columns hides data the user came for.
- ii.
The table at 320 pixels
Reflow as a requirementEight columns of financial data cannot become one column of eight rows without losing the comparison. The honest answers are a prioritised subset with a detail view, or a scrollable region with a pinned first column, and both are design decisions rather than CSS ones.
Local chart
FND·043 · Region II · Grid D2
This entry and the entries it is stated to connect with. Each line is labelled with what the connection means.
Sources
Where a source establishes something narrower than the popular reading of it, the note says so.
- [1]
E. Marcotte, A List Apart, 2010
- [2]
Understanding Success Criterion 1.4.10: Reflow
W3C, WCAG 2.1
Continue from here
Each link says what the connection is, so you can tell a principle from an alternative from a thing people mix this up with.
Applies when you are designing
Applied through
Where this shows up as a concrete interface decision.
- Data TableCMP·025 · Component
- Mobile Interaction PatternsPAT·027 · Pattern
Practical example
A worked decision where this was the deciding factor.
- Putting a Data Table on a PhoneCASE·005 · Case study
Check your work
Review passes that test whether this was done properly.
- Mobile UX ChecklistCHK·003 · Checklist
- Web UX ChecklistCHK·011 · Checklist
Short definition
The one-paragraph version, for when that is all you need.
- BreakpointTERM·044 · Term
- Container QueryTERM·070 · Term
- Responsive DesignTERM·043 · Term
- ViewportTERM·045 · Term
Related concept
Connected closely enough to change how you apply this.
- Reflow and ZoomA11Y·013 · Accessibility
- Adaptive LayoutFND·044 · UI foundation
- BalanceFND·011 · UI foundation
- BreakpointsFND·045 · UI foundation
- ColumnsFND·040 · UI foundation
- CompositionFND·014 · UI foundation
- ContainersFND·041 · UI foundation
- GridsFND·039 · UI foundation
- ImageryFND·051 · UI foundation
- Responsive TypographyFND·038 · UI foundation