Skip to contentSkip to footer

Experimental web platform features are not yet part of the official web platform specifications and are marked as "experimental" in Chromium.

Polypane ships with these features (and more) enabled by default. Other Chromium browsers let you enable these on a "flags" settings page.

Added in Chromium 126 current

  • Dispatch Selectionchange Event Per Element
    DispatchSelectionchangeEventPerElementchromestatus.com

    Dispatches selectionchange event per element when this element(input/textarea) provides a text selection or its selection changes. This is to match the latest specification of selectionchange event. This also matches Safari behavior.

  • Import Map Integrity
    ImportMapIntegritychromestatus.com

    Imported ES modules can't currently have their integrity checked, and hence cannot run in environments that require Subresource Integrity or with `require-sri-for` CSP directives. This feature adds an `integrity` section to import maps, enabling developers to map ES module URLs to their integrity metadata, and ensure they only load when they match their expected hashes.

  • Ruby Line Breakable
    RubyLineBreakablechromestatus.com

    Line-breaks are possible within elements with `display: ruby`. A single pair of a ruby-base and a ruby-text has never been line-breakable, and it has been pushed to the next line if the current line had no enough space for the entire pair. Now each of the ruby-base and the ruby-text can be split into multiple lines.

  • New features in Chromium 126 with missing description
    Continue Event Timing Recording When Buffer Is Full
    ContinueEventTimingRecordingWhenBufferIsFull
    CSS Content Multi Arg Alt Text
    CSSContentMultiArgAltText
    CSS Reading Order Items
    CSSReadingOrderItems
    CSS Scroll Start Target
    CSSScrollStartTarget
    Fed Cm With Storage Access API
    FedCmWithStorageAccessAPI
    Fill Scrolling Contents Layer
    FillScrollingContentsLayer
    Find Text In Readonly Text Input
    FindTextInReadonlyTextInput
    Font Variation Sequences
    FontVariationSequences
    Private Aggregation Api Filtering Ids
    PrivateAggregationApiFilteringIds
    Ruby Line Edge Alignment
    RubyLineEdgeAlignment
    Secure Payment Confirmation Network And Issuer Icons
    SecurePaymentConfirmationNetworkAndIssuerIcons

Added in Chromium 125

  • Document Policy Include JS Call Stacks In Crash Reports
    DocumentPolicyIncludeJSCallStacksInCrashReportschromestatus.com

    This feature captures the JS call stack when a web page becomes unresponsive due to JavaScript code running an infinite loop or other very long computation. This helps developers to identify the cause of the unresponsiveness and fix it more easily. The JS call stack is included in the crash reporting API when the reason is unresponsive.

  • Media Session Chapter Information
    MediaSessionChapterInformationchromestatus.com

    The corresponding implementation on the blink layer based on the w3c api change, which is to add the `ChapterInformation` attribute in the existing `MediaMetadata`. ThisChapterInformation applies to audio as well as video, since MediaSession is for both audio and video. See the propose: https://github.com/w3c/mediasession/issues/273 And the specs change pr: https://github.com/w3c/mediasession/pull/308

  • Visual Viewport On Scroll End
    VisualViewportOnScrollEndchromestatus.com

    Scrollend is a JavaScript event that fires to signal that a scrolling operation has come to an end. Similar to the Element interface[1], the visualViewport interface[2] includes an onscrollend event handler that should be invoked when a scrolling operation on the visualViewport has ended. Chromium already supports adding a scrollend event listener via `visualViewport.addEventListener("scrollend")`. This just makes it possible to also add an event listener using `visualViewport.onscrollend`. [1]https://html.spec.whatwg.org/multipage/webappapis.html#handler-onscrollend [2]https://drafts.csswg.org/cssom-view/#dom-visualviewport-onscrollend.

  • Window Placement Permission Alias
    WindowPlacementPermissionAliaschromestatus.com

    Chrome 125 removes the window-placement alias for permission and permission policy descriptors. All instances of window-placement are replaced with window-management, which better describes the related API functionality. This is a follow-up to Window Management API feature enhancements and renaming from "Multi-Screen Window Placement API"; for more details, see https://chromestatus.com/feature/5146352391028736

  • New features in Chromium 125 with missing description
    CSS Pseudo Scroll Markers
    CSSPseudoScrollMarkers
    CSS Scroll Snap Events
    CSSScrollSnapEvents
    CSS Snap Changed Event
    CSSSnapChangedEvent
    CSS Snap Changing Event
    CSSSnapChangingEvent
    Exclude Transparent Texts From Being Lcp Eligible
    ExcludeTransparentTextsFromBeingLcpEligible
    HTML Anchor Attribute
    HTMLAnchorAttribute
    Web Codecs H B D Formats
    WebCodecsHBDFormats

Added in Chromium 124 Polypane 19.0.2

  • Selection Respects Colors
    SelectionRespectsColorschromestatus.com

    Chromium currently checks all selection highlight colors against the text color and inverts the highlight color if it matches the text. Hence, author-defined ::selection CSS properties may be modified by the browser despite explicit author intent. For example, a CSS rule "::selection { color: cyan; background: cyan; }" the background is inverted and red color is used. In https://github.com/w3c/csswg-drafts/issues/6150 the CSS working Group resolved to disallow the chromium behavior. We propose to implement this spec change and bring chromium into compatibility with other browsers.

  • Used Color Scheme Root Scrollbars
    UsedColorSchemeRootScrollbarschromestatus.com

    Makes the browser use the user's preferred color scheme to render the viewport scrollbars if the value of "page’s supported color schemes" is 'normal' or not specified, and the computed value of the color-scheme for the root element is 'normal'. Viewport scrollbars can be considered to be outside the web content. Therefore, the user agents should honor the user's preferred color scheme when rendering viewport scrollbars if page authors have not explicitly specified support for color schemes.

  • Web XR Spec Parity
    WebXRSpecParitychromestatus.com

    Updates our implementation of the WebXR specification to provide a few attributes that have been added over time. These are generally attributes that developers find useful or enable small performance improvements. These include but are not limited to: Setting/Querying the framerate on an XRSession (including supported framerates), Angular/Linear Velocities, Predicted Display Time of a Frame, isSystemKeyboardSupported, and XRWebGLLayer fixedFoveation

  • New features in Chromium 124 with missing description
    Auto Picture In Picture Video Heuristics
    AutoPictureInPictureVideoHeuristics
    Canvas WebGPU Access
    CanvasWebGPUAccess
    HTML Interest Target Attribute
    HTMLInterestTargetAttribute
    HTML Popover Action Hover
    HTMLPopoverActionHover
    Speaker Selection
    SpeakerSelection
    Static Animation Optimization
    StaticAnimationOptimization
    Web Transport Stats
    WebTransportStats

Added in Chromium 123

  • Element Get HTML
    ElementGetHTMLchromestatus.com

    The prototype implementation (which was shipped in 2020 and then shape-changed in 2023) contained a method called `getInnerHTML()` that could be used to serialize DOM trees containing shadow roots. That part of the prototype was not standardized with the rest of declarative shadow dom, and only recently has it reached spec consensus (https://github.com/whatwg/html/issues/8867). As part of that consensus, the shape of the getInnerHTML API changed. This feature represents the desire to ship the new, agreed-upon shape, which is: - getHTML({serializableShadowRoots:bool, shadowRoots:[roots]}).

  • Nested Top Layer Support
    NestedTopLayerSupportchromestatus.com

    The prior behavior caused issues if a top layer element (dialog, fullscreen, etc.) was DOM-nested within a popover. The inner element, when promoted to the top layer, would cause the outer popover to be hidden, which also (via CSS display:none) hid the inner element. That, in turn, caused issues at least for dialogs, which inert the entire page. This change makes top layer elements "nestable" within popovers.

  • Shadow Root Clonable
    ShadowRootClonablechromestatus.com

    This enables individual control over whether a shadow root is clonable (via standard platform cloning commands such as `cloneNode()`). Imperative shadow roots can now be controlled via a parameter to `attachShadow({clonable:true})`. Declarative shadow roots can be controlled via a new attribute, `<template shadowrootmode=open shadowrootclonable>`.

  • WebGPU Experimental Features
    WebGPUExperimentalFeatureschromestatus.com

    Functionality added to the WebGPU spec after its first shipment in a browser. ServiceWorker and SharedWorker support is added to WebGPU, aligning with existing WebGL capabilities.

  • Writing Suggestions
    WritingSuggestionschromestatus.com

    UAs are starting to provide writing suggestions to users as they type on various editable fields across the web. While this is generally useful for users, there are cases when developers may want to turn off UA-provided writing assistance, such as extensions or sites that wish to provide similar functionality on their own. To that end, developers need a solution that would turn on/off UA-provided writing assistance. The new attribute 'writingsuggestions' has values 'true'/'false' that would allow developers to turn on/off browser-provided writing suggestions. The attribute's state for an element can also be inherited from ancestor elements, thereby allowing developers to control this functionality at a per-element or per-document/sub-document scale.

  • New features in Chromium 123 with missing description
    CSS Calc Size Function
    CSSCalcSizeFunction
    CSS Custom State New Syntax
    CSSCustomStateNewSyntax
    CSS Pseudo Open Closed
    CSSPseudoOpenClosed
    Dialog Close When Open Removed
    DialogCloseWhenOpenRemoved
    Display Contents Focusable
    DisplayContentsFocusable
    Page Conceal Event
    PageConcealEvent
    Web Assembly JS Promise Integration
    WebAssemblyJSPromiseIntegration

Added in Chromium 122 Polypane 18.0.4

  • Form Controls Vertical Writing Mode Direction Support
    FormControlsVerticalWritingModeDirectionSupportchromestatus.com

    CSS property writing-mode allow elements to go vertical, but users cannot set the direction in which value changes. With this feature, we are allowing the form control elements meter, progress and range input type to have vertical writing mode and choose the form control's value direction. If direction is rtl, the value is rendered from bottom to top. If direction is ltr, the value is rendered from top to bottom. For Web compatibility, we plan to slowly rollout the change in 123 and enable in stable in 124.

  • Keyboard Focusable Scrollers
    KeyboardFocusableScrollerschromestatus.com

    Improves accessibility by making scroll containers focusable using sequential focus navigation. Today, the tab key doesn't focus scrollers unless tabIndex is explicitly set to 0 or more. By making scrollers focusable by default, users who can't (or don't want to) use a mouse will be able to focus clipped content using a keyboard's tab and arrow keys. This behavior is enabled only if the scroller does not contain any keyboard focusable children. This logic is necessary so we don't cause regressions for existing focusable elements that might exist within a scroller like a <textarea>.

  • Media Capture Voice Isolation
    MediaCaptureVoiceIsolationchromestatus.com

    This is about adding support in Chrome for the VoiceIsolation getUserMedia constraint (https://w3c.github.io/mediacapture-extensions/#voiceisolation-constraint). The constraint only takes effect on platforms where there is low-level support for voice-isolation style denoising. Currently this is limited to a selected number of ChromeOS devices, but further platforms will be added.

  • Stylable Select
    StylableSelect

    Allows <button> and <datalist> in <selectlist> which replace the default button and listbox respectively, as well as introducing a new <selectedoption> element that shows the chosen value.

  • Web Auth Allow Create In Cross Origin Frame
    WebAuthAllowCreateInCrossOriginFramechromestatus.com

    This feature allows web developers to create WebAuthn[0] credentials (that is, "publickey" credentials, aka passkeys) in cross-origin iframes. Two conditions are required for this new ability: 1. The iframe has a publickey-credentials-create-feature permission policy. 2. The iframe has transient user activation. This will allow developers to create passkeys in embedded scenarios, such as after an identity step-up flow where the Relying Party is providing a federated identity experience. [0]: https://w3c.github.io/webauthn/

  • Web Authentication Hints
    WebAuthenticationHintschromestatus.com

    The new `hints` parameter[1] in WebAuthn requests allows sites to provide guidance to browsers to guide their UI. The canonical use case are enterprises which know that their internal sites use only security keys and want to be able to communicate that so that browsers focus the UI on that case. But hints also resolve a tension where the current `authenticatorAttachment` parameter is strict: setting it to `platform` excludes all cross-platform options and vice versa. This has proven less than ideal in some cases. [1] https://w3c.github.io/webauthn/#enum-hints

  • New features in Chromium 122 with missing description
    App Title
    AppTitle
    CSS Cross Fade
    CSSCrossFade
    CSS Text Spacing Trim
    CSSTextSpacingTrim
    Offset Mapping Unit Variable
    OffsetMappingUnitVariable
    Performance Mark Feature Usage
    PerformanceMarkFeatureUsage
    Top Level Tpcd
    TopLevelTpcd

Build your next project with Polypane

  • Use all features on all plans
  • On Mac, Window and Linux
  • 14-day free trial – no credit card needed
Try for free
Polypane UI