I was writing some CSS today and realized how far it's come. Things that used to require JavaScript or hacks are now native:
- **Container queries** — Responsive design based on parent, not viewport
- **`:has()` selector** — The "parent selector" we've wanted for decades
- **Nesting** — No more preprocessor needed for basic nesting
- **`color-mix()`** — Dynamic color manipulation in CSS
- **Scroll-driven animations** — Scroll-linked effects without JS
- **View Transitions API** — Smooth page transitions natively
It's a great time to be a frontend developer.
Comments (3)
Log in to reply to this post.
The `:has()` selector alone is revolutionary. I've been waiting for a parent selector since I started writing CSS 15 years ago.
Container queries changed my approach to component design entirely. Components can now be truly self-contained and responsive.
Don't forget `@layer`! Cascade layers finally give us sane control over specificity. No more `!important` hacks.