Features implemented only in Chromium
The following features are only implemented in Chromium.
-
Accelerometer
Limited availabilityThe
Accelerometer,LinearAccelerationSensorandGravitySensorAPIs read the acceleration applied to a device in three dimensions, either including the effect of gravity, without its effect, or only its effect, respectively. -
Anchor positioning transforms
Limited availabilityAnchor positioned elements take CSS transforms on their anchor elements into account.
- Chrome 144 Released on 2026-01-13
- Chrome Android 144 Released on 2026-01-13
- Edge 144 Released on 2026-01-21
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
File handlers
Limited availabilityThe
file_handlersweb app manifest member registers an installed web app as a handler for files with specific file extensions or MIME types.- Chrome 102 Released on 2022-05-24
- Chrome Android Not supported
- Edge 102 Released on 2022-05-31
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Launch handler
Limited availabilityThe
launch_handlerweb app manifest member, with theclient_modeproperty, configure how web app launches behave when an instance of the app is already open. For example, you can choose to focus the existing app instance instead of launching a new one.- Chrome 110 Released on 2023-02-07
- Chrome Android Not supported
- Edge 110 Released on 2023-02-09
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Web app origin migration
Limited availabilityThe
migrate_toandmigrate_fromweb app manifest members move an installed app from one origin to another, within the same site. They preserve the user's installation settings on the device, like shortcuts.- Chrome 149 Released on 2026-06-02
- Chrome Android Not supported
- Edge 149 Released on 2026-06-04
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Protocol handlers
Limited availabilityThe
protocol_handlersweb app manifest member registers an installed web app as a handler for a specific protocol. When a user follows a link with the specified protocol, the installed app opens the link. -
The attribution reporting API measures when an ad click or view leads to a conversion, such as a purchase on an advertiser site.
-
Background fetch
Limited availabilityBackground fetch downloads data in the background even when the web page is closed.
-
Background sync
Limited availabilityThe background synchronization API registers a service worker callback to run only when the device is no longer offline. You can use this to let users continue using your app while offline and synchronize with a server after reconnecting.
-
Barcode detector
Limited availabilityThe
BarcodeDetectorAPI recognizes various barcode formats in images.- Chrome Not supported
- Chrome Android 83 Released on 2020-05-19
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Battery status
Limited availabilityThe
navigator.getBattery()API obtains information about the device's battery, including charge level and status. Also known as the Battery API.- Chrome 38 Released on 2014-10-07
- Chrome Android 38 Released on 2014-10-08
- Edge 79 Released on 2020-01-15
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
beforeinstallprompt
Limited availabilityThe
beforeinstallpromptevent fires when a Progressive Web App (PWA) is installable. You can cancel the event and later callevent.prompt()to control when the installation prompt is shown. Theappinstalledevent fires when the PWA is successfully installed.- Chrome 76 Released on 2019-07-30
- Chrome Android 76 Released on 2019-07-30
- Edge 79 Released on 2020-01-15
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Back/forward cache blocking reasons
Limited availabilityThe
notRestoredReasonsproperty of aPerformanceNavigationTimingobject explains why the current document was blocked from using the back/forward cache (also known as the bfcache) on navigation.- Chrome 125 Released on 2024-05-14
- Chrome Android 125 Released on 2024-05-14
- Edge 125 Released on 2024-05-17
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
border-shape
Limited availabilityThe
border-shapeCSS property sets the geometry of the border box, changing the shape of any applicable border, border image, focus outline, or shadow. -
calc-size()
Limited availabilityThe
calc-size()CSS function computes mathematical expressions that includeheightandwidthkeyword values, for examplecalc-size(fit-content, size / 2). Not to be confused with thecalc()CSS function, which cannot use keyword values. -
Capture Handle
Limited availabilityThe capture handle API allows you to share a custom handle (a string) from a web application being captured by
getDisplayMedia()to the capturing web application.- Chrome 102 Released on 2022-05-24
- Chrome Android Not supported
- Edge 102 Released on 2022-05-31
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
caret-shape
Limited availabilityThe
caret-shapeCSS property sets the shape of the insertion caret, the symbol that shows where the next character is to be inserted or deleted.- Chrome 144 Released on 2026-01-13
- Chrome Android 144 Released on 2026-01-13
- Edge 144 Released on 2026-01-21
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Custom formats for clipboard items
Limited availabilityThe
webprefix forClipboardItemdata types (also known as MIME types) allows reading and writing unsanitized custom data from the device clipboard. -
SVG clipboard items
Limited availabilityThe
image/svg+xmldata type (also known as the MIME type) forClipboardItemobjects represents SVG data written to or read from the clipboard. -
Read unsanitized clipboard data
Limited availabilityThe optional
formats.unsanitizedparameter of thenavigator.clipboard.read()method reads unsanitizedtext/htmldata from the system clipboard. -
clipboardchange
Limited availabilityThe
clipboardchangeevent fornavigator.clipboardfires when the user modifies the clipboard's contents.- Chrome 144 Released on 2026-01-13
- Chrome Android 144 Released on 2026-01-13
- Edge 144 Released on 2026-01-21
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Column breaks
Limited availabilityIn columnar layouts (created by the
columnsorcolumn-countCSS properties), thebreak-after,break-before,break-insideproperties control where columns start or end.- Chrome 102 Released on 2022-05-24
- Chrome Android 102 Released on 2022-05-24
- Edge 102 Released on 2022-05-31
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
::column
Limited availabilityThe
::columnCSS pseudo-element represents the individual columns of a multi-column layout container. Columns can only be styled with scroll snap CSS properties and can also have a::scroll-markerpseudo-element, which scrolls to the column when activated.- Chrome 135 Released on 2025-04-01
- Chrome Android 135 Released on 2025-04-01
- Edge 135 Released on 2025-04-04
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Compression Dictionary Transport
Limited availabilityCompression Dictionary Transport is a mechanism for using designated HTTP responses as an external dictionary for future HTTP responses for compression schemes that support using external dictionaries (e.g., Brotli and Zstandard)
- Chrome 130 Released on 2024-10-15
- Chrome Android 130 Released on 2024-10-15
- Edge 130 Released on 2024-10-17
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
CPU compute pressure
Limited availabilityThe
PressureObserverAPI monitors CPU load, allowing you to adjust workloads in response to available computing resources. Also known as the Compute Pressure API. -
Contact picker
Limited availabilityThe
navigator.contactsAPI allows you to ask users to share limited details about entries in their contact list with your application. -
Anchor position container queries
Limited availabilityAnchor position container queries with the
@container anchored(fallback: …)at-rule apply styles to an element based on the element's anchor position.- Chrome 143 Released on 2025-12-02
- Chrome Android 143 Released on 2025-12-02
- Edge 143 Released on 2025-12-05
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Container scroll-state queries
Limited availabilityContainer scroll-state queries with the
@container scroll-state(...)at-rule apply styles to an element based on the sticky positioning, snapped, and scrollable state of the container.- Chrome 133 Released on 2025-02-04
- Chrome Android 133 Released on 2025-02-04
- Edge 133 Released on 2025-02-06
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Content Index
Limited availabilityThe Content Index API allows developers to register their offline enabled content with the browser.
- Chrome Not supported
- Chrome Android 84 Released on 2020-07-27
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
controlslist
Limited availabilityThe
controlslistattribute for<audio>or<video>hides parts of the browser's built-in controls. For example,controlslist="nofullscreen"removes the button to play the video in fullscreen. -
corner-shape
Limited availabilityThe
corner-shapeCSS property sets the shape of an element's corners when usingborder-radius, allowing for shapes other than rounded corners. For example,corner-shape: squircleis a shape in between a square and rounded corner. -
Customizable <select>
Limited availabilityThe
<select>element's appearance, including the button, selected option, picker dropdown, and options, can be customized using CSS. -
Device memory
Limited availabilityThe
navigator.deviceMemoryproperty is the approximate amount of device memory, in gigabytes.- Chrome 97 Released on 2022-01-04
- Chrome Android 97 Released on 2022-01-04
- Edge 97 Released on 2022-01-06
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Device posture
Limited availabilityThe device posture API and the
device-postureCSS media feature reflect the physical posture of a device, such as whether a foldable device is folded or unfolded. -
Digital goods
Limited availabilityThe
window.getDigitalGoodsServiceAPI connects to stores or billing services for in-app products and subscriptions.- Chrome Not supported
- Chrome Android 101 Released on 2022-04-26
- Edge 134 Released on 2025-03-06
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
dynamic-range-limit
Limited availabilityThe
dynamic-range-limitCSS property controls the peak luminance of high dynamic range content. You can use this to coordinate the apparent brightness of HDR and SDR content.- Chrome 136 Released on 2025-04-29
- Chrome Android 136 Released on 2025-04-29
- Edge 136 Released on 2025-05-01
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
EditContext
Limited availabilityThe
EditContextAPI allows you to build rich text editors that support advanced text input, such as Input Method Editor (IME) composition, an emoji picker, or other platform-specific editing UI. -
Element capture
Limited availabilityThe
restrictTo()method on screen capture media tracks limits capture to a specific element, excluding content which might occlude the element itself, such as video conferencing controls. -
Element timing
Limited availabilityThe
elementperformance entry and thePerformanceElementTimingAPI measures the time to render elements that have theelementtimingattribute. -
Eyedropper
Limited availabilityThe
EyeDropperAPI opens an eyedropper tool, a color picker that allows users to select a color from their screen. -
The
Feature-Policyresponse header sets whether a policy-controlled feature, such as an API, may be used in a document. Not to be confused with permissions policy.- Chrome 74 Released on 2019-04-23
- Chrome Android 74 Released on 2019-04-24
- Edge 79 Released on 2020-01-15
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Federated credential management
Limited availabilityThe
IdentityCredentialAPI delegates authentication to a third-party identity provider, instead of using third-party cookies. Also known as FedCM. -
Federated credentials
Limited availabilityThe
FederatedCredentialAPI represents the details required to authenticate a user using a third-party identity provider. Not to be confused with federated credential management (FedCM).- Chrome 51 Released on 2016-05-25
- Chrome Android 51 Released on 2016-06-08
- Edge 79 Released on 2020-01-15
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
<fencedframe>
Limited availabilityThe
<fencedframe>element embeds another HTML page into the current page in a more secure and privacy-preserving way than<iframe>elements. -
Fetch upload streams
Limited availabilityThe
fetch()method andRequest()constructor accept aReadableStreamobject as the request'sbodyoption, to stream upload data to the server.- Chrome 105 Released on 2022-09-02
- Chrome Android 105 Released on 2022-09-02
- Edge 105 Released on 2022-09-01
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
fetchLater
Limited availabilityThe
fetchLater()method requests a deferred fetch sent at an unknown time. The browser chooses a reliable time to send the request, ideally when the document is unloaded, and ignores the response. This API is useful for sending beacons to a server without expecting a particular response. -
File system access
Limited availabilityThe
showOpenFilePicker(),showDirectoryPicker(), andshowSaveFilePicker()methods request access to files and directories on the user's device and returns a handle for reading and writing to them. -
font-palette animation
Limited availabilityYou can animate color fonts between two
font-palettevalues. -
@function
Limited availabilityThe
@functionCSS at-rule defines a custom function that takes CSS values or custom properties as arguments, and returns a CSS value. It can be based on conditional logic such as by using the@mediaat-rule. -
Gap decorations
Limited availabilityThe
column-ruleandrow-ruleCSS properties display decorative lines between columns and rows of a flex, grid, or multi-column layout. Therule-break,rule-outset, andrule-paint-orderproperties control the appearance of these lines. -
<geolocation>
Limited availabilityThe
<geolocation>HTML element represents a button that, upon activation, prompts the user to choose whether to grant the page access to geolocation data.- Chrome 144 Released on 2026-01-13
- Chrome Android 144 Released on 2026-01-13
- Edge 144 Released on 2026-01-21
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
IndexedDB getAllRecords()
Limited availabilityThe
getAllRecords()method ofIDBObjectStoreandIDBIndexreturn records and their primary keys from an IndexedDB store or index. The records can be read in batches and in reverse order. ThegetAllRecords()methods speed up read operations on large datasets. -
Gyroscope
Limited availabilityThe
GyroscopeAPI reads the angular velocity of a device in three dimensions. -
The
:host-context()CSS pseudo-class selects the containing element of the shadow tree in which it is used if that element or an ancestor matches the provided selector.- Chrome 54 Released on 2016-10-12
- Chrome Android 54 Released on 2016-10-19
- Edge 79 Released on 2020-01-15
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Idle detection
Limited availabilityThe
IdleDetectorAPI is used to notify a webpage of the user's idle, active, and locked state. -
if()
Limited availabilityThe
if()CSS function is an inline conditional value that returns a value based on a set of conditions. -
Credentialless iframes
Limited availabilityThe
credentiallessattribute for the<iframe>HTML element loads third-party content in an ephemeral context and does not send any credentials such as cookies. When using cross-origin isolation, this allows you to embed content that does not sendCross-Origin-Embedder-Policyheaders. -
initial-letter
Limited availabilityThe
initial-letterCSS property sets the number of lines the first letter of an element occupies. You can use the property to make a raised capital or drop cap. -
Ink
Limited availabilityThe
navigator.inkAPI uses the system compositor to draw to a<canvas>element ahead of pointer events, reducing the delay between moving a stylus or cursor and a pen stroke appearing on screen. -
interactivity
Limited availabilityThe
interactivity: inertCSS declaration makes an element and its descendants inert, like when using theinertHTML attribute. Inert elements can't be focused or clicked, their text can't be selected or found using the browser's find-in-page feature.- Chrome 135 Released on 2025-04-01
- Chrome Android 135 Released on 2025-04-01
- Edge 135 Released on 2025-04-04
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Interest invokers
Limited availabilityInterest invokers, registered by the
interestforHTML attribute, trigger events and actions on a target element when a user shows interest in the element, through behaviors such as hover, focus, or long-press. Pseudo-elements apply styles to sources and targets of interest.- Chrome 142 Released on 2025-10-28
- Chrome Android 142 Released on 2025-10-28
- Edge 142 Released on 2025-10-31
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
interpolate-size
Limited availabilityThe
interpolate-sizeCSS property sets whether animations and transitions interpolate between a numeric value and a keyword value, such as from a fixed length toautoorfit-content. -
Intersection observer visibility tracking
Limited availabilityThe
trackVisibilityparameter for theIntersectionObserverconstructor enables tracking the visibility of an element, to detect if it may be obscured by other content or visual effects. Also known as IntersectionObserver v2.- Chrome 74 Released on 2019-04-23
- Chrome Android 74 Released on 2019-04-24
- Edge 79 Released on 2020-01-15
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
The
navigator.scheduling.isInputPending()method checks if there are pending input events, such as touch or mouse events. This allows you to yield from long-running scripts that might be blocking user interaction.- Chrome 87 Released on 2020-11-17
- Chrome Android 87 Released on 2020-11-17
- Edge 87 Released on 2020-11-19
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
justify-self in block layouts
Limited availabilityThe
justify-selfCSS property aligns an item along a container's inline axis in block layouts, like it does in grid layouts. Likewise, thejustify-itemsproperty sets a defaultjustify-selfvalue for all items in a container in a block layout.- Chrome 130 Released on 2024-10-15
- Chrome Android 130 Released on 2024-10-15
- Edge 130 Released on 2024-10-17
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Keyboard lock
Limited availabilityThe
navigator.keyboard.lock()API allows you to capture keys that are normally reserved by the operating system. It can be used to provide an immersive fullscreen experience such as games. -
Keyboard map
Limited availabilityThe
navigator.keyboard.getLayoutMap()API returns a map from key codes to human readable key names. It can be used to describe buttons to the user when using the keyboard as a set of buttons, such as in games. -
Language detector
Limited availabilityThe
LanguageDetectorAPI identifies the likely natural language that some text is written in. You can use this API to supplement machine translation when the source source language is not known.- Chrome 138 Released on 2025-06-24
- Chrome Android Not supported
- Edge 148 Released on 2026-05-07
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
LanguageModel
Limited availabilityThe
LanguageModelAPI prompts an on-device language model. Also known as the Prompt API. -
Layout instability
Limited availabilityThe
layout-shiftperformance entry andLayoutShiftAPI measures the layout stability of web pages based on movements of the elements on the page. They're used to calculate Cumulative Layout Shift (CLS), a common metric for perceived stability. -
<link rel="expect">
Limited availabilityThe
rel="expect"attribute for the<link>HTML element is a hint to the browser to block rendering until the element that thehrefvalue references is connected to the document and fully parsed.- Chrome 124 Released on 2024-04-16
- Chrome Android 124 Released on 2024-04-16
- Edge 124 Released on 2024-04-18
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Local fonts
Limited availabilityThe
window.queryLocalFonts()method returns an array of locally-installed fonts, each represented by aFontDataobject.- Chrome 103 Released on 2022-06-21
- Chrome Android Not supported
- Edge 103 Released on 2022-06-23
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Local network access
Limited availabilityThe
"local-network-access"user permission (and certain actions that imply this permission, such as afetch()request with{ targetAddressSpace: "local" }) allows a site to send requests to servers on a user's local network.- Chrome 142 Released on 2025-10-28
- Chrome Android 142 Released on 2025-10-28
- Edge 142 Released on 2025-10-31
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Long animation frames
Limited availabilityThe
long-animation-frameperformance event type and thePerformanceLongAnimationFrameTimingAPI provide information about rendering updates that take longer than 50 milliseconds. Also known as LoAFs. -
Long tasks
Limited availabilityThe
longtaskperformance event type and thePerformanceLongTaskTimingAPI provides information about tasks that occupy the UI thread for 50 milliseconds or more, a metric for input latency, delayed animations, and other sources of "jank." -
Memory measurement
Limited availabilityThe
measureUserAgentSpecificMemory()method estimates the memory usage of a web application including all its iframes and workers.- Chrome 89 Released on 2021-03-02
- Chrome Android 89 Released on 2021-03-02
- Edge 89 Released on 2021-03-04
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
<meta name="application-title">
Limited availabilityThe
name="application-title"attribute for the<meta>HTML element sets an installed web application's title bar text.- Chrome 134 Released on 2025-03-04
- Chrome Android 134 Released on 2025-03-04
- Edge 134 Released on 2025-03-06
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
<meta name="text-scale">
Limited availabilityThe
<meta name="text-scale" content="scale" />HTML element allows the browser's initial font size to be affected by the operating system text scale settings. The<meta name="text-scale" content="legacy" />element is the default behavior that respects only browser font-size settings.- Chrome 146 Released on 2026-03-10
- Chrome Android 146 Released on 2026-03-10
- Edge 146 Released on 2026-03-13
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Network Information
Limited availabilityThe
navigator.connectionAPI provides information about the network connection a device is using and fires events when the connection type changes. -
object-view-box
Limited availabilityThe
object-view-boxCSS property crops and zooms to an inset area of an image.- Chrome 104 Released on 2022-08-02
- Chrome Android 104 Released on 2022-08-02
- Edge 104 Released on 2022-08-05
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Observable
Limited availabilityThe
when()method on a event target returns anObservableobject, which provides a declarative API for subscribing to and operating on events. It's an alternative toaddEventListener()callbacks. -
Orientation Sensor
Limited availabilityThe
AbsoluteOrientationSensorandRelativeOrientationSensorAPIs describe the physical orientation of a device in three-dimensional space, either in relation to the Earth's coordinate system or in relation to the device's own orientation, respectively. -
overlay
Limited availabilityThe
overlayCSS property, used as anallow-discreteCSS transition, prevents a top layer element, such as a popover or a<dialog>, from being removed from the top layer before it has finished animating. You can't set the value of theoverlayproperty; only use it as transition property. -
OVR_multiview2 WebGL extension
Limited availabilityThe
OVR_multiview2extension for WebGL 2.0 contexts renders into multiple views simultaneously. This especially useful for virtual reality (VR) and WebXR.- Chrome Not supported
- Chrome Android 93 Released on 2021-08-31
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
The
page-break-before,page-break-inside, andpage-break-afterCSS properties are aliases to thebreak-before,break-inside, andbreak-afterproperties.- Chrome 1 Released on 2008-12-11
- Chrome Android 18 Released on 2012-06-27
- Edge 12 Released on 2015-07-29
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Page lifecycle
Limited availabilityThe page lifecycle API helps you safely handle page suspensions or discards from memory. The
freezeandresumeevents fire when the browser suspends or resumes a page from memory while thedocument.wasDiscardedproperty reports whether the page was reloaded after being dropped.- Chrome 68 Released on 2018-07-24
- Chrome Android 68 Released on 2018-07-24
- Edge 79 Released on 2020-01-15
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Page visibility state
Limited availabilityThe
visibility-stateperformance entry and theVisibilityStateEntryAPI measure the timing of page visibility state changes, such as when a tab is no longer visible or the user has switched to another app.- Chrome 115 Released on 2023-07-18
- Chrome Android 115 Released on 2023-07-21
- Edge 115 Released on 2023-07-21
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
paint()
Limited availabilityThe
paint()CSS function creates a custom image, drawn using a paint worklet, for an element's background or border. -
Password credentials
Limited availabilityThe
PasswordCredentialAPI represents a username and password.- Chrome 60 Released on 2017-07-25
- Chrome Android 60 Released on 2017-08-01
- Edge 79 Released on 2020-01-15
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Payment handler
Limited availabilityThe payment handler API registers a web application as a payment handler and responds to payment requests in the browser's user interface, rather than redirecting users to a separate site to complete a payment.
-
Periodic background sync
Limited availabilityThe periodic background synchronization API fires a recurring
periodicsyncevent in a service worker. You can use this to update data in the background at regular intervals.- Chrome 80 Released on 2020-02-04
- Chrome Android 80 Released on 2020-02-04
- Edge 80 Released on 2020-02-07
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Permissions policy
Limited availabilityThe
Permissions-Policyresponse header and theallowattribute for<iframe>elements sets whether a policy-controlled feature, such as an API, may be used in a document.- Chrome 108 Released on 2022-11-29
- Chrome Android 108 Released on 2022-11-29
- Edge 108 Released on 2022-12-05
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
prefers-reduced-transparency media query
Limited availabilityThe
prefers-reduced-transparencyCSS media query sets styles based on whether the user prefers to reduce the amount of transparent effects on their device, for example to improve contrast and legibility. -
Presentation API
Limited availabilityThe Presentation API shows or controls content on another display, such as a network-connected TV or projector.
-
Profiler
Limited availabilityThe
ProfilerAPI records data about the execution of a page, which you can send to a server for later analysis. Also known as self-profiling. -
The protected audience API facilitates advertisement sales by allowing sites to register users as part of an interest group or to choose which ads appear based on those interest groups, while minimizing the ability of advertisers to track specific members of the interest group. Also known as FLEDGE.
- Chrome 134 Released on 2025-03-04
- Chrome Android 134 Released on 2025-03-04
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
reading-flow
Limited availabilityThe
reading-flowCSS property sets the order in which flex or grid elements are rendered to speech or reached via focus navigation. Thereading-orderproperty overrides this order. -
Region capture
Limited availabilityWhen using
navigator.mediaDevices.getDisplayMedia()to capture a browser tab as a video stream, the region capture API allows you to crop the video to the bounding box of a given element. In contrast to the element capture API, any content that overlays that element is also captured.- Chrome 104 Released on 2022-08-02
- Chrome Android Not supported
- Edge 104 Released on 2022-08-05
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
COEP violation reports
Limited availabilityCOEP violation reporting sends a report to a URL nominated by the
Reporting-Endpointsheader or theReportingObserverAPI when a page violates itsCross-Origin-Embedder-Policypolicy.- Chrome 96 Released on 2021-11-15
- Chrome Android 96 Released on 2021-11-15
- Edge 96 Released on 2021-11-19
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Crash report storage
Limited availabilityThe
window.crashReportobject is a key-value store to record information about your application's state. If there's a crash, then the data in the key-value store is sent to your crash reporting endpoint, to help you pinpoint the cause of the crash.- Chrome 145 Released on 2026-02-10
- Chrome Android 145 Released on 2026-02-10
- Edge 145 Released on 2026-02-14
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Deprecation reports
Limited availabilityDeprecation reporting sends a report to a URL nominated by the
Reporting-Endpointsheader or theReportingObserverAPI when a page uses a deprecated API or other browser feature.- Chrome 69 Released on 2018-09-04
- Chrome Android 69 Released on 2018-09-04
- Edge 79 Released on 2020-01-15
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Intervention reporting sends a report to a URL nominated by the
Reporting-Endpointsheader when the browser has not honored an application's request, contrary to specified behavior, such as for security or privacy reasons.- Chrome 69 Released on 2018-09-04
- Chrome Android 69 Released on 2018-09-04
- Edge 79 Released on 2020-01-15
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Permissions policy violation reporting
Limited availabilityPermissions policy violation reporting sends a report to a URL nominated by the
Reporting-Endpointsheader or theReportingObserverAPI when a page violates a policy. You can also use thePermissions-Policy-Report-Onlyheader to receive reports of what might break under a given policy.- Chrome 120 Released on 2023-12-05
- Chrome Android 120 Released on 2023-12-05
- Edge 120 Released on 2023-12-07
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Save-Data
Limited availabilityBrowsers send the
Save-DataHTTP request header when the user turns on a data-saving mode. It is a hint to reduce data sent to the browser. Servers should respond with alternative content, such as smaller images and videos, or different markup and styling.- Chrome 65 Released on 2018-03-06
- Chrome Android 65 Released on 2018-03-06
- Edge 79 Released on 2020-01-15
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
scroll-initial-target
Limited availabilityThe
scroll-initial-target: nearestCSS declaration sets the initial scroll position of its scroll container to the top of the element, much like scrolling to a URL fragment.- Chrome 133 Released on 2025-02-04
- Chrome Android 133 Released on 2025-02-04
- Edge 133 Released on 2025-02-06
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
scrollIntoView() container
Limited availabilityThe
containeroption of thescrollIntoView()method sets which ancestor scroll container to scroll. The"nearest"value scrolls only the nearest ancestor, instead of the default"all".- Chrome 140 Released on 2025-09-02
- Chrome Android 140 Released on 2025-09-02
- Edge 140 Released on 2025-09-05
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Scroll marker target pseudo-classes
Limited availabilityThe
:target-currentCSS pseudo-class selects the active scroll marker (as in::scroll-marker), while the:target-afterand:target-beforepseudo-classes select the inactive markers preceding and following the active scroll marker.- Chrome 142 Released on 2025-10-28
- Chrome Android 142 Released on 2025-10-28
- Edge 142 Released on 2025-10-31
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Scroll markers
Limited availabilityA scroll marker scrolls a container to a scroll target. The
::scroll-markerCSS pseudo-element selects a scroll marker in a::scroll-marker-grouppseudo-element, generated before or after the scroll container. You can use them to navigate and style tables of contents, tab panels, and carousels.- Chrome 135 Released on 2025-04-01
- Chrome Android 135 Released on 2025-04-01
- Edge 135 Released on 2025-04-04
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Scroll snap events
Limited availabilityThe
scrollsnapchangingandscrollsnapchangeevents fire when a scroll gesture changes the selected scroll snap target. -
scroll-target-group
Limited availabilityThe
scroll-target-groupCSS property sets the container where anchor links act as scroll markers. Using selectors such as:target-current, you can style elements when a target has scrolled into view. It's an alternative to the::scroll-marker-grouppseudo-element, which generates scroll markers.- Chrome 140 Released on 2025-09-02
- Chrome Android 140 Released on 2025-09-02
- Edge 140 Released on 2025-09-05
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Secure payment confirmation
Limited availabilityThe
paymentextension of a web authentication credential allows a relying party (such as a bank) to create a credential that can be queried by any merchant origin as part of an online checkout that uses the Payment Request API'ssecure-payment-confirmationpayment method. Also known as SPC.- Chrome 139 Released on 2025-08-05
- Chrome Android 139 Released on 2025-08-05
- Edge 139 Released on 2025-08-07
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Service workers static routing
Limited availabilityThe service worker install event's
addRoutesmethod declares resource paths that should either be fetched from the network or the cache, to bypass the service worker and improve performance.- Chrome 123 Released on 2024-03-19
- Chrome Android 123 Released on 2024-03-19
- Edge 123 Released on 2024-03-22
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Signature-based resource integrity
Limited availabilitySignature-based resource integrity verifies a script's provenance by checking that the resource has been signed with a trusted key given by the
<script>element'sintegrityattribute.- Chrome 141 Released on 2025-09-30
- Chrome Android 141 Released on 2025-09-30
- Edge 141 Released on 2025-10-03
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Speculation rules
Limited availabilitySpeculation rules are hints to the browser to proactively download pages in the background so they appear instantly when the user navigates to them.
-
Speech recognition
Limited availabilityThe
SpeechRecognitionAPI converts audio into text using the device's speech recognition service. -
Storage buckets
Limited availabilityThe
navigator.storageBucketsAPI allows you to organize locally stored data into groups called storage buckets. Each bucket can have different settings, allowing the browser to manage and delete buckets independently rather than applying the same treatment to all. -
stretch
Limited availabilityThe
stretchCSS keyword expands a box as needed to fit its contents until the maximum size is reached, without preserving the content's preferred aspect ratio. -
Range syntax for style queries
Limited availabilityThe
@container style()CSS at-rule andif(style())CSS function queries accept a range syntax, such as>,<,>=,<=, to query for inexact values.- Chrome 142 Released on 2025-10-28
- Chrome Android 142 Released on 2025-10-28
- Edge 142 Released on 2025-10-31
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Summarizer
Limited availabilityThe
SummarizerAPI uses an on-device language model to summarize text. -
text-decoration in ::selection
Limited availabilityThe
text-decorationCSS property in a::selectionrule sets the underline and other text decoration styles on the text a user has highlighted.- Chrome 105 Released on 2022-09-02
- Chrome Android 105 Released on 2022-09-02
- Edge 105 Released on 2022-09-01
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
text-size-adjust
Limited availabilityThe
text-size-adjustCSS property disables or modifies the browser's default text size adjustment for small screen sizes.- Chrome 54 Released on 2016-10-12
- Chrome Android 54 Released on 2016-10-19
- Edge 79 Released on 2020-01-15
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
text-spacing-trim
Limited availabilityThe
text-spacing-trimCSS property controls spacing around CJK characters, avoiding excessive whitespace when using full-width punctuation characters. -
The topics API reports a user's likely subject-matter interests (as determined by the browser, known as topics) to iframes. This allows for interest-based advertising that does not rely on user's exact browsing history, third-party cookies, or fingerprinting.
- Chrome 126 Released on 2024-06-11
- Chrome Android 126 Released on 2024-06-11
- Edge 126 Released on 2024-06-13
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Translator
Limited availabilityThe
TranslatorAPI translates some text from one natural language to another, using machine translation.- Chrome 138 Released on 2025-06-24
- Chrome Android Not supported
- Edge 148 Released on 2026-05-07
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
User agent client hints
Limited availabilityThe
Sec-CH-UAHTTP request header and thenavigator.userAgentDataAPI expose browser and platform information used to vary responses and application logic. User agent client hints are similar to user agent strings but more privacy-preserving and safer to parse. -
Vibration
Limited availabilityThe
navigator.vibrate()method makes a tactile alert, if the device is equipped with a haptic motor. -
Element-scoped view transitions
Limited availabilityThe
startViewTransition()method of anElementobject starts a view transition that affects only that element's DOM tree. You can use this to run separate elements' transitions concurrently.- Chrome 147 Released on 2026-04-07
- Chrome Android 147 Released on 2026-04-07
- Edge 147 Released on 2026-04-10
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Viewport segments
Limited availabilityThe viewport segment CSS environment variables and media features, and the
viewport.segmentsAPI, allow you to adapt your layout to devices where the display is split, such as on foldable devices.- Chrome 138 Released on 2025-06-24
- Chrome Android 138 Released on 2025-06-24
- Edge 138 Released on 2025-06-26
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Virtual keyboard
Limited availabilityThe
navigator.virtualKeyboardAPI inspects and controls on-screen virtual keyboards. You can use it to programmatically hide or show a virtual keyboard or respond to the keyboard disappearing or appearing. -
Virtual pressure sources
Limited availabilityThe
CreateVirtualPressureSourceWebDriver command creates artificial sources of compute pressure for testing without the need real device sources of compute pressure. -
Virtual sensors
Limited availabilityThe
CreateVirtualSensorWebDriver command creates a virtual sensor for testing applications that use sensor APIs, without the need for real device sensors.- Chrome 120 Released on 2023-12-05
- Chrome Android 120 Released on 2023-12-05
- Edge 120 Released on 2023-12-07
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
JavaScript promise integration (WebAssembly)
Limited availabilityThe JavaScript promise integration (JSPI) suspends a WebAssembly module when it calls a JavaScript method that returns a promise. The module resumes when the promise is resolved. You can use this to call asynchronous Web APIs from synchronous WebAssembly.
- Chrome 137 Released on 2025-05-27
- Chrome Android Not supported
- Edge 137 Released on 2025-05-29
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Web Bluetooth
Limited availabilityThe Web Bluetooth API enables selecting and communicating with nearby Bluetooth devices.
-
Web NFC
Limited availabilityThe
NDEFReaderAPI reads and writes messages to near-field communication (NFC) tags. -
WebOTP
Limited availabilityThe
OTPCredentialAPI represents a one-time-password (OTP).- Chrome 93 Released on 2021-08-31
- Chrome Android 84 Released on 2020-07-27
- Edge 93 Released on 2021-09-02
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Desynchronized WebGL canvas
Limited availabilityThe optional
desynchronizedparameter of a canvas'sgetContext()method permits the browser to draw a WebGL canvas independently of the event loop. This can reduce drawing latency.- Chrome 81 Released on 2020-04-07
- Chrome Android 75 Released on 2019-06-04
- Edge 79 Released on 2020-01-15
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Desynchronized WebGL2 canvas
Limited availabilityThe optional
desynchronizedparameter of a canvas'sgetContext()method permits the browser to draw a WebGL2 canvas independently of the event loop. This can reduce drawing latency.- Chrome 81 Released on 2020-04-07
- Chrome Android 75 Released on 2019-06-04
- Edge 79 Released on 2020-01-15
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
WebHID
Limited availabilityThe WebHID API provides access to Human Interface Devices (HID) that are connected to the user's device.
-
WebUSB
Limited availabilityThe WebUSB API exposes USB compatible devices to web pages.
-
Anchors (WebXR)
Limited availabilityAn
XRAnchorobject keeps track of a pose that is fixed relative to the real world. Anchors build an illusion that the placed objects are really present in the user's environment. -
Augmented reality
Limited availabilityThe
"immersive-ar"value fornavigator.xr.requestSession()starts an augmented reality WebXR session that renders content aligned with the visible environment.- Chrome 86 Released on 2020-10-20
- Chrome Android 86 Released on 2020-10-20
- Edge 86 Released on 2020-10-09
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Raw camera access for WebXR
Limited availabilityThe
XRView.cameraproperty provides direct access to pose-synchronized camera images within a WebXR session. -
Depth sensing
Limited availabilityAn
XRDepthInformationobject represents a measurement of the distance from the user's device to the real-world geometry in the user's environment. -
WebXR
Limited availabilityThe
navigator.xrAPI represents the browser's virtual reality or augmented reality system. You can use to request a WebXR session. -
DOM overlays for WebXR
Limited availabilityA DOM overlay shows 2D DOM content as an interactive, transparent layer on top of a WebXR application's WebGL content and camera image.
- Chrome 83 Released on 2020-05-19
- Chrome Android 83 Released on 2020-05-19
- Edge 83 Released on 2020-05-21
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Gamepad (WebXR)
Limited availabilityThe
gamepadattribute of anXRInputSourcerepresents an XR input device, such as a motion controller, that reports data from physical inputs (such as buttons, touch pads, and triggers).- Chrome 79 Released on 2019-12-10
- Chrome Android 79 Released on 2019-12-17
- Edge 79 Released on 2020-01-15
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Hand input
Limited availabilityAn
XRHandobject, from thehandattribute of anXRInputSourceobject, represents a WebXR session's fully-articulated hand tracking model. -
Hit test
Limited availabilityThe
getHitTestResults()method of anXRFrameobject helps place objects in an augmented reality session by finding where cast rays intersect with real-world geometry. -
Layers (WebXR)
Limited availabilityWebXR layer types, such as
XRCylinderLayer,XRCylinderLayer,XREquirectLayer,XRProjectionLayerorXRQuadLayer, are managed by the system compositor, to reduce latency or resampling. -
Lighting estimation
Limited availabilityThe
XRLightProbeandXRLightEstimateobjects represent real-world environmental lighting conditions during a WebXR session.- Chrome 90 Released on 2021-04-13
- Chrome Android 90 Released on 2021-04-13
- Edge 90 Released on 2021-04-15
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
Window Controls Overlay
Limited availabilityThe
display_override: ["window-controls-overlay"]web application manifest member shows content in the title bar area of a progressive web app that is installed on a desktop device. -
Window management
Limited availabilityThe
window.getScreenDetails()method gets information about the screens on a device, which you can use to place new windows on a specific screen withwindow.open().- Chrome 111 Released on 2023-03-07
- Chrome Android Not supported
- Edge 111 Released on 2023-03-13
- Firefox Not supported
- Firefox for Android Not supported
- Safari Not supported
- Safari on iOS Not supported
-
word-break: auto-phrase
Limited availabilityThe
word-break: auto-phraseCSS declaration specifies that wrapping should occur at natural phrase boundaries, especially in CJK languages.