Nóta
Aðgangur að þessari síðu krefst heimildar. Þú getur prófað aðskrá þig inn eða breyta skráasöfnum.
Aðgangur að þessari síðu krefst heimildar. Þú getur prófað að breyta skráasöfnum.
The following are the new web platform features and updates in Microsoft Edge 158, which releases on Nov. 19, 2026.
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:
Microsoft Edge DevTools
See What's new in Microsoft Edge DevTools.
WebView2
See:
CSS features
The following new Cascading Style Sheets (CSS) features are included in Microsoft Edge.
flow-start and flow-end alignment keywords
The flow-start and flow-end keywords are now accepted by CSS alignment properties, as aliases of the existing flex-start and flex-end keywords.
These keywords refer to the edges of a container at which content placement starts and ends. This is useful when placement is reversed, such as in CSS grid lanes layouts that use fill-reverse or track-reverse. Because the keywords are aliases, flex-start and flex-end now follow the logical start and end directions in any layout mode where those differ from the physical directions, and not only in flexbox.
See also:
- flex-start in
align-itemsCSS property at MDN. - item-flow row vs. column in masonry layouts in CSS Working Group issues.
- Add flow-start and flow-end alignment keywords in CSS Working Group pull requests.
::highlight(*) universal selector
The ::highlight(*) CSS pseudo-element selector matches the highlight pseudo-elements of all custom highlights, regardless of their names.
The * argument adds zero specificity. This means that styles you declare by using ::highlight(*) act as a base style, which rules that name a specific highlight can override.
For example, to style all custom highlights with a yellow background, and then override the style of a highlight that's named error:
::highlight(*) {
background-color: yellow;
}
::highlight(error) {
background-color: pink;
}
See also:
- ::highlight() CSS pseudo-element at MDN.
- CSS Custom Highlight API at MDN.
Media element pseudo-classes
The following CSS pseudo-classes match <audio> and <video> elements based on their state:
:playing:paused:seeking:buffering:stalled:muted:volume-locked
Use the above CSS pseudo-classes to style media elements, or their surrounding UI, without needing JavaScript to track the state. For example, to dim a video while it's buffering:
video:buffering {
opacity: 0.5;
}
See also:
- :playing CSS pseudo-class at MDN.
- :paused CSS pseudo-class at MDN.
- :seeking CSS pseudo-class at MDN.
- :buffering CSS pseudo-class at MDN.
- :stalled CSS pseudo-class at MDN.
- :muted CSS pseudo-class at MDN.
- :volume-locked CSS pseudo-class at MDN.
closest-corner and farthest-corner radii for circle() and ellipse()
The circle() and ellipse() CSS basic-shape functions now accept the closest-corner and farthest-corner radius keywords, in addition to the existing closest-side and farthest-side keywords.
- The
closest-cornerradius keyword resolves to the distance from the center of the shape to the nearest corner of the reference box. - The
farthest-cornerradius keyword resolves to the distance from the center of the shape to the farthest corner of the reference box.
This matches the behavior of the same keywords in the radial-gradient() function. You can use these keywords in the clip-path, shape-outside, and offset-path properties.
For example, to clip an element to a circle that reaches the farthest corner of the element:
.badge {
clip-path: circle(farthest-corner at 25% 25%);
}
See also:
- circle() CSS function at MDN.
- ellipse() CSS function at MDN.
- Basic shape functions in CSS Shapes Module Level 1.
object-fit and object-position for SVG documents in <object> and <embed>
The object-fit and object-position CSS properties now apply to Scalable Vector Graphics (SVG) documents that are loaded by using an <object> or <embed> element. The SVG document is sized and positioned inside the content box of the element, in the same way as the content of an <img> element.
Previously, Microsoft Edge ignored the object-fit and object-position CSS properties for embedded SVG documents, and always stretched the document viewport to fill the entire content box.
See also:
- object-fit CSS property at MDN.
- object-position CSS property at MDN.
- Embedded content rendering rules in the HTML standard.
HTML features
The following new HTML features are included in Microsoft Edge.
<install> element
The <install> HTML element is a browser-rendered control that lets users install a web app, without you having to write JavaScript. Because the browser renders the <install> control, the browser receives a stronger signal of the user's intent than when handling beforeinstallprompt events.
By default, the element installs the web app that's associated with the current document. To offer the installation of another web app, such as in an app catalog, use the manifest attribute to specify the URL of the web app manifest, and optionally, the manifestid attribute to specify the manifest ID. The content of the element is fallback content:
<install
manifest="https://music.example/manifest.webmanifest"
manifestid="https://music.example/app">
<a href="https://music.example/">Open Music Example</a>
</install>
The <install> element is the declarative counterpart of the navigator.install() method. See Web Install API, below.
Administrators can control this feature in two ways:
- The WebAppInstallByUserEnabled policy can disable web app installation by users, including installations that are started by the
<install>element and thenavigator.install()method. - The
web-app-installationpermissions policy can allow or disallow the use of this feature on origins that the administrator controls, such as internal sites and iframes.
See also:
- Web Install specification at WICG.
- Web Install API, below.
SVG features
The following new Scalable Vector Graphics (SVG) features are included in Microsoft Edge.
side attribute for SVG <textPath>
The side attribute of the SVG <textPath> element lets you choose which side of a path the text follows. Setting side="right" reverses the direction of the path for text layout. This makes it easy to place text inside or outside of a circular path, without duplicating or manually reversing the path data.
For example:
<svg viewBox="0 0 200 200">
<path id="circle" d="M 100,100 m -75,0 a 75,75 0 1,1 150,0 a 75,75 0 1,1 -150,0" fill="none" />
<text>
<textPath href="#circle" side="right">Text on the other side of the path</textPath>
</text>
</svg>
See also:
- side attribute at MDN.
- textPath SVG element at MDN.
- The side attribute in Scalable Vector Graphics (SVG) 2.
Web APIs
The following new Web API features are included in Microsoft Edge.
Web Install API
The Web Install API lets a website prompt the user to install a web app.
The navigator.install() method installs either:
- The web app that's associated with the current document.
- A web app that's not associated with the current document, by passing a manifest URL and an optional manifest ID.
This enables cross-origin web app installation, and is a better developer experience than handling beforeinstallprompt events.
For example, an app catalog can offer to install a web app that's identified by its manifest URL:
await navigator.install({
manifest: "https://music.example/manifest.webmanifest",
manifestId: "https://music.example/app"
});
The user must always confirm the installation.
The navigator.install() method is the imperative counterpart of the <install> element. See <install> element, above.
Administrators can control this feature in two ways:
- The WebAppInstallByUserEnabled policy can disable web app installation by users, including installations that are started by the
navigator.install()method and the<install>element. - The
web-app-installationpermissions policy can allow or disallow the use of this feature on origins that the administrator controls, such as internal sites and iframes.
See also:
- Web Install specification at WICG.
- Web Install API at Chrome Platform Status.
Permissions policy: focus-without-user-activation
The focus-without-user-activation permissions policy gives you control over programmatic focus changes that are made by a web page that's embedded in an iframe on your site.
When the focus-without-user-activation permissions policy is denied for the frame that initiates the focus change, the following programmatic focus changes are blocked, unless that frame has transient user activation or focus is already within its subtree:
- Calls to
element.focus()andwindow.focus(). - The
autofocusattribute. - The focusing steps for dialogs and popovers.
This doesn't prevent dialogs or popovers from opening. Changes of focus that are initiated by the user, such as clicking or tabbing, are never affected. The existing restriction on autofocus in cross-origin iframes is unchanged. The focus-without-user-activation permissions policy can further restrict autofocus, but allowing this policy doesn't enable autofocus in a cross-origin frame.
Set the focus-without-user-activation permissions policy by using either:
- The
Permissions-PolicyHTTP response header. - The
allowattribute of an<iframe>element. A parent frame that has focus can still pass focus to a child iframe, even when the child frame denies the policy. After a frame has focus, the frame can move focus within its own subtree.
For example, to prevent an iframe from programmatically gaining focus on its own:
<iframe src="https://example.com/widget" allow="focus-without-user-activation 'none'"></iframe>
See also:
WebAudio: Incremental rendering for OfflineAudioContext
The OfflineAudioContext interface now supports incremental rendering. Instead of allocating the entire audio buffer before rendering begins, the OfflineAudioContext interface processes and delivers the audio graph in chunks. This lowers memory requirements when you process large amounts of audio data, particularly on devices with limited memory.
See also:
- OfflineAudioContext: startRendering() method at MDN.
- startRendering() in the Web Audio API specification.
WebTransport: Reliability attributes
The reliability property and the static supportsReliableOnly property are now available on WebTransport. These properties tell you what kinds of connections are supported.
- The static property
WebTransport.supportsReliableOnlyindicates whether the browser supportsWebTransportover exclusively reliable connections. In Microsoft Edge, this property returnsfalse, because a session that's established successfully uses HTTP/3, and supports unreliable datagrams. - The
reliabilityproperty of a specificWebTransportinstance indicates whether the established session supports unreliable transport, such as datagrams. This property initially returns"pending", and changes to returning"supports-unreliable"after an HTTP/3 WebTransport connection is established.
See also:
- WebTransport: reliability property at MDN.
- reliability in WebTransport at W3C.
WebTransport: Anticipated concurrent incoming streams
You can now tell WebTransport how many incoming streams you expect to have open at once, by using hints in the WebTransport() constructor. The browser uses these hints to configure the initial QUIC stream allowance. This reduces the risk that a server that needs high stream concurrency is blocked by the initial stream limit.
See also:
- WebTransport: incomingBidirectionalStreams property at MDN.
- WebTransport: incomingUnidirectionalStreams property at MDN.
- WebTransport configuration in WebTransport at W3C.
WebTransport: Draining
The draining property of WebTransport is a promise that resolves when the server indicates that the WebTransport session will be gracefully retired. Use this signal to establish a replacement session while the existing streams and the current session remain usable.
For example:
transport.draining.then(() => {
// Start a new session, and migrate your streams to it.
});
See also:
- WebTransport: draining property at MDN.
- Handling session draining in the WebTransport explainer.
- draining in WebTransport at W3C.
Origin trials
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.
| Name | Description | Register |
|---|---|---|
| Gamepad raw input event | Instead of relying on frequent polling via navigator.getGamepads(), webpages can listen for gamepadrawinputchanged events. These events are fired whenever changes are detected between input frames from the same device. |
Register |
| Control viewport heuristics in Speculation Rules API | Lets you control the viewport heuristics that are used by speculation rules, to determine if different heuristics parameters give you better results than the default ones. | Register |
| User Agent Image Replacement API | Lets you observe when browser features replace images in your page's content. These browser features are currently limited to selected sites. | Register |
| Autofill Event | Detects when browser autofill updates form controls, for adapting custom UI and validation. | Register |
| Speculative Load measurement | performance.speculations exposes data about used and unused preloads, prefetches, and prerenders. This helps you measure the effectiveness of speculative loading strategies and optimize performance-versus-cost tradeoffs. |
Register |
| Prompt API sampling parameters | The topK and temperature sampling parameters let you optimize model behavior per language-model session. |
Register |
| Digital Credentials API - Issuance Support | Lets a site trigger the issuance of a credential, such as a driver's license or an academic degree, from an issuer server to the user's digital wallet application. | Register |
PrefetchAndPrerenderActivationBeacon |
Allows Microsoft Edge to reliably report an activation beacon when a prefetch or prerendered page is activated. | Register |
prerender_until_script Speculation Rules API action |
Prerenders a page, but switches to prefetching when a script executes. | Register |
| JS Self-Profiling Markers | Extends the JS Self-Profiling API by adding sample markers such as script, gc, style, layout, and paint. These markers identify the activity that the browser was doing at capture time. |
Register |
| Email Verification Protocol | Enables websites to verify email ownership by using cryptographic tokens that are issued by email providers. This reduces reliance on email one-time passcodes (OTPs), and streamlines sign-up, sign-in, and recovery flows. | Register |
| WebAssembly Custom Descriptors V2 | Stores data that's associated with source-level types more efficiently, in custom descriptor objects. | Register |
| Declarative Performance Observer API | Uses HTTP response headers to prove a reliable browser-managed telemetry system that reports performance metrics for the site, from navigation initiation to page termination. | Register |
| WebMCP | Enables your site to register tools for an in-browser agent to complete tasks on behalf of a user. | Register |
| WebRTC Diagnostic Logging API | Lets your web app start, finish, and cancel the collection of internal diagnostic logs for WebRTC operations. | Register |
| Connection Allowlist Embedded Enforcement | Lets you use the connectionallowlist attribute on an <iframe> element to require that the embedded document restricts its outgoing network connections to a declared allowlist. If the embedded document doesn't deliver a matching Connection-Allowlist header, its response is blocked. |
Register |
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.