Frontend Development 6 min read

Chrome 105 New Features: Blocking Rendering, :has() Selector, onbeforeinput Event, 125 Hz Timer Alignment, CSS :modal, Identifier Restrictions, Container Queries, Scroll & Fetch Enhancements, Gesture‑Scroll Events

Chrome 105 introduces 25 new web‑development features—including a blocking=rendering attribute for scripts and styles, the :has() selector, onbeforeinput event, 125 Hz timer alignment, CSS :modal pseudo‑class, restrictions on the default identifier, container queries, enhanced scroll and fetch APIs, and experimental gesture‑scroll DOM events.

Laravel Tech Community
Laravel Tech Community
Laravel Tech Community
Chrome 105 New Features: Blocking Rendering, :has() Selector, onbeforeinput Event, 125 Hz Timer Alignment, CSS :modal, Identifier Restrictions, Container Queries, Scroll & Fetch Enhancements, Gesture‑Scroll Events

Chrome 105 New Features

Chrome 105 has been released, bringing 25 new features and 24 known security fixes.

blocking=rendering attribute on scripts and stylesheets

Allows the attribute/value blocking=render to be placed on <script> , <style> or <link rel="stylesheet"> to explicitly block rendering. It helps avoid unstyled content caused by inserted scripts/styles, client‑side A/B testing, or premature user interaction.

:has() pseudo‑class

The :has() pseudo‑class selects an element that has at least one descendant matching the selector passed as its argument, enabling styles to be applied to preceding elements such as previous siblings, ancestors, or ancestors’ previous siblings.

Add onbeforeinput global event handler attribute

The beforeinput event fires on <input> , <textarea> or contenteditable elements just before their value changes. Adding a global onbeforeinput attribute makes it easier for developers to use this event.

Align timers to 125 Hz (including DOM timers)

All timers with a non‑zero delay now run on the regular 8 ms aligned wake‑up (125 Hz) instead of executing immediately after the delay expires. This affects DOM timers.

On foreground pages, DOM timers run on the regular 8 ms aligned wake‑up with non‑zero delay.

On background pages, DOM timers already run on the regular 1 s aligned wake‑up (1 Hz) or more frequently after five minutes.

CSS :modal pseudo‑class

The :modal pseudo‑class is used to style dialog elements. It represents an element that is in a state that excludes interaction with all other elements until it is dismissed.

Custom identifiers cannot use the CSS keyword “default”

The CSS keyword default is now reserved and cannot be used in custom identifiers such as names created by @keyframes , counters, @container names, custom layout or paint names. The reserved list now includes inherit , initial , unset , revert , and revert-layer .

Container queries

Container queries allow authors to style elements based on the size of their container, similar to @media queries but evaluated against the container rather than the viewport.

Navigation event scroll()

The scroll() method works similarly to the existing restoreScroll() but can be called when navigation is not a traversal, allowing manual scrolling even when not in manual‑scroll mode.

fetch() upload stream

The fetch() API now supports uploading a ReadableStream as the request body, providing a generic definition for Request and Response objects and related network‑request features.

Gesture scroll DOM events

Gesture scroll DOM events – gesturescrollstart , gesturescrollupdate , and gesturescrollend – are non‑standard APIs added to Blink for plugins. They are currently only effective with non‑composited scrollbars.

Enjoyed the article? Liking and sharing is the greatest support!

JavaScriptFrontend DevelopmentChromeCSSBrowser Features
Laravel Tech Community
Written by

Laravel Tech Community

Specializing in Laravel development, we continuously publish fresh content and grow alongside the elegant, stable Laravel framework.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.