Web Standards

Web Standards

@web-standards.dev

Daily web platform news by @pepelsbey.dev https://web-standards.dev/

442 followers0 following260 posts

Building a filterable menu that works for everyone. Jenna Smith and James Nelson explain why Base UI’s filterable menu is a dialog with a search field, not a combobox, and how arrow keys navigate items without breaking typing. #a11y #component base-ui.com/blog/bui...

What’s new in Chrome 156. CSS gains the random() function, the :navigation-source pseudo-class for the element that started a navigation, and scroll-snap-type: pair, while failed module imports can now be retried. #chrome #browser chromestatus.com/rel...

Firefox 157 release notes for developers. at-rule() in @​supports, a chain value for overscroll-behavior, Animation.reverse() at playbackRate 0, plus flagged ML-KEM in Web Crypto and notification navigate. #firefox #browser developer.mozilla.or...

Improving site performance by shipping more CSS. In the GitHub blog, Josh Black and Marie Lucca on the multi-year move from CSS-in-JS to CSS Modules: 7,760 sx props removed, 55% less server-side rendering, and 25% faster component init. #css #performance github.blog/engineer...

What’s new in Chrome 154. The text-decoration-inset property trims or extends underlines, scroll-marker-group gains links and tabs modes for focus order and ARIA semantics, and Iterator.includes() checks whether an iterator yields a value. #chrome #browser developer.chrome.com...

Browsers situationship: when browsers agree but the spec doesn’t. Rakhi explains why a spec sometimes moves toward browser behavior instead of the other way around, and how tests and Web compatibility bring them back to one result. #browser #interop www.atbrakhi.dev/blo...

Firefox 156 release notes for developers. The Inspector resolves var(), attr(), and env() down to their source, scheduler.yield() keeps the task’s priority across synchronous awaits, and Promise.try() passes native promises through. #firefox #browser developer.mozilla.or...

The browser’s main thread is expensive. Sunhyoup Lee explains how to fit JavaScript, styles, layout, and events into 10 milliseconds per frame: split long tasks and yield, batch frequent events, or move work to the compositor or a Worker. #performance #js kciter.so/posts/the-...

Make your logo brighter than white. Chris Bennett built a tool that turns a logo into a gain-map JPEG, so the colors you pick shine up to 7.5 times brighter than plain white on HDR screens and stay a normal JPEG everywhere else. #color #image www.soverybright.com/

Submit your proposals for Interop 2027. The call is open until September 23rd. A proposal needs a stable specification and Web Platform Tests that run automatically in all four browsers, plus evidence that developers hit the problem. #interop #wpt github.com/web-platf...

Firefox 155 release notes for developers. This expands attr() to any CSS property, adds the progress() and alpha() functions, renames font-stretch to font-width, and brings Promise.allKeyed(). Scroll-driven animations are behind a flag. #firefox #browser developer.mozilla.or...

Making a long list fast: content-visibility vs. virtualization. Agustin Barrientos shows that content-visibility: auto keeps rows in the DOM and skips offscreen work, while virtualization unmounts them, losing find-in-page and focus. #performance #css agustinbarrientos.co...

What’s new in Chrome 152. CSSPseudoElement now covers ::backdrop, ::scroll-marker, and ::view-transition, the CPU Performance API reports the performance tier of a device, and the Connection-Allowlist header restricts outgoing requests. #chrome #browser developer.chrome.com...