chrome 135 · released
chrome 135 platform demos
42 features tracked for Chrome 135. Click a feature's title to open its demo; each card also links to its ChromeStatus entry.
Per-feature demos below are built automatically, one feature per commit, and every distinct use case should become an interactive concept page.
features (42)
Shipped (25)
-
::column pseudo element for Carousel
A ::column pseudo element, which allows applying a limited set of styles to the generated fragments. Specifically, this would be limited to styles which do not affect the layout, and thus can be applied post-layout.
-
::scroll-button() pseudo elements
Allow the creation of interactive scroll buttons as pseudo-elements, e.g. .scroller { overflow: auto; } .scroller::scroll-button(inline-start) { content: "<"; } .scroller::scroll-button(inline-end) { content: ">...
-
::scroll-marker and ::scroll-marker-group for Carousel
::scroll-marker and ::scroll-marker-group for scrolling containers: Pseudo elements that allow to create a set of focusable markers for all of the associated items within the scrolling container.
-
Add MediaStreamTrack support to the Web Speech API
Add MediaStreamTrack support to the Web Speech API. The Web Speech API is a web standard API that allows developers to incorporate speech recognition and synthesis into their web pages. Currently, the Web Speech API u...
-
CSS Inertness
The interactivity property specifies whether an element and its flat tree descendants (including text runs) are inert or not. Making an element inert affects whether it can be focused, edited, selected, and searchable b...
-
CSS Logical Overflow
The overflow-inline and overflow-block CSS properties allow setting overflow in inline and block direction relative to the writing-mode. In a horizontal writing-mode overflow-inline maps to overflow-x, while in a vertica...
-
CSS anchor positioning remembered scroll offset
Add support for the concept of "remembered scroll offset" - see https://drafts.csswg.org/css-anchor-position-1/#scroll When a positioned element has a default anchor, and is tethered to this anchor at one edge, and ag...
-
CSS shape() function
shape() allows responsive free-form shapes in clip-path. The author can define a series of verbs, roughly equivalent to the verbs in path(), but where the verbs accept responsive units (e.g. % or vw), as well as any CSS...
-
Create service worker client and inherit service worker controller for srcdoc iframe
Srcdoc context documents are currently not service worker clients and not covered by their parent’s service worker. That results in some discrepancies (e.g. Resource Timing reports the URLs that these document load, but ...
-
Element Reflection
This feature allows for ARIA relationship attributes to be reflected in IDL as element references rather than DOMStrings. This implements the IDL attributes in the ARIAMixin (https://w3c.github.io/aria/#ARIAMixin) inter...
-
Fenced frames - Automatic beacon cross-origin data support
Fenced frames or URN iframes, if loaded through an API like Protected Audience or Shared Storage, can send out reporting beacons automatically if some event occurs (currently only top-level navigation beacons are support...
-
Float16Array
Adds the Float16Array typed array. Number values are rounded to IEEE fp16 when writing into Float16Array instances.
-
Invoker Commands; the command and commandfor attributes
Adding command and commandfor attributes to <button> elements would allow authors to assign behaviour to buttons in a more accessible and declarative way, while reducing bugs and simplifying the amount of JavaScript page...
-
Link rel=facilitated-payment to support push payments
Adds support for <link rel="facilitated-payment" href="..."> as a hint that the browser should notify registered payment clients about a pending push payment.
-
NavigateEvent sourceElement
When a navigation is initiated by an Element (i.e., a link click or a form submission), the sourceElement property on the NavigateEvent will be the initiating element.
-
Nested pseudo elements styling
Allows to style pseudo elements that are nested inside other pseudo elements. So far, support is defined for: ::before::marker ::after::marker With ::column::scroll-marker being supported in the future.
-
NotRestoredReasons API reason name change
NotRestoredReasons API has been launched as part of PerformanceNavigationTiming API. This PR specified the names of the reasons that User Agents can choose to expose. https://github.com/whatwg/html/pull/10154 This ent...
-
Observable API
Observables are a popular reactive-programming paradigm to handle an asynchronous stream of push-based events. They can be thought of as Promises but for multiple events, and aim to do what Promises did for callbacks/nes...
-
Remove clamping of setInterval(...) to >= 1ms
Currently setInterval with a value less than 1 is clamped to 1. This intent removes that restriction. Before: setInterval(..., 0) -> 1ms delay. After: setInterval(..., 0) -> 0ms delay. Notes: * This has no effect on th...
-
Service Worker client URL ignore history.pushState changes
Modify the service worker Client.url property to ignore document URL changes via history.pushState() and other similar history APIs. The Client.url property is intended to be the creation URL of the HTML document which i...
-
Support rel / relList attributes for SVGAElement
The SVGAElement interface in SVG 2.0 allows manipulation of <a> elements similar to HTML anchor elements. Supporting the rel and relList attributes enhances security and privacy for developers. This alignment with HTML a...
-
Timestamps for RTC Encoded Frames
This feature consists in exposing to the Web some timestamps that are present in WebRTC encoded frames transmitted via RTCPeerConnection. The timestamps in question are: -Capture timestamp: the timestamp when a frame w...
-
Update HTTP request headers, body, and referrer policy on CORS redirect
Update the HTTP request on CORS redirect by removing the request-body-headers and body if the method has changed, and updating the referrer policy. These request updates align with the Fetch spec and match the behavior i...
-
fetchLater API
fetchLater() is a JavaScript API to request a deferred fetch. Once called in a document, a deferred request is queued by the browser in the PENDING state, and will be invoked by the earliest of the following conditions: ...
-
safe-area-max-inset-* variables
In https://chromestatus.com/feature/5174306712322048 we've added dynamic safe area insets which can change as the user interacts with the device. This proposal amends the general safe area feature to add max-area-safe-in...
Deprecated (1)
-
Remove deprecated navigator.xr.supportsSession method
navigator.xr.supportsSession was replaced in the WebXR spec by the navigator.xr.isSessionSupported method in September of 2019 after receiving feedback on the API shape from the TAG. It has been marked as deprecated in C...
Removed (1)
-
Remove WebGPU limit maxInterStageShaderComponents
The maxInterStageShaderComponents limit is being removed due to a combination of factors: - Redundancy with maxInterStageShaderVariables: This limit already serves a similar purpose, controlling the amount of data passed...
Stepped rollout (1)
-
Deprecate Mutation Events
Mutation Events, including `DOMSubtreeModified`, `DOMNodeInserted`, `DOMNodeRemoved`, `DOMNodeRemovedFromDocument`, `DOMNodeInsertedIntoDocument`, and `DOMCharacterDataModified`, are quite bad for page performance, and a...
Origin Trial (4)
-
Device Bound Session Credentials
To enhance user security and combat session cookie theft, Chrome is introducing [Device Bound Session Credentials (DBSC)](https://developer.chrome.com/docs/web-platform/device-bound-session-credentials). This feature all...
-
Interest Invokers (the `interestfor` attribute)
This feature adds an `interestfor` attribute to <button> and <a> elements. This attribute adds "interest" behaviors to the element, such that when the user "shows interest" in the element, actions are triggered on the ta...
-
Signature-based Integrity
This feature provides web developers with a mechanism to verify the provenance of resources they depend upon, creating a technical foundation for trust in a site's dependencies. In short: servers can sign responses with ...
-
Speculation rules: target_hint field
This extends speculation rules syntax to allow developers to specify the target_hint field. This field provides a hint to indicate a target navigable where a prerendered page will eventually be activated. For example, w...
Dev Trial (10)
-
Align error type thrown for 'payment' WebAuthn credential creation: SecurityError => NotAllowedError
Correct the error type thrown during WebAuthn credential creation for 'payment' credentials. Due to a historic specification mismatch, creating a 'payment' credential in a cross-origin iframe without a user activation wo...
-
CSS find-in-page highlight pseudos
This feature exposes **find-in-page** search result styling to authors as a highlight pseudo-element, like selection and spelling errors. This allows authors to change the foreground and background colors or add text dec...
-
Device Bound Session Credentials
To enhance user security and combat session cookie theft, Chrome is introducing [Device Bound Session Credentials (DBSC)](https://developer.chrome.com/docs/web-platform/device-bound-session-credentials). This feature all...
-
Enabling Web Applications to understand bimodal performance timings
Web applications may suffer from bimodal distribution in page load performance due to factors outside of the application’s control. For example, when a user agent first launches in a "cold start" scenario, it must perfor...
-
Incoming Call Notifications
Extend the Notifications API to allow installed PWA's to send incoming call notifications - i.e., notifications with call-styled buttons and a ringtone. This extension will help VoIP web apps to create more engaging expe...
-
Language support for CanvasTextDrawingStyles
The <canvas> DOM element, like all DOM elements, accepts a `lang` attribute that is used to define language specific treatment for font selection (when fonts have locale specific glyphs). Browsers respect this attribute....
-
No-Vary-Search support for the HTTP disk cache
Enables the HTTP disk cache to use the No-Vary-Search response header to share a cache entry between URLs that differ only in the query parameters. Developers can use No-Vary-Search to specify query parameters that have...
-
Origin-keyed process isolation
Chrome 142 introduces a shift in the process isolation policy from locking processes to a site like `https://example.com` to locking them to a specific origin, such as, `https://foo.example.com`. To further enhance secur...
-
RegExp.escape
RegExp.escape is a static method that takes a string and returns an escaped version that may be used as a pattern inside a regular expression. For example, copied from the proposal explainer: ``` const str = promp...
-
Secure Payment Confirmation: Browser Bound Keys
Adds an additional cryptographic signature over Secure Payment Confirmation assertions and credential creation. The corresponding private key is not synced across devices. This helps web developers meet requirements for ...