Lesson 12 / 25
Container queries
Style components based on container width, not viewport — future of responsive design.
Container queries vs media queries
Media queries tie layouts to viewport size. Container queries tie layouts to component container size. This makes components more reusable: the same card component adapts differently in a sidebar vs full width.
Using container queries
First, define a container. Then use @container to style children based on that container's width.
.sidebar {
container-type: inline-size;
}
@container (min-width: 400px) {
.card {
display: grid;
grid-template-columns: 1fr 2fr;
}
}
@container (max-width: 399px) {
.card {
display: block;
}
}Quick check: What's the advantage of container queries over media queries?
- Components adapt to their container, not viewport
- They're faster
- They work on all browsers
Answer
Components adapt to their container, not viewport — Container queries make reusable components that adapt anywhere.