Discover some of the interesting features that have landed in stable and beta
web browsers during April 2025.
Published: April 30, 2025
Stable browser releases
In April 2025 Firefox 137,
Firefox 138,
Chrome 135, and
Chrome 136 became stable.
This post looks at the new features added to the web platform
during a month that saw two releases from Chrome and Firefox.
Carousels land in Chrome
Several of the features that made their way into Chrome in version 135 enable the
creation of carousels and other paged experiences on the web.
The ::scroll-button()
and ::scroll-marker()
pseudo-elements let you add
buttons and markers to any scrollable area on your site, giving it navigation
controls and a way to show the user where they are as they progress through the
carousel.
The ::column
pseudo-element that lets you style a column fragment.
The interactivity
property specifies whether an element and its flat tree
descendants (including text runs) are inert or not.
Making an element inert affects whether it can be focused, edited, selected,
and searchable by find-in-page.
It also affects whether it is visible in the accessibility tree.
You can learn more in Carousels with CSS.
The command
and commandfor
attributes
Also in Chrome 135 are the command
and commandfor
attributes. These
enhance and replace the popovertargetaction
and popovertarget
attributes.
These new attributes can be added to buttons,
letting the browser address some core issues around simplicity and
accessibility, and provide built-in common functionality.
Find out more in
Introducing command
and commandfor
.
The CSS shape()
function
The shape()
CSS function in Chrome 135 is used to define a shape for the clip-path
and
offset-path
properties. Learn how to use it for
responsive clipping.
This function was shipped in Safari 18.4 and is also in Firefox Nightly,
hopefully it will be Baseline Newly available very soon.
Atomics.pause()
Firefox 137 includes
Atomics.pause()
making this feature Baseline Newly
available. This static method provides a micro-wait primitive that hints to the
CPU that the caller is spinning while waiting on access to a shared resource.
This lets the system reduce the resources allocated to the core (such as power)
or thread, without yielding the current thread.
CSS hyphenate-limit-chars
Firefox 137 also includes the CSS
hyphenate-limit-chars
property. This
property specifies a minimum word length to allow hyphenation of words,
and a minimum number of characters before and after the hyphen.
RegExp.escape
The RegExp.escape
static method has landed across all browsers within a few
months, and becomes Baseline Newly available as it lands in Chrome 136.
This method escapes any potential regular expression syntax characters in a
string, returning a new string that can be safely used as a literal pattern
for the RegExp()
constructor.
Error.isError()
The
Error.isError()
static method determines whether the passed value is an Error.
It’s included in Firefox 138.
While it does have browser support in all browsers, it’s not quite yet
considered Baseline Newly available as Safari currently returns false
for
DOMException
instances.
The Login Status API for FedCM
Firefox 138 supports the Login Status API when using the Federated Credential
Management (FedCM) API.
This is used to set and check whether a browser user is logged in to an identity provider.
Firefox 138 includes support for the NavigatorLogin
interface, the
navigator.login
property, and the Set-Login
HTTP response header.
Importmap integrity
In Firefox 138 the importmap
value of the type
attribute of the <script>
element now supports the integrity
key.
This allows the ES module URLs referenced in the import maps to be matched against their integrity metadata.
This feature is now Baseline Newly available.
Beta browser releases
Beta browser versions give you a preview of things that will be in the next
stable version of the browser. It’s a great time to test new features, or
removals, that could impact your site before the world gets that release. New
betas are
Firefox 139
and Safari 18.5.
The Safari 18.5 beta so far includes just a few bug fixes after their large
18.4 release.
As of the time of writing Firefox haven’t published their release notes,
however the beta seems to include shipping of the
Temporal API,
making Firefox
the first browser to ship this improved version of Date.
Also implementation of <dialog>
request.close()
,
which will bring this method to Baseline Newly available.