
Firefox 155 release notes for developers
attr() for any property, the progress() and alpha() functions, font-width, and Promise.allKeyed().
Daily web platform news

attr() for any property, the progress() and alpha() functions, font-width, and Promise.allKeyed().

A Baseline-aware skillset from Google, extended with project-specific CSS rules and fallbacks.

The Custom Highlight API finally reaches form controls thanks to OpaqueRange in Chromium 152.

Why unmounting rows costs you find-in-page, anchor links, focus, and per-card state.

Pseudo-element events, device performance tiers, connection allowlists, and relative alpha.

Five ways to avoid an orphaned item on the last flex line, from container queries to one property.

Firefox ships the format with the Rust jxl-rs decoder, progressive rendering, and lossless wins.

<geolocation> HTML element and how it worksChrome 144 ships a permission-friendly element with autolocate, watch, and a :granted pseudo-class.

A commented head section with text scaling, SVG favicons, markdown alternates, and fediverse tags.

How showModal() handles focus, Escape, and animation so you don’t have to.

An interactive quiz to test and sharpen your web accessibility knowledge.

How headingoffset shifts heading levels in the accessibility tree without changing tags.

A platform-agnostic reference of features every quality website should have.

New web platform APIs for inserting HTML out of order into specific document locations.

A Baseline-aware skillset from Google, extended with project-specific CSS rules and fallbacks.

Why unmounting rows costs you find-in-page, anchor links, focus, and per-card state.

Five ways to avoid an orphaned item on the last flex line, from container queries to one property.

Only 42% of email clients support prefers-color-scheme, and Gmail inverts colors on its own.

Design tokens, class ordering, and fixed component variants keep utility-first CSS readable.

Anchor positioning wins the year, while AI writes just 28% of CSS.

A proposed spec to style navigation and route transitions without JavaScript.

The Custom Highlight API finally reaches form controls thanks to OpaqueRange in Chromium 152.

Five dependency clusters where platform features now replace npm packages.

When npm packages actually need them, and how much install size they cost.

A look at which CSS and JS tooling still earns its place in 2026.

A native Go port delivering 8-12x faster builds and lower memory use.

Build GPU visuals across frameworks without writing any shader code.

A tour of the new array, error, math, and iterator methods landing in the spec.

How showModal() handles focus, Escape, and animation so you don’t have to.

An interactive quiz to test and sharpen your web accessibility knowledge.

light-dark(), contrast-color(), and style queriesAccessible, composable color themes that adapt elevation to light and dark modes.

How balanced column heights break keyboard focus order, and how to fix it.

A pseudo-element covers the card surface but stops short of the secondary actions.

How headingoffset shifts heading levels in the accessibility tree without changing tags.

A platform-agnostic reference of features every quality website should have.

attr() for any property, the progress() and alpha() functions, font-width, and Promise.allKeyed().

Pseudo-element events, device performance tiers, connection allowlists, and relative alpha.

Firefox ships the format with the Rust jxl-rs decoder, progressive rendering, and lossless wins.

sibling-index(), text-box-trim, four new Iterator methods, and unprefixed line-clamp behind a flag.

What already beats native apps, and what iOS and install prompts still get wrong.

Media capture element, declarative slot assignment, and soft-navigation metrics.

JS String Builtins in streaming WebAssembly compilation, plus eight bug fixes.