
Modern CSS: :has() and Native Nesting
Two CSS features quietly deleted a chunk of our JavaScript and our Sass build step: the :has() parent selector and native nesting. Here's what they replace.
Tag

Two CSS features quietly deleted a chunk of our JavaScript and our Sass build step: the :has() parent selector and native nesting. Here's what they replace.

Migrating to Tailwind CSS v4 means a CSS-first @theme config, a Rust-based Oxide engine, and renamed utilities. Field notes and a migration checklist.

Can you actually ship real products on native custom elements in 2026? We look at Shadow DOM, declarative SSR, and React/Vue interop without the sales pitch.

Learn the View Transitions API: startViewTransition() for SPAs, the @view-transition CSS rule for MPAs, shared-element morphs, and reduced-motion fallbacks.

The Tailwind CSS mistakes still shipping in 2026, from dynamic class names to hand-rolling utilities that v4.3 now ships for free, each with the exact fix.

A practical CSS container queries how-to for 2026: set a containment context, query the parent's width, and use the new style and scroll-state queries that just went cross-browser.