April 19th, 2021 × #css#container queries#web development
Hasty Treat - Container Queries Are Here
Discussion of the new CSS container queries feature recently added to Chrome Canary. Details on syntax, usage, why needed, resize observer issues, contain property, inline/block sizes, logical properties, best practices, and trying it out today.
![Wes Bos](https://github.com/wesbos.png)
Wes Bos Host
![Scott Tolinski](https://github.com/stolinski.png)
Scott Tolinski Host
In this Hasty Treat, Scott and Wes talk about CSS container queries, what they are and how to use them.
Sanity - Sponsor
Sanity.io is a real-time headless CMS with a fully customizable Content Studio built in React. Get a Sanity powered site up and running in minutes at sanity.io/create. Get an awesome supercharged free developer plan on sanity.io/syntax.
LogRocket - Sponsor
LogRocket lets you replay what users do on your site, helping you reproduce bugs and fix issues faster. It's an exception tracker, a session re-player and a performance monitor. Get 14 days free at logrocket.com/syntax.
Show Notes
07:22 - Why?
- Container queries are media queries for components (e.g. they are based on the element's size, not the browser).
- This is in line with how we write components.
- It will change the way we write CSS.
08:49 - The Syntax
- Containers need to be defined as containers via containment context
.container {
contain: size layout;
}
New contain value:
.inline-container {
contain: inline-size;
}
This is the same as the logical properties. Assuming you read LTR, or RTL:
- size - width and height
- inline-size = width
- block-size = height
/* @container <container-query-list> { <stylesheet> } */
@container (inline-size > 45em) {
.media-object {
grid-template: "img content" auto / auto 1fr;
}
}
18:49 - How to try them today
- Download and/or update Chrome Canary
- Go to chrome://flags
- Search and enable "CSS Container Queries"
- Restart the browser
19:27 - Demos
- Need Chrome Canary + Flag
- https://codepen.io/collection/XQrgJo
- https://codepen.io/una/pen/LYbvKpK?editors=1100
Links
- Miriam Suzanne
- Susy
- Miriam's CSS Sandbox
- https://css.oddbird.net/rwd/query/explainer/
- Canary
- @addyosmani
- The CSS Podcast
- @jon_neal
Tweet us your tasty treats!
- Scott's Instagram
- LevelUpTutorials Instagram
- Wes' Instagram
- Wes' Twitter
- Wes' Facebook
- Scott's Twitter
- Make sure to include @SyntaxFM in your tweets