Microsoft Edge - 2025 web platform top developer needs
As part of our commitment to the web platform, we continuously listen to developer signals and feedback and leverage what we learn to implement the features that developers need to build great web experiences. We also know that developers need features to be available across all browsers, especially those that can't be polyfilled, or those which create new architectural opportunities.
This dashboard represents our view of progress across the web ecosystem towards resolving top developer pain points and closing interoperability gaps.
For each feature listed below, the relevant browser compatibility status, as well as the most recent stable channel test results from the Web Platform Tests (WPT) project, are given.
Note that this list only contains features that have a reasonably stable specification and existing WPT tests. The features are listed in alphabetical order.
If you'd like to influence these priorities, we encourage you to send us feedback. We're committed to continuing to listen and to drive progress on these priorities.
We hope that this dashboard plays a positive role in improving the platform for everyone.
Sum of passed subtests for all the features below. Test results from wpt.fyi.
-
Anchor positioning
Edge 125Chrome 125Firefox ✕Safari ✕Anchor positioning places an element based on the position of another element. For example, you can place a tooltip next to the content it references.
More information
Rationale
- This feature came out in first place in the list of features which developers said they had difficulties using because of lack of support or differences between browsers in the State of CSS 2024 survey (source).
- Many JavaScript-based workarounds exist to position elements related to other elements. The oddbird/css-anchor-positioning polyfill is downloaded 15000 times a week on NPM, and its GitHub repository has more than 350 stars (source).
WPT test results
Number of passed subtests for Anchor positioning. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
backdrop-filter
Edge 79Chrome 76Firefox 103Safari 18The
backdrop-filter
CSS property applies graphical effects such as blurring or color shifting to the area behind an element.More information
Rationale
-
In the State of CSS 2022 survey,
backdrop-filter
was a common response to the question about browser incompatibilities (source). - The State of CSS 2023 survey shows a pattern of steadily growing use of the feature between 2020 and 2023 (source).
WPT test results
Number of passed subtests for backdrop-filter. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
In the State of CSS 2022 survey,
-
blocking="render"
Edge 105Chrome 105Firefox ✕Safari ✕The
blocking="render"
attribute for<link>
,<script>
, and<style>
elements blocks rendering until the external script or stylesheet has been loaded. For<link rel="expect">
, rendering is blocked until a specific element is in the DOM.More information
Rationale
- Render blocking is a prerequisite for cross-document view transitions, which is a highly requested feature (source).
WPT test results
Number of passed subtests for blocking="render". Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
calc-size() and interpolate-size()
Edge 129Chrome 129Firefox ✕Safari ✕The
calc-size()
CSS function computes mathematical expressions that includeheight
andwidth
keyword values, for examplecalc-size(fit-content, size / 2)
. Not to be confused with thecalc()
CSS function, which cannot use keyword values.
Theinterpolate-size
CSS property sets whether animations and transitions interpolate between a numeric value and a keyword value, such as from a fixed length toauto
orfit-content
.More information
Rationale
- Animating to and from auto heights is a very common use case in CSS. This feature makes it possible to animate between a fixed length and any other type of length which can be expressed in CSS. The Interop 2025 feature proposal received 67 positive reactions on GitHub (source).
WPT test results
Number of passed subtests for calc-size() and interpolate-size(). Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
Container size and style queries
Edge 111Chrome 111Firefox ✕Safari 18Container size queries with the
@container
at-rule apply styles to an element based on the dimensions of its container.
Container style queries with the@container
at-rule apply styles to an element based on the values of custom properties of its container.More information
Rationale
- In the State of CSS 2024 survey, container queries was the second-most common response to the browser incompatibilities question (source).
- In the State of CSS 2024 survey, container style queries was in the top 20 most common responses to the browser incompatibilities question (source).
WPT test results
Number of passed subtests for Container size and style queries. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
Core Web Vitals
Edge 84Chrome 84Firefox ✕Safari ✕The
largest-contentful-paint
performance entry and theLargestContentfulPaint
API measures the time it takes for the largest image or text to appear. Largest contentful paint (LCP) is a common metric for perceived loading times.
Thelayout-shift
performance entry andLayoutShift
API measures the layout stability of web pages based on movements of the elements on the page.
Theevent
andfirst-input
performance entries and thePerformanceEventTiming
API measures the latency of user input events, such as mouse clicks or keypresses, and the latency of the first user input. First Input Delay (FID) is a common metric for perceived responsiveness.More information
Rationale
- The Interop 2025 feature proposal received more than 120 positive reactions on GitHub (source).
WPT test results
Number of passed subtests for Core Web Vitals. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
Cross-document view transitions
Edge 126Chrome 126Firefox ✕Safari 18.2The
@view-transition
CSS rule sets whether a document opts-in to transitions between documents in a multi-page application. Both the old and new document must opt-in for a transition to be triggered.More information
Rationale
- Over the past decade, single-page web applications have become very popular, and JavaScript frameworks have been used to provide the ability to smoothly transition between UI states without full page reloads. The View Transitions API allows multi-page apps to achieve the same level of smoothness and interactivity without JavaScript.
- View transitions is the 5th most requested feature in the browser incompatibilities question in the State of CSS 2024 survey (source).
WPT test results
Number of passed subtests for Cross-document view transitions. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
Custom highlights
Edge 105Chrome 105Firefox ✕Safari 17.2Custom highlights style arbitrary text ranges, without adding extra elements to the DOM.
More information
Rationale
- The CSS Custom Highlight API was the 5th content-related feature with the most positive sentiments in the State of HTML 2024 survey (source).
- Compelling use cases and positive reactions were received on the feature proposal on GitHub (source).
- Supportive comments were also received on the announcement css-tricks.com blog post (source).
WPT test results
Number of passed subtests for Custom highlights. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
Customized built-in elements
Edge 79Chrome 67Firefox 63Safari ✕Customized built-in elements are HTML elements that extend built-in elements using the
is
attribute, to add new behaviors that you define.More information
Rationale
-
The GitHub issue about improving the
is
HTML attribute received a lot of attention and reactions (source). - The Custom Elements polyfill is very popular, with more than 26000 weekly downloads on NPM, and 250 stars on GitHub (source).
WPT test results
Number of passed subtests for Customized built-in elements. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
The GitHub issue about improving the
-
document.caretPositionFromPoint()
Edge 128Chrome 128Firefox 20Safari ✕The
document.caretPositionFromPoint()
method finds an insertion point, represented by a DOM node and an offset within that node, for given coordinates in the viewport.More information
Rationale
-
The Chromium implementation bug for
document.caretPositionFromPoint()
has more than 45 votes (source).
WPT test results
Number of passed subtests for document.caretPositionFromPoint(). Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
The Chromium implementation bug for
-
Fetch upload streams
Edge 105Chrome 105Firefox ✕Safari 11.1A
fetch()
request uploads a stream of data to the server when a request'sbody
property is aReadableStream
object.More information
Rationale
- The specification pull request for this feature received a lot of positive reactions (source).
- The Chromium implementation bug has more than 70 votes (source).
WPT test results
Number of passed subtests for Fetch upload streams. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
field-sizing
Edge 123Chrome 123Firefox ✕Safari ✕The
field-sizing
CSS property allows form controls such as<textarea>
to be sized based on their content.More information
Rationale
-
The
field-sizing
property makes it possible to remove JavaScript-based workarounds for sizing form fields (source). - The autosize NPM package, which automatically adjusts the height of textareas to fit their content, has more than 700,000 weekly downloads (source).
WPT test results
Number of passed subtests for field-sizing. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
The
-
:has-slotted
Edge 134Chrome 134Firefox 136Safari ✕The
:has-slotted
CSS pseudo-class matches<slot>
elements where the fallback content is not shown. The pseudo-class matches any slotted content, including white space, text nodes, or elements.More information
Rationale
- The feature proposal issue on the Web Components specification GitHub repository received a lot of positive reactions (source).
WPT test results
Number of passed subtests for :has-slotted. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
Intersection observer visibility tracking
Edge 79Chrome 74Firefox ✕Safari ✕The
trackVisibility
parameter for theIntersectionObserver
constructor 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.More information
Rationale
- In the 2022 APIs and JavaScript MDN short survey, more than 15% of respondents agreed that the Intersection Observer API needed to be improved across browsers (source).
WPT test results
Number of passed subtests for Intersection observer visibility tracking. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
JPEG XL
Edge ✕Chrome ✕Firefox ✕Safari 17The JPEG XL image format is a raster graphics file format that supports animation, alpha transparency, and lossy as well as lossless compression.
More information
Rationale
- The Interop 2025 feature proposal for JPEG XL received more than 600 positive reactions (source).
WPT test results
Number of passed subtests for JPEG XL. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
JSON and CSS modules
Edge 123Chrome 123Firefox ✕Safari ✕Module
import … with { type: "json" }
statements load JSON data. Also known as JSON module scripts.
Moduleimport … with { type: "css" }
statements load CSS modules as constructable stylesheets. Also known as CSS module scripts.More information
Rationale
- The GitHub issue which initially introduced the JSON module scripts idea received a lot of positive reactions (source).
- The GitHub issue which initially introduced the CSS module scripts idea received more than 200 positive reactions (source).
WPT test results
Number of passed subtests for JSON and CSS modules. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
::marker
Edge 86Chrome 86Firefox 80Safari ✕The
::marker
CSS pseudo-element selects list item markers for styling numbers or bullets.More information
Rationale
- The Interop 2025 feature proposal received 25 positive reactions (source).
- Comments on the State of CSS 2023 survey indicate that developers want cross-browser support for this feature (source).
WPT test results
Number of passed subtests for ::marker. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
Same-document view transitions
Edge 125Chrome 125Firefox ✕Safari 18.2View transitions allow you to create animated visual transitions between different states of a document.
More information
Rationale
- View transitions is the 5th most requested feature in the browser incompatibilities question in the State of CSS 2024 survey (source).
WPT test results
Number of passed subtests for Same-document view transitions. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
@scope
Edge 118Chrome 118Firefox ✕Safari 17.4The
@scope
CSS at-rule sets the scope for a group of rules.More information
Rationale
- CSS scoping appears in the top ten missing features in the State of CSS 2023 survey (source).
WPT test results
Number of passed subtests for @scope. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
Scroll-driven animations
Edge 115Chrome 115Firefox ✕Safari ✕The
animation-timeline
,scroll-timeline
, andview-timeline
CSS properties advance animations based on the user's scroll position.More information
Rationale
- This feature is in the top twenty features which developers said they had difficulties using because of lack of support or differences between browsers in the State of CSS 2024 survey (source).
- The Interop 2025 feature proposal received more than 50 positive reactions (source).
WPT test results
Number of passed subtests for Scroll-driven animations. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
Scroll anchoring
Edge 79Chrome 56Firefox 66Safari ✕Scroll anchoring is a browser feature which automatically adjusts the scroll position to prevent visible jumps when content changes above the viewport. The
overflow-anchor
CSS property allows developers to opt-out of the scroll anchoring behavior for specific elements.More information
Rationale
- Many likes and retweets on the initial announcement of the scroll anchoring feature when it was implemented in Chrome (source).
- Developer interest in the tracking implementation bug in WebKit (source).
WPT test results
Number of passed subtests for Scroll anchoring. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
Scrollbar styling
Edge 121Chrome 121Firefox 97Safari ✕The
scrollbar-color
CSS property sets the color of the scrollbar track and thumb.
Thescrollbar-gutter
CSS property reserves space for the scrollbar, preventing unwanted layout changes as the scrollbar appears and disappears.
Thescrollbar-width
CSS property sets the width of the scrollbar.More information
Rationale
- In the State of CSS 2024 survey, styling scrollbar ranked eighth in the browser incompatibilities question (source).
WPT test results
Number of passed subtests for Scrollbar styling. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
scrollend
Edge 114Chrome 114Firefox 109Safari ✕The
scrollend
event fires when an element or document has finished scrolling.More information
Rationale
- The scrollend feature is used by more than 20% of page loads in Chrome, according to chromestatus.com (source).
- In the 2021 Scroll Survey, 43% of respondents said that it was somewhat or extremely difficult to work with scrolling (source).
WPT test results
Number of passed subtests for scrollend. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
Speculation rules
Edge 109Chrome 109Firefox ✕Safari ✕Speculation rules are hints to the browser to proactively download pages in the background so they appear instantly when the user navigates to them.
More information
Rationale
- Adoption on supporting browsers is growing rapidly (source).
- WordPress 6.8 uses speculation rules to improve performance (source).
WPT test results
Number of passed subtests for Speculation rules. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
Top layer animations
Edge 117Chrome 117Firefox ✕Safari ✕A set of CSS features which makes top layer elements, like
<dialog>
elements, or elements with thepopover
attribute, animatable as they enter and exit the top layer. The features include theoverlay
CSS property, the@starting-style
at-rule, thetransition-behavior
CSS property, and support for animating thedisplay
andcontent-visibility
CSS properties.More information
Rationale
- Top layer animations allow animating popovers, which is a highly requested feature.
WPT test results
Number of passed subtests for Top layer animations. Test results from wpt.fyi. View the latest results for this feature.
Specifications
- https://drafts.csswg.org/css-position-4/#overlay
- https://drafts.csswg.org/css-transitions-2/#defining-before-change-style
- https://drafts.csswg.org/css-display-4/#display-animation
- https://drafts.csswg.org/css-contain-3/#content-visibility-animation
- https://drafts.csswg.org/css-transitions-2/#transition-behavior-property
-
Trusted types
Edge 83Chrome 83Firefox ✕Safari ✕Trusted types allow you to lock down insecure parts of the DOM API and prevent client-side cross-site scripting (XSS) attacks.
More information
Rationale
- Interest from the community and adoption on supporting browsers is high (source).
WPT test results
Number of passed subtests for Trusted types. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
URLPattern
Edge 95Chrome 95Firefox ✕Safari ✕The
URLPattern
API creates patterns that can be matched against URLs or URL components.More information
Rationale
- The URLPattern specification GitHub repository has more than 180 stars (source).
- Feedback received while testing the API with developers has been positive (source).
WPT test results
Number of passed subtests for URLPattern. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
WebDriver BiDi
Edge 106Chrome 106Firefox 102Safari ✕WebDriver BiDi is a bidirectional protocol that allows a WebDriver client and a browser to communicate with each other.
More information
Rationale
- The Interop 2025 feature proposal for WebDriver BiDi received more than 70 positive reactions (source).
WPT test results
Number of passed subtests for WebDriver BiDi. Test results from wpt.fyi. View the latest results for this feature.
Specifications
-
WebTransport
Edge 97Chrome 97Firefox 114Safari ✕The
WebTransport
API transmits data between a client and a server, by using the HTTP/3 protocol.More information
Rationale
- The specification GitHub repository has 900 stars (source).
WPT test results
Number of passed subtests for WebTransport. Test results from wpt.fyi. View the latest results for this feature.
Specifications