Microsoft Edge 134 web platform release notes (Mar. 2025)

The following are the new web platform features and updates in Microsoft Edge 134, which releases on March 6, 2025.

To stay up-to-date and get the latest web platform features, download an Insiders version of Microsoft Edge, such as Canary, Dev, or Beta; see Become a Microsoft Edge Insider.

Detailed contents:

Edge DevTools

For Edge DevTools, see What's New in Microsoft Edge DevTools.

WebView2

For WebView2, see Release Notes for the WebView2 SDK.

Web platform features

Enabled features

Attribution reporting: remove aggregatable report limit when trigger context ID is non-null

The aggregatable report limit when the trigger context ID is non-null is removed from the Attribution Reporting API.

See Attribution Reporting API at MDN.

CSS highlight inheritance

With CSS highlight inheritance, the pseudo-classes such as ::selection and ::highlight now inherit their properties through the pseudo highlight chain, rather than the element chain. The result is a more intuitive model for inheritance of properties in highlights.

When any supported property is not given a value by the cascade, its specified value is determined by inheritance from the corresponding highlight pseudo-element of its originating element's parent.

See CSS Custom Highlight API at MDN.

CSS dynamic-range-limit property

The dynamic-range-limit CSS property enables a page to limit the maximum brightness of HDR content.

Using this property, webpages that display HDR images can limit their brightness when viewed in an image gallery, and only increase the brightness on user interaction, for example on hover.

Customizable <select> element

The customizable <select> element allows developers to take complete control of the rendering of the element, by adding the appearance: base-select CSS declaration.

This feature currently relies on the SelectParserRelaxation flag, which changes the HTML parser to allow more tags within the <select> tag. Sites which include additional tags inside <select> which were getting removed before, such as <span> elements, or are including an extremely large number of <option> elements may be affected by SelectParserRelaxation.

See Customizable Select Element (Explainer).

<dialog> light dismiss

This feature adds the light dismiss behavior of the Popover API to <dialog> elements. Light dismissing means closing the <dialog> element by clicking or tapping outside of the element.

A new closedby attribute controls the behavior:

  • <dialog closedby="none">: No user-triggered closing of dialogs at all.
  • <dialog closedby="closerequest">: User pressing Esc (or another close trigger) closes the dialog.
  • <dialog closedby="any">: User clicking outside the dialog, or pressing Esc, closes the dialog. Similar to popover=auto behavior.
application-title meta tag for installed web apps

The <meta name="application-title"> element allows developers of installed web applications to set the text that appears in the title bar of the installed application window. By default, if the application-title meta name is missing, the text that's contained in the HTML <title> element is used instead.

See Other names, in Standard metadata names, at MDN.

Document-Policy: expect-no-linked-resources

In Document-Policy, the expect-no-linked-resources configuration point allows a document to hint the browser to better optimize its loading sequence, such as by not using the default speculative parsing behavior.

Browsers have implemented speculative parsing of HTML to speculatively fetch resources that are present in the HTML markup, to speed up page loading. For the vast majority of web pages that have resources declared in the HTML markup, the optimization is beneficial and the cost paid in determining such resources is a sound tradeoff. However, the following scenarios might result in a sub-optimal performance tradeoff vs. the explicit time spent parsing HTML for determining sub-resources to fetch:

  • Pages that do not have any resources declared in the HTML.
  • Large HTML pages with minimal or no resource loads that could explicitly control preloading resources via other preload mechanisms available.

The expect-no-linked-resources Document-Policy hints to the browser that the browser is allowed to optimize-out the time that's spent in such sub-resource determination.

Explicit resource management

This feature introduces the using keyword to JavaScript, which allows developers to explicitly manage resources. The using keyword is used to define a block of code that uses a resource, and ensures that the resource is disposed of when the block is exited. This feature addresses a common pattern in software development regarding the lifetime and management of various resources (such as memory or I/O). This pattern supports resource allocation and explicitly releasing critical resources.

See ECMAScript Explicit Resource Management.

Extend the console.timeStamp API to support measurements and presentation options

This feature extends the console.timeStamp() API, in a backwards-compatible manner, to provide a high-performance method for instrumenting applications and surfacing timing data to the Performance tool in DevTools.

Timing entries that are added by using this API can have a custom timestamp, duration, and presentation options, such as which color to use for the entry in the Performance tool.

See also:

Offscreen canvas getContextAttributes

This feature adds the getContextAttributes() method from the CanvasRenderingContext2D interface to the OffscreenCanvasRenderingContext2D interface.

See CanvasRenderingContext2D: getContextAttributes() method at MDN.

Private Aggregation API: per-context contribution limits for Shared Storage callers

Enables Shared Storage callers to customize the number of contributions per Private Aggregation report.

This feature enables Shared Storage callers to configure per-context contribution limits via a new field: maxContributions. Callers set this field to override the default number of contributions per report — larger and smaller numbers will both be permitted. Due to padding, the size of each report's payload will be roughly proportional to the chosen number of contributions per report.

See also:

Support imageSmoothingQuality in CSS Painting API

This feature adds support for the imageSmoothingQuality attribute on the PaintRenderingContext2D interface. This allows you to make quality and performance tradeoffs when scaling images that were created by using the CSS Painting API. The imageSmoothingQuality attribute supports three options: low, medium, and high.

See also:

WebGPU Subgroups

The subgroups WbGPU feature allows SIMD parallelism. By using subgroups, threads within a group can perform collective operations. This provides efficient communication and data sharing among groups of invocations. These operations can be used to accelerate applications, by reducing memory overhead that's incurred by inter-invocation communication.

See WebGPU API at MDN.

fetchLater()

The fetchLater() JavaScript method requests a deferred fetch. After this method is called, the network request is queued by the browser, and is then invoked either:

  • When the document is destroyed.
  • After a certain time.

The method returns a FetchLaterResult that contains a boolean field. The value of the boolean field is updated when the deferred request has been sent. When the request is successfully sent, the response is ignored by browser, including its body and headers.

See Window: fetch() method at MDN.

Support Web Locks API in Shared Storage

This feature makes concurrent execution of shared storage worklets more reliable by integrating the Web Locks API into Shared Storage.

  • The navigator.locks.request() method is available to worklet environments.
  • All modifier methods support the option {withLock: <resource>}.
  • The sharedStorage.batchUpdate(methods, options) method allows multiple modifier methods to be executed atomically, by using the withLock option. This enables a website to maintain consistency while updating data across multiple storage keys.

Origin trials

The following are new experimental APIs which you can try on your own live website for a limited time. To learn more about origin trials, see Use origin trials in Microsoft Edge. To see the full list of available origin trials, see Microsoft Edge Origin Trials.

Microsoft Edge-only origin trials

Digital Goods API

Expires on March 31, 2025.

The Digital Goods API allows a web application to get information about its digital products and the user's purchases managed by a digital store. The user agent abstracts connections to the store, and the Payment Request API is used to make purchases.

Web App LocalFolder Access

Expires on March 31, 2025.

Allows Microsoft Store-installed Progressive Web Apps (PWAs) to access file content that was previously stored in the WinRT ApplicationData.LocalFolder folder by an earlier, UWP version of the application.

HTML+IDL handwriting attribute

Expires on June 14, 2025.

Granular per-document and per-element control over which content should allow or disallow handwriting input.

Acquisition Info API

Expires on June 30, 2025.

Supports 3P acquisition attribution for Progressive Web Apps (PWAs) that were acquired through an app store or directly from the browser.

Note

Portions of this page are modifications based on work created and shared by Chromium.org and used according to terms described in the Creative Commons Attribution 4.0 International License.