Chrome 147 Beta 版

發布日期:2026 年 3 月 11 日

除非另有說明,否則下列變更適用於 Android、ChromeOS、Linux、macOS 和 Windows 的最新 Chrome Beta 版。如要進一步瞭解這些功能,請點選提供的連結或前往 ChromeStatus.com。您可以從 Google.com 下載最新版電腦 Beta 版,或從 Android 上的 Google Play 商店下載。

時間軸已命名範圍 scroll

這項功能會擴充 ViewTimelines 的已命名範圍集,並新增 scroll 範圍。

捲動驅動動畫 API 導入了 ViewTimelines,以及參照 ViewTimeline 部分內容的具名範圍,這些範圍會定義動畫的範圍。

不過,所有提供的具名範圍都僅限於ViewTimeline中可見主體的部分。這對作者來說很有用,可參考時間軸底下的完整捲動容器。這項功能會將 scroll 的具名範圍新增至現有集合 (entryexitcovercontain)。

CSS contrast-color()

您可以使用這項函式,滿足無障礙功能的對比度規定。

您可以在 CSS 中任何需要顏色值的地方使用 contrast-color() 函式。這個函式會採用顏色值引數,並根據哪個顏色與顏色引數的對比度最高,傳回 blackwhite

CSS border-shape

CSS border-shape 可讓您建立任意形狀的非矩形邊框 (例如 polygoncircleshape())。

雖然 border-shape 接受的形狀與 clip-path 相同,但兩者在本質上有所不同:border-shape 會定義邊框的形狀、裝飾邊框,並只剪裁內部。

border-shape 有兩種變體:一種是描邊形狀,另一種是填滿兩個形狀之間的區域。

元素範圍檢視區塊轉場效果

在任意 HTML 元素上公開 Element.startViewTransition()。這個元素會建立轉換的範圍,也就是說,轉換虛擬元素會受到祖先剪輯片段和轉換的影響,且不同元素上的多個轉換可以同時執行。

CSS 更新:widthstyle 屬性解除連結

Chrome 會根據更新後的 CSS 規格,調整 border-widthoutline-widthcolumn-rule-width 屬性的行為。先前,如果對應的 border-styleoutline-stylecolumn-rule-style 設為 nonehidden,無論指定的值為何,這些屬性的計算寬度都會強制設為 0px

這項變更後,border-widthoutline-widthcolumn-rule-width 的計算值一律會反映作者指定的值,與 *-style 屬性無關。此外,outline-widthcolumn-rule-width 的解析值 (由 getComputedStyle() 傳回) 也會反映指定值。

這項異動可讓 Chrome 與 Firefox 和 WebKit 保持一致,因為後兩者已實作這項行為。

CSSPseudoElement 介面

CSSPseudoElement 介面代表 JavaScript 中的虛擬元素。

CSSPseudoElement 是從 Element.pseudo(type) 傳回,其中 type 為:::after::before::markerCSSPseudoElement 是代表虛擬元素的 Proxy 物件,因此與虛擬元素不同,CSSPseudoElement 一律存在。

CSSPseudoElement 具有下列屬性/方法:

  • type 屬性是代表虛擬元素類型的字串。
  • element 屬性是虛擬元素的最終來源元素。
  • parent 屬性是虛擬元素的原始元素 (可以是元素,也可以是巢狀虛擬元素的 CSSPseudoElement)。
  • pseudo(type) 方法,用於擷取巢狀虛擬元素。

事件的虛擬目標

特定事件會擴充為具有 .pseudoTarget,該 .pseudoTargetCSSPseudoElement (如果互動是與虛擬元素進行) 或 null

這項資訊可提供更具體的事件來源資訊,例如不只是點選最終來源元素 (Event.target),而是點選 ::after。請注意,Event.target 維持不變,因此事件只會提供有關虛擬元素互動的額外資訊。

這些事件包括 UIEventAnimationEventTransitionEvent

系統不支援 mouseovermouseoutmouseentermouseleave 和對應的 pointer*

WebXR 平面偵測

網站可透過 WebXR Plane Detection API,擷取使用者環境中偵測到的平面集合。與使用 WebXR 深度感應功能相比,這項技術不僅能減少開發人員的工作量,還能提供更強大的功能,因為即使系統知道牆壁的界線,仍可完整呈現牆壁等物體遮蔽的平面。深度地圖會顯示牆壁,但牆壁前方的物體會中斷顯示,可能遮蔽牆壁的完整範圍。此外,如果裝置知道這類標籤,且標籤符合預先定義的類別,裝置就會提供語意標籤資訊,進一步瞭解世界。

WebXR 圖層

WebXR Layers 提供更有效率的沉浸式內容繪製方式。

除了支援原生色彩和深度紋理,以及紋理陣列,還支援由系統合成器 (而非 JavaScript) 管理的不同圖層類型。

在非 XSLT 情境中,使用 Rust 剖析 XML

We are shipping the Rust XML parser for scenarios in which we are certain that no XSLT processing is required.

Rust XML 剖析器可消除 XML 剖析中的記憶體損毀錯誤,進而提升安全性,並取代我們使用的 libxml2 (以 C 語言編寫),成為安全替代方案。

Chrome 即將淘汰 XSLT。在繼續進行這個程序的同時,您已可在不需要 XSLT 的情境中使用安全的 Rust XML 剖析:

新增對 JSON 和樣式模組類型的支援,做為 <link rel="modulepreload"> 目的地。Chromium 已支援 <link rel="modulepreload"> (請參閱 https://chromestatus.com/feature/5762805915451392),但僅支援預先載入類似指令碼的模組指令碼。這項功能可解決功能上的缺口,因為 Chromium 在其他地方支援 JSON 和 CSS 模組指令碼,但不支援做為 <link rel="modulepreload"> 目的地。Style 模組可預先載入 <link rel="modulepreload" as="style" href="...">,JSON 模組則可預先載入 <link rel="modulepreload" as="json" href="...">

Math.sumPrecise

這項 TC39 提案旨在為 JavaScript 新增方法,以加總多個值。

新增可疊代的 Math.sumPrecise 方法,該方法會使用比簡單加總更精確的演算法,傳回可疊代值中的總和。

支援 SVG <textpath> 元素上的 path 屬性

這項變更會在 SVG <textPath> 元素中新增 path 屬性,讓作者使用 SVG 路徑資料內嵌定義文字路徑幾何,並減少對個別定義 <path> 元素的需求。

<textPath> 會使用下列規則解析文字路徑幾何:

  1. 如果同時存在 pathhref,系統會從 path 屬性解析幾何。
  2. 如果只有 path 屬性存在且成功剖析,系統會使用內嵌路徑定義。
  3. 如果缺少 path 屬性或無法剖析,且提供 href 屬性,系統會使用參照的 <path> 元素做為備用。
  4. 現有的僅限 href 行為將維持不變。

這項實作作業遵循 SVG 2 規格中對 <textPath>path 屬性的定義,解析度行為也與其他瀏覽器引擎一致,可提升互通性和標準相容性。

取得安全付款確認功能

在 Payment Request 中新增靜態方法,讓網頁開發人員取得瀏覽器實作安全付款確認的相關功能。

這有助於網頁開發人員瞭解安全付款確認功能有哪些可用功能,進而決定是否要搭配使用這些功能。

更新 Device Memory API 限制

更新 Device Memory API 的一組可能值:

  • Android:1、2、4、8
  • 其他:2、4、8、16、32。

取代已過時的舊值 0.25、0.5、1、2、4、8。

由於裝置功能自設定這些值以來已有所提升,因此可降低低階裝置的指紋辨識風險。

Service Worker 的區域網路存取權限制 WindowClient.navigate()

最近新增的區域網路存取權 (LNA) 限制,可禁止網站單方面向區域網路和本機裝置發出要求。這是為 Service Worker 啟動的擷取要求新增的項目,但未套用至 Service Worker 透過 WindowClient.navigate 執行的導覽作業。

本次發布內容新增了 WindowClient.navigate() 呼叫的 LNA 限制,並使用 WindowClient 做為導覽的發起者,判斷導覽是否為 LNA 要求,藉此解決這個問題。

只有在導覽的 WindowClient 是子框架時,Chrome 才會強制執行任何 LNA 限制,不會對主框架導覽強制執行任何限制。

WebSocket 的區域網路存取權限制

區域網路存取權 (LNA) 限制將擴大,納入 WebSocket。現在,連線至本機位址的 WebSocket 會觸發權限提示。

所有 LNA 企業政策仍適用於 LNA WebSocket 限制,包括 LocalNetworkAccessAllowedForUrlsLocalNetworkAccessBlockedForUrlsLocalNetworkAccessRestrictionsTemporaryOptOut

如要進一步瞭解 LNA,請參閱「區域網路存取權」。

WebTransport 的區域網路存取權限制

限制使用者透過 WebTransport 向本機網路發出要求的功能,並在權限提示後設下閘道。

區域網路要求是指從公開網站傳送至本機 IP 位址或迴路的要求,或是從本機網站 (例如內部網路) 傳送至迴路的要求。網站必須取得授權才能執行這些要求,可減少網站利用這些要求對使用者區域網路進行指紋辨識的機會。

這項權限僅限於安全環境。

僅限 IWA:Web Printing API

這個 API 可讓您在隔離網頁應用程式 (IWA) 中,更深入整合與印表機相關的功能。

Web Printing API 提供一組 JavaScript 方法,可讓開發人員查詢本機印表機、將列印工作提交至最合適的印表機,以及管理列印工作選項和狀態。為呈現這些概念,它會依據網際網路列印通訊協定 (IPP) 規格的屬性名稱和語意。

新的來源試用

在 Chrome 147 中,您可以選擇加入下列新的原始碼試用計畫

容器時間

Container Timing API 可讓您監控 DOM 的註解區段何時顯示在畫面上,以及何時完成初始繪製。開發人員可以使用 containertiming 屬性標記 DOM 的子區段 (類似於 Element Timing API 的 elementtiming),並在該區段首次繪製時收到效能項目。開發人員可透過這項 API 測量網頁中各種元件的時間。

自動填入事件

自動填入是網頁的重要功能,每天可減少數百萬名使用者的不便。但要讓自動填入功能在多個實作項目中,穩定地填寫動態表單,可能相當複雜。

這項功能新增了 autofill 事件,會在瀏覽器即將自動填入表單欄位時觸發,讓開發人員修改表單以符合自動填入的資料,並讓瀏覽器知道他們何時完成這項操作。

網頁應用程式 HTML 安裝元素

網站可透過這個元素,以宣告方式提示使用者安裝網頁應用程式。這個元素可選擇性接受兩個屬性,允許安裝來自不同來源的內容。

連線允許清單

連線允許清單功能可明確控管外部端點,限制從文件或 Worker 使用 Fetch API 或其他網頁平台 API 啟動的連線。

建議的實作方式是透過 HTTP 回應標頭,從伺服器發布授權端點清單。使用者代理程式代表網頁建立任何連線前,會先根據這份允許清單評估目的地;系統會允許連線至已驗證的端點,但如果連線無法與清單中的項目相符,就會遭到封鎖。

淘汰和移除

這個版本的 Chrome 導入了下列淘汰和移除項目。 如要查看計畫淘汰、目前淘汰和先前移除的項目清單,請前往 ChromeStatus.com。

這個版本的 Chrome 會淘汰 X 功能。

移除用於產生 SVG 的內嵌 XSLT

我們即將逐步淘汰用於產生 SVG 的內嵌 XSLT。這項功能會與以 Rust 為基礎的 XML 剖析器實驗測試同步部署,且不會立即在標示的發布版本中全面部署。

精心製作的 XML 檔案可能包含 XSL 樣式表,可將一般 XML 資料轉換為 SVG 檔案。

例如: https://gist.github.com/drott/1fc70b3c7f0ac314d1fe2e5beecc5490?short_path=1c60adf

這是 XSLT 處理的特殊情況,根據使用情況的測量結果,Chrome 認為這類處理方式在網路上幾乎不存在。Chrome 計劃在全面淘汰 XSLT 前,先淘汰並移除這項 XSLT 用法。