Browser releases

Safari 27.0 ships: the select, the scroll, the model

Safari 27.0 ships: the select, the scroll, the model

I opened the release post expecting the beta list plus a few tidy-ups and ended up scrolling for a while. Per WebKit, Safari 27.0 shipped on 2026-09-18 across iOS, iPadOS, macOS and visionOS, with the feature count rising from 58 in the June beta to 83. WebKit puts it this way: their release notes "have never been as long as they are for this version." That is the honest short version. Here is what actually lands in a stylesheet or a page today.

The count went up, but the quality push is the story

WebKit frames the release around fixing existing behaviour rather than piling on more. Per the post, most of the release breaks down as resolved issues (86%), improved features (11%), brand new features (2%), and a sliver of deprecations. So most of what changed is what already existed getting steadier: fewer bug reports rather than more surface area.

A form control you can actually restyle

Customizable <select> is the item most likely to show up in a design review. WebKit describes it as the real <select> element turned into something you can fully restyle, now shipping with new UA default styles. You opt in with CSS appearance:

select {
  appearance: base-select;
}

From there the post calls out two new pseudo-elements, ::picker-icon and ::checkmark, plus a <selectedcontent> element that adjusts what the closed control shows. HTML can also go inside <option> tags. The semantics stay native; the styling surface opens up.

Scroll anchoring, at the property level

The second one I am glad to see land: scroll anchoring. Per WebKit it is controlled by the overflow-anchor CSS property, which defaults to auto. The behaviour is the classic fix for "an ad loaded above me and now I am reading a different paragraph." It has been a script-and-hope pattern for years. Now it is the default.

The model element steps off visionOS

The <model> element has been a visionOS-only affair. In 27.0, per WebKit, it also ships on iOS, iPadOS and macOS. Basic use is as simple as any media element:

<model src="mallet.usdz"></model>

On visionOS the same release also lets a page provide a custom immersive environment through a JavaScript call, in the shape of the Fullscreen API. This is the piece to keep at arm's length until you actually have a spatial use case, but the point is that the element is no longer tied to one platform.

The Safari MCP piece

WebKit also introduces Safari MCP, a Model Context Protocol server that lets a coding agent drive the browser locally. The post is explicit that it "runs entirely on your local machine" and "makes no network calls of its own." That framing matters more than the feature description itself: it is a developer-workflow tool that lives inside Safari, not a network service you sign up for. Whether you use it is a separate question from the platform features above.

What I am watching next

The honest caveat: the WebKit post is a single engine's release, so I am not going to claim Baseline for any of appearance: base-select, overflow-anchor, or <model>. Before shipping any of these to a broad audience, check what the other engines have today. What I am following: how appearance: base-select and its picker pseudo-elements settle across engines — that is the release-day moment where customizable <select> stops being a Safari story and becomes a shipping default.

Source: WebKit Blog (webkit.org)

Related
Browser releases

Safari Technology Preview 252 adds @supports named-feature(), unprefixed user-select and two accessible-name fixes

WebKit's 11 September preview adds a named-feature() function to @supports, exposes CSSConditionRule.supports and CSSMediaRule.matches on the CSSOM, ships the unprefixed user-select property, allows percentage values in text-decoration-inset, and cleans up two accessible-name bugs around display: contents and list markers.

September 12, 2026
Browser releases

Safari 27 rewrites the module loader to fix top-level await

WebKit engineer Kai Tamkun explains that Safari 27 replaces the old self-hosted JavaScript module loader with a C++ translation of the ECMAScript spec, closing an ordering bug that could make dynamic imports of a top-level-awaiting module finish out of sequence.

September 11, 2026
Browser releases

Safari Technology Preview 251 lands @supports at-rule(), random() with caching, corner-shape and object-view-box

WebKit's 26 August preview adds an at-rule test to @supports, property-scoped caching on random(), the random-item(), ident() and inherit() functions, the corner-shape and object-view-box properties, comma-separated @container conditions, white-space-trim in the white-space shorthand, and HighlightRegistry.highlightsFromPoint().

September 7, 2026