Discover some of the interesting features that have landed in stable and beta web browsers during May 2025.
Published: May 29, 2025
Stable browser releases
In May 2025 Firefox 139, Chrome 137, and Safari 18.5 became stable. This post looks at the new features added to the web platform with these releases.
Temporal API
Firefox 139 is the first browser to support the Temporal API. This simplifies working with dates and times in various scenarios, with built-in time zone and calendar representations.
hidden=until-found
and the beforematch
event
Firefox 139 also includes the hidden="until-found"
HTML attribute and the beforematch
event. The until-found
state lets you hide the contents of an element until it is found by user search (for example, using "Find in page") or by fragment navigation. The beforematch
event fires just before the hidden
attribute is removed
The requestClose()
method
Now Baseline Newly available with the Firefox 139 release is the requestClose()
method of the HTMLDialogElement
interface.
This method differs from the HTMLDialogElement.close()
method in that it fires a cancel
event before firing the close
event.
CSS reading-flow
and reading-order
Chrome 137 ships reading-flow
and reading-order
.
The reading-flow
CSS property controls the order that elements in a flex, grid,
or block layout are exposed to accessibility tools and how they get focused
using linear sequential navigation methods.
This solves a longstanding problem with grid and flex layouts,
where the tab order can become disconnected to the order that the items are laid out.
The reading-order
CSS property lets you manually override the order of items
within a reading flow container. To use this property inside a grid, flex,
or block container, set the reading-flow
value on the container to
source-order
and set the individual item's reading-order
to an integer value.
Browser Support
To learn more read Use CSS reading-flow for logical sequential focus navigation.
CSS if()
function
Also in Chrome 137, the CSS if()
function provides a concise way to express conditional values.
It accepts a series of condition-value pairs, delimited by semicolons.
The function evaluates each condition sequentially and returns the value associated with the first true condition.
If none of the conditions evaluate to true, the function returns an empty token stream.
Document-Isolation-Policy
Shipping in Chrome 137, Document-Isolation-Policy
lets a document enable crossOriginIsolation
for
itself, without having to deploy COOP or COEP, and regardless of the
crossOriginIsolation
status of the page. The policy is backed by process
isolation. Additionally, the document non-CORS cross-origin subresources will
either be loaded without credentials or will need to have a CORP header.
Declarative Web Push
Safari 18.5 was mostly a bug fix release, however it does add Declarative Web Push to macOS, a feature that is currently only available in Safari. Learn more about it in Meet Declarative Web Push on the WebKit blog.
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 140 and Chrome 138.
Firefox 140 includes a subset of the Cookie Store API, a modern, asynchronous, Promise-based method of managing cookies, which can be used in both the main thread and in service workers.
Chrome 138 includes a number of built-in AI APIs—the Summarizer API, Language Detector API, and Translator API.
Also in Chrome 138 there's a number of CSS features including the stretch
sizing keyword,
and sibling-index()
and sibling-count()
functions.