Apple Developer onepage/ WWDC26
#WWDC26#WebKit#Safari27#WebDev2026-06-08 · 16:32

Safari 27 的重點:WebKit 先補品質,再推新能力

Jen Simmons 在這場 session 裡先談 WebKit 一年來超過 1,000 項 browser engine 改善,再快速帶過 CSS Grid Lanes、Customizable Select、HTML Model、visionOS immersive websites、Safari Web Extensions 與 MapKit JS。

// 一句話結論

這不是一場「Safari 多了哪些閃亮 API」的清單,而是 Apple 在說:Safari 27 的開發者價值,第一層是少踩相容性坑,第二層才是用新 web primitives 做更像 app 的體驗。

Apple Developer · WWDC26 · Video ID: 7Hg1fCrm4yMYouTube 原始影片
Content map

把影片拆成兩條主線:可靠性與新 primitives

Quality

WebKit 今年刻意先還技術債

Apple 強調 compatibility、foundation rebuild、specific area fixes、standards alignment 與 integration。重點是讓既有網站少需要 Safari workaround。

Layout

CSS Grid Lanes 把 masonry 帶回 CSS

Grid Lanes 可用純 CSS 處理 classic masonry layout,並保留 Grid 的排序、響應式與 accessibility 優勢,減少用 JavaScript 算版面的需求。

Controls

Customizable Select 讓原生表單控制更可設計

透過 appearance: base-select、picker pseudo-element 與可放入 select 的額外 HTML,開發者能保留原生控制的 accessibility,同時做出更符合品牌的 UI。

Spatial web

HTML Model 與 immersive environment 讓 3D 更接近 web primitive

<model> 在 Safari 27 進一步連到 visionOS immersive website environment,讓網站可以提供產品、座位、遊戲或空間內容的沉浸式預覽。

Decision map

開發者現在該怎麼評估 Safari 27 相關導入

1

先用 Safari Technology Preview / Beta 跑現有專案

這場 session 最重要的行動不是立刻加新 API,而是驗證既有 workaround 是否還需要,並把仍存在的問題回報到 WebKit / Feedback Assistant。

2

把 layout polyfill 與 JS masonry 列入汰換清單

CSS Grid Lanes 適合先在 progressive enhancement 情境試用。保留 fallback,但開始評估把版面計算還給 CSS。

3

重新設計 select,而不是重做 fake select

Customizable Select 的價值是保留 real HTML form control。若現有專案有自製 dropdown,應測鍵盤、螢幕閱讀器、表單提交與手機 picker 行為。

4

用 <model> 做商品與空間預覽的分層體驗

在一般平台提供 3D model 檢視,在 iOS / iPadOS 用 AR,在 visionOS 27 再提升到 immersive environment;不要把沉浸式體驗當成唯一入口。

5

Web Extensions 可以重新檢查發佈管線

Safari Web Extension packager 讓非 Mac / 非 Xcode 流程也能透過 App Store Connect package and distribute extension,適合跨瀏覽器 extension 團隊降低發布摩擦。

Developer takeaways

品質改善本身就是 Safari 27 的 feature

影片花很大篇幅說明 WebKit 團隊如何處理既有 web platform 的真實問題:例如 emoji code point 超過 16 bits 時,舊網站用 fromCharCode 會截斷成錯字;WebKit 以 workaround 讓文字直接以 text 形式到達網站。另一個例子是重寫 block-inside-inline layout 這種二十多年累積的基礎程式碼。

Apple 的訊號很明確:今年不只是加 API,而是讓 Safari 更少成為開發者要特別繞過的 browser。這對產品團隊的實際價值,是可以刪 workaround、降低 QA matrix 裡的 Safari 例外。

Standards

SVG、CSS random、anchor positioning 都在跟標準對齊

影片提到 WebKit 團隊不只修 engine,也參與標準討論,例如 SVG focal point 初始值、CSS random scoping 等,避免早期實作變成長期不相容。

Integration

新功能要能跟舊功能一起工作

例如 responsive image 的 sizes、srcset、lazy loading 與 layout 行為要互相整合。這類改善不顯眼,但會直接減少 production bug。

風險與遷移注意事項

第一,新 web primitives 應採 progressive enhancement。CSS Grid Lanes、Customizable Select、HTML Model 與 immersive environments 都不該讓非 Safari 27 或非 visionOS 使用者失去核心功能。第二,自製 select 元件若改回 native control,要完整測鍵盤操作、螢幕閱讀器、form reset / validation 與行動裝置 picker。

第三,Web Extension 發佈管線雖然更方便,但仍要處理 Manifest、App Store Connect metadata、權限說明與跨瀏覽器差異。第四,MapKit JS 與 immersive / 3D model 內容要注意隱私、效能、素材大小與 fallback,避免把展示能力變成載入負擔。

Source chapters
00:00Introduction:Safari 27 beta 與已出貨的新 web technology。
01:07A year of quality improvements:compatibility、foundation rebuild、standards alignment、integration。
09:06CSS Grid Lanes:純 CSS masonry layout。
10:06Customizable Select:保留 real select 的 accessibility 與 form behavior。
11:24HTML Model element:3D model、AR 與 web integration。
12:51Immersive Website Environments:visionOS 27 的網站沉浸式環境。
13:38Web Extensions:Safari Web Extension packager 與 App Store Connect。
15:18MapKit JS:跨瀏覽器地圖嵌入與隱私。
// TL;DR