Container Queries: Components That Own Their Responsiveness
Media queries ask how big the window is. Container queries ask how big MY box is — the question components actually needed. Sidebars stop breaking cards forever.
CSS :has() — The Parent Selector Changes How You Architect Styles
For twenty years CSS could only look down the tree. :has() looks up, sideways, and forward — killing a whole class of state-tracking JavaScript.
The View Transitions API: App-Like Navigation Without a SPA
The View Transitions API brings native-app page morphs to plain multi-page sites. Two lines of CSS, no router, no framework — here is how to ship it today.
Scroll animation
JS scroll listeners are a performance tax. How CSS scroll-driven animations replace them with three lines that run jank-free on the compositor.