The moment text-fit lands, every headline here measures its own container and falls flush to the pixel — no measuring loop, no resize observer, no library. It hasn't landed yet. Chrome's 150 release notes announced it; we tested 151 and it is not enabled under any value or longhand, so what you're reading right now is the clamp() fallback. The readout near the bottom tells you exactly which features your browser really has. Either way, not one line of JavaScript runs on this page.
Four sentences of completely different lengths, every one filling the same column edge to edge. Getting this in 2025 meant shipping FitText or writing a measure-and-resize loop that fought every reflow. Now it's one declaration: text-fit: per-line.
Short.
A middling line here.
Considerably longer than the one above it.
And this one runs longer still, to prove the point.
Without text-fit those lines are sized by a fluid clamp() and allowed to wrap — reasonable, never flush. That gap is the whole feature.
A gradient on a border used to mean a pseudo-element sandwich, a mask, or a padding-box hack that broke the moment you added a border radius. border-area paints the border box directly.
The gradient is the border, not a shape stacked behind one. Radius, dashes and widths all behave normally.
Nothing to keep in sync when the card resizes, and no compositing cost from an extra layer.
Without support you get a flat one-colour border. Nothing collapses; it just looks plainer.
Clip paths finally get corner radii. A polygon can now be cut with soft corners in the same declaration that defines its points — no SVG filter, no second element. polygon(0 12%, 4% 0, 100% 0 … round 18px)
Everyletterhererisesonscroll.
Staggered by nothing but a different animation-range per child. No SplitText, no timeline, no observer — the scroll position is the timeline, and the compositor drives it off the main thread.
Hover or tab onto a tile. zoom is animatable in Chrome 150 — unlike transform: scale(), it reflows layout as it grows, so text stays crisp at every step instead of being resampled.
Detected with @supports — which means this readout itself needs no JavaScript. If a row says FALLBACK, you're looking at the degraded version of that section, and now you know which.