📃 September 2025 release notes
Newly available
The following features are newly available:
-
content-visibility:
The
content-visibility
CSS property delays rendering an element, including layout and painting, until it is needed. -
<link rel="dns-prefetch">:
The
rel="dns-prefetch"
attribute for the<link>
HTML element is a hint to the browser that the page or user is likely to request resources from another domain, so the browser should preemptively resolve DNS for thehref
value's domain. -
Unsanitized HTML parsing methods:
The
Document.parseHTMLUnsafe()
static method parses HTML into a DOM tree, while thesetHTMLUnsafe()
method ofElement
andShadowRoot
parses and inserts HTML into an existing tree. No sanitization applies to these methods, so never call them with user-provided HTML strings. -
Uint8Array base64 and hex conversion:
The
Uint8Array
object methodsfromBase64()
,toBase64()
, andsetFromBase64()
convert to and from base64 strings. ThefromHex()
,toHex()
, andsetFromHex()
methods convert to and from hex strings. -
URLPattern:
The
URLPattern
API creates patterns that can be matched against URLs or URL components.
Widely available
The following features are now widely available:
-
font-variant-alternates:
The
font-variant-alternates
CSS property, along with the@font-feature-values
at-rule, chooses when to use a font's alternate glyphs. -
translate:
The
translate
HTML attribute marks whether an element's text should be translated. -
sin(), cos(), tan(), asin(), acos(), atan(), and atan2() (CSS):
The
sin()
,cos()
,tan()
,asin()
,acos()
,atan()
, andatan2()
CSS functions compute various trigonometric functions.
New in Firefox
The following features are now available in Firefox:
-
::details-content:
The
::details-content
pseudo-element selects the expandable content of a<details>
element, excluding the<summary>
.
New in Firefox for Android
The following features are now available in Firefox for Android:
-
::details-content:
The
::details-content
pseudo-element selects the expandable content of a<details>
element, excluding the<summary>
.
New in Safari
The following features are now available in Safari:
- Anchor positioning: 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.
-
contrast-color():
The
contrast-color()
CSS function picks a color that has guaranteed contrast against a specified foreground or background color. -
Scoped custom element registries:
The
CustomElementRegistry()
constructor creates a new custom element registry that's separate from the globalwindow.customElements
registry. Creating more than one registry is useful for multiple custom elements that have the same tag name to coexist. -
Scroll-driven animations:
The
animation-timeline
,scroll-timeline
, andview-timeline
CSS properties advance animations based on the user's scroll position. -
text-wrap: pretty:
The
text-wrap: pretty
CSS declaration prioritizes better layout over speed when text is broken into multiple lines. -
text-wrap-style:
The
text-wrap-style
CSS property sets how lines break in text that overflows the container. It can also be set with thetext-wrap
shorthand. - Trusted types: Trusted types allow you to lock down insecure parts of the DOM API and prevent client-side cross-site scripting (XSS) attacks.
-
Web authentication signal methods:
The
signalUnknownCredential()
,signalAllAcceptedCredentials()
, andsignalCurrentUserDetails()
methods ofPublicKeyCredential
inform authenticators of the state of public key credentials, so that incorrect or revoked credentials may be updated, removed, or hidden. - WebCodecs: The WebCodecs API provides low-level access to individual video frames and chunks of audio samples, for full control over the way media is processed.
-
WebGPU:
The
navigator.gpu
API performs operations such as rendering and computation on dedicated graphics hardware (also known as a Graphics Processing Unit).
New in Safari on iOS
The following features are now available in Safari on iOS:
- Anchor positioning: 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.
-
contrast-color():
The
contrast-color()
CSS function picks a color that has guaranteed contrast against a specified foreground or background color. -
Scoped custom element registries:
The
CustomElementRegistry()
constructor creates a new custom element registry that's separate from the globalwindow.customElements
registry. Creating more than one registry is useful for multiple custom elements that have the same tag name to coexist. -
Scroll-driven animations:
The
animation-timeline
,scroll-timeline
, andview-timeline
CSS properties advance animations based on the user's scroll position. -
text-wrap: pretty:
The
text-wrap: pretty
CSS declaration prioritizes better layout over speed when text is broken into multiple lines. -
text-wrap-style:
The
text-wrap-style
CSS property sets how lines break in text that overflows the container. It can also be set with thetext-wrap
shorthand. - Trusted types: Trusted types allow you to lock down insecure parts of the DOM API and prevent client-side cross-site scripting (XSS) attacks.
-
Web authentication signal methods:
The
signalUnknownCredential()
,signalAllAcceptedCredentials()
, andsignalCurrentUserDetails()
methods ofPublicKeyCredential
inform authenticators of the state of public key credentials, so that incorrect or revoked credentials may be updated, removed, or hidden. - WebCodecs: The WebCodecs API provides low-level access to individual video frames and chunks of audio samples, for full control over the way media is processed.
-
WebGPU:
The
navigator.gpu
API performs operations such as rendering and computation on dedicated graphics hardware (also known as a Graphics Processing Unit).