Edit

Share via


Microsoft Edge 143 web platform release notes (Dec. 2025)

The following are the new web platform features and updates in Microsoft Edge 143, which releases on December 4, 2025.

To stay up-to-date and get the latest web platform features, download a preview channel of Microsoft Edge (Beta, Dev, or Canary); go to Become a Microsoft Edge Insider.

Detailed contents:

Edge DevTools

See What's New in Microsoft Edge DevTools.

WebView2

See Release Notes for the WebView2 SDK.

CSS features

Below are the new Cascading Style Sheets (CSS) features in Microsoft Edge.

CSS anchored fallback container queries

The @container anchored(fallback) container query can now be used to style descendant elements of an anchor-positioned element based on which of position-try-fallbacks is applied.

This can be used to, for example:

  • Draw an arrow between an anchor-positioned tooltip and the element it's anchored to, in the right direction.
  • Display different background gradients based on the direction.
  • Run different animations based on the position of the anchored element.

For example:

#anchored {
  position-try-options: flip-block;
  container-type: anchored;
}
@container anchored(fallback: flip-block) {
  #anchored > .arrow {
    --arrow-rotation: 180deg;
  }
}

See also:

CSS font-language-override property

The font-language-override CSS property allows you to override the system language used for OpenType glyph substitution, by specifying a four-character language tag directly in CSS.

This enables finer-grained typographic control for multilingual content, or for fonts with language-specific glyph variants.

See also:

Side-relative values for background-position longhand properties

The background-position-x and background-position-y longhand properties now support side-relative values.

A side-relative value lets you define the image's position relative to one of its edges. For example:

.element {
  background-position-x: left 20px; /* 20px from the left edge */
  background-position-y: bottom 10%; /* 10% from the bottom edge */
}

See also:

Better rendering of box-shadow for elements with large border-radius values

Microsoft Edge now better renders the spread area of box-shadow for elements with large border-radius values.

The shadow of circular shapes (or whenever the border-radius value is close to 50%), now looks closer to that of the original shape.

See also:

Web APIs

Below are the new Web API features in Microsoft Edge.

Allow more characters in JavaScript DOM APIs

You can now create DOM elements and attributes with a wider variety of valid characters in JavaScript. This matches the behavior for when the same elements and attributes are defined in HTML markup.

This change aligns the JavaScript DOM APIs with the HTML parser, which allows a broader set of characters for element names and attributes.

See also:

dataTransfer property for insertFromPaste, insertFromDrop, and insertReplacementText input events

The input event objects of type insertFromPaste, insertFromDrop, and insertReplacementText now have a dataTransfer property, for better interoperability with other browsers.

The dataTransfer property provides access to the clipboard or drag-and-drop data when the user edits text within a contenteditable element. The same data is also available on the dataTransfer property of beforeinput events.

This feature only applies to contenteditable elements.

See also:

EditContext API: change to the TextFormat underlineStyle and underlineThickness enum values

Previously, when using the EditContext API, the TextFormat.underlineStyle and TextFormat.underlineThickness enum values were incorrectly capitalized.

  • The new values for the TextFormat.underlineStyle enum are now lowercase: {"none", "solid", "dotted", "dashed", "wavy"}.
  • The new values for the TextFormat.underlineThickness enum are now lowercase: {"none", "thin", "thick"}.

This change, which is per specification, makes it easier to apply these values directly to CSS properties without needing to remap them.

See also:

FedCM API: support structured JSON responses from identity providers

The Federated Credential Management API (FedCM) now supports structured JSON responses from identity providers (IdPs).

This allows IdPs to return structured JSON objects instead of plain strings to relying parties (RPs) via the id_assertion_endpoint. This eliminates the need to manually serialize and parse JSON strings, simplifying integration, and allowing RPs to interpret complex responses directly, and thus support varied protocols (such as OAuth2, OIDC, or IndieAuth) without out-of-band agreements.

See also:

Gamepad ongamepadconnected and ongamepaddisconnected event handler attributes

The ongamepadconnected and ongamepaddisconnected event handler attributes are now available on the window object.

This is in addition to the existing ability to listen to the gamepadconnected and gamepaddisconnected events using window.addEventListener().

See also:

HTMLElement: accessKeyLabel

The HTMLElement.accessKeyLabel read-only property is now available in Microsoft Edge.

HTMLElement.accessKeyLabel returns a human-readable string that represents the actual keyboard shortcut that's assigned to the element by the browser, based on the user's platform and browser.

If no access key is assigned, it returns an empty string.

See also:

Better Unicode support

Microsoft Edge uses ICU, a third-party library for general Unicode support. ICU is now upgraded from ICU 74.2 to ICU 77.1.

The latest ICU 77 release contains CLDR 47 and other changes to support Unicode 16.

This change brings improvements to the following APIs:

  • Internationalization APIs under the Intl namespace.
  • Regular expression APIs.
  • URL APIs.
  • Text segmentation.

The above changes are explained in ICU 77.1 test failures.

See also:

New PWA manifest update algorithm

The updating of installed PWAs uses a new algorithm. The new update algorithm makes the update process more deterministic and predictable, and gives you more control over whether, and when, updates should apply to existing installations of your app.

The new update algorithm has the following benefits:

  • Consistency: The algorithm provides a consistent way to detect when a manifest update should happen.

  • Reduced user interruptions: App users won't see the update dialog, except when it's strictly necessary, such as to confirm security-sensitive changes.

  • Browser flexibility: Microsoft Edge can now allow known, trusted apps to update without displaying a notification, and can block updates for known bad apps.

  • Developer control: You have more control over when the update dialog is shown to users.

  • Reduce network traffic: Unnecessary network traffic is minimized.

See also:

WebTransport application protocol negotiation

WebTransport application protocol negotiation lets you negotiate the protocol used by your app within the WebTransport handshake.

You can specify a list of application protocols that are supported when constructing a WebTransport object, which are then conveyed to the server via HTTP request headers.

If the server picks one of these protocols, it indicates which one via HTTP response headers, and the value is available within the WebTransport object.

See also:

Deprecated or removed features

The following Web API features have been deprecated (still supported, but not recommended) or removed.

See also Site compatibility-impacting changes coming to Microsoft Edge.

Deprecate Intl.Locale getters

The Intl.Locale API exposes information for a locale, including its week elements and its hour cycle type, such as 12-hour clock, Japanese 12-hour clock, or 24-hour clock.

The accessor properties of the Intl.Locale object are now deprecated, in favor of the corresponding functions, per the specification. For example, the Intl.Locale.prototype.hourCycle accessor property is deprecated in favor of the Intl.Locale.prototype.getHourCycles() function.

See also:

Origin trials in Microsoft Edge

The following are origin trials for new experimental APIs that are available in Microsoft Edge.

Origin trials let you try experimental APIs on your own live website for a limited time. To learn more about origin trials, see Use origin trials in Microsoft Edge.

For the full list of available origin trials, see Microsoft Edge Origin Trials.

Ad Selection API

Expires on November 30, 2025.

The Ad Selection API provides user-relevant ads on your site without using third-party cookies.

Acquisition Info API

Expires on December 18, 2025.

The Acquisition Info API supports third-party acquisition attribution for PWAs that were acquired through an app store or directly from the browser.

Chromium origin trials

Below are active Chromium origin trials which you can try in Microsoft Edge.

For the full list of Chromium origin trials that are available in Microsoft Edge, see Microsoft Edge Origin Trials.

Soft navigation heuristics

Expires on March 10, 2026.

Soft navigations are JavaScript-driven same-document navigations that are using the history API or the new Navigation API, triggered by a user gesture and modifies the DOM, modifying the previous content, as well as the URL displayed to the user.

This origin trial experiments with soft-navigation heuristics, and experimentally web-exposes them, so that Real User Monitoring (RUM) providers and developers can collect them and report back of their usefulness when collecting performance metrics.

WebAssembly Custom Descriptors

Expires on June 16, 2026.

WebAssembly Custom Descriptors allows WebAssembly to store data associated with source-level types more efficiently in new custom descriptor objects.

CrashReportingStorageAPI

Expires on April 21, 2026.

The CrashReportingStorageAPI origin trial exposes the window.crashReport key value Storage API, which allows developers to supply arbitrary application state with each crash report that is sent to developer-specified endpoints.

For the general crash reporting API infrastructure, see Crash Reporting.

For the design and specification of the window.crashReport extension, see the Explainer and the pull request Introduce the CrashReportStorage interface.

See

WebGPU Compatibility Mode

Expires on April 21, 2026

WebGPU Compatibility Mode is an opt-in, lightly restricted subset of WebGPU capable of running older graphics APIs such as OpenGL and Direct3D11. The goal is to expand the reach of WebGPU applications to older devices that don't have the modern, explicit graphics APIs that core WebGPU requires.

Fetch retry

Expires on March 24, 2026.

Fetch retry allows web developers to indicate that a fetch() request should be retried, to have a greater guarantee on it being reliably sent, even if the network connection is erratic. This is especially important for keep-alive fetches, where the request might outlive the document, which can no longer watch for its failure and do a manual retry.

Prompt API

Expires on March 24, 2026

The Prompt API is an experimental web API that allows you to prompt a small language model (SLM) that is built into Microsoft Edge, from your website's or browser extension's JavaScript code. Use the Prompt API to generate and analyze text, or to create application logic based on user input, and discover innovative ways to integrate prompt engineering capabilities into your web application.

See also:

Incoming Call Notifications

Expires on May 19, 2026.

Extend the Notifications API to allow installed PWAs to send incoming call notifications -- that is, notifications that have call-styled buttons and a ringtone. This extension helps VoIP web apps create more engaging experiences by making it easier for users to easily recognize a calling notification and answer it. This feature also helps bridge the gap between native and web implementations of apps that have them both.

See also:

Extended lifetime shared workers

Expires on April 21, 2026.

Extended-lifetime shared workers introduces the extendedLifetime option for the SharedWorker constructor.

This feature allows a shared worker to stay alive for a short period after all connected clients (such as pages) have been unloaded. This is useful for performing asynchronous tasks that need to complete after a page unloads, such as saving data to IndexedDB or sending analytics.

Without this feature, those tasks require a Service Worker, which can be too heavyweight for this use-case. This origin trial provides a lightweight alternative.

Full frame rate render blocking attribute

Expires on March 24, 2026

The new full-frame-rate render blocking attribute instructs the browser to render the page at a lower frame rate to reserve resources while parsing critical content. After the critical content has been parsed, the browser restores its normal frame rate.

For example <link rel="expect" href="#critical-content" blocking="full-frame-rate"> lowers the frame rate of the browser until the #critical-content element is parsed.

The full-frame-rate render blocking attribute is informational only. The browser may decide to lower the frame rate before parsing a blocking element, such as at the very beginning of the loading phase. The browser may also decide to restore the frame rate before the blocking element list becomes empty, such as after a timeout, or after certain user interactions.

Local Network Access from Non-Secure Contexts

Expires on May 19, 2026.

Local Network Access from non-secure contexts temporarily allows for access to resources on local networks to originate from non-secure contexts. This gives developers more time to migrate Local Network Access requests to originate from a secure context.

For restrictions on Local Network Access, see New permission prompt for Local Network Access. This origin trial can only be enabled through HTTP header-provided origin tokens.

URL and eval hashes in CSP script-src

Expires on March 24, 2026.

This feature introduces url- and eval- hashes to be used in script-src directives in Content Security Policy (CSP). This feature enables developers to write a strict Content Security Policy that only relies on hash- and nonce-based policies, without having to use permissive hostname-based allow-lists or unsafe-eval.

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.