Build layouts that adapt to any screen using CSS Grid, clamp(), and container queries — no breakpoints needed.
Breakpoints Are Not Required
Media queries were the backbone of responsive design for a decade. But modern CSS gives you tools that respond to available space intrinsically, without arbitrary breakpoint values.
Fluid Typography with clamp()
Instead of jumping between font sizes at breakpoints, use clamp() for smooth scaling:
h1 {
font-size: clamp(1.75rem, 4vw, 3rem);
}
The font scales smoothly between 1.75rem and 3rem based on viewport width. No breakpoints, no jumps.
Intrinsic Grid Layouts
CSS Grid with auto-fill and minmax() creates responsive grids automatically:
.grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
gap: 1.5rem;
}
Cards reflow from 4 columns to 1 column as space shrinks — zero media queries.
Container Queries for Components
Media queries check the viewport. Container queries check the component's parent. A card component can be compact in a sidebar and expanded in the main area, all from the same CSS.
Flexbox Wrapping
flex-wrap: wrap combined with flex-basis creates responsive layouts naturally. Items wrap to the next line when there is not enough room.
When You Still Need Media Queries
Some things still require breakpoints:
- Hiding/showing navigation patterns (hamburger menu)
- Completely different layouts (sidebar to bottom nav)
- Print stylesheets
The Mindset Shift
Stop thinking in breakpoints. Start thinking in minimum and maximum sizes, in content-based reflow, and in components that know their own context. The CSS is simpler and the results are more fluid.