發布日期:2025 年 8 月 6 日
除非另有說明,否則下列變更適用於 Android、ChromeOS、Linux、macOS 和 Windows 的最新 Chrome Beta 版。如要進一步瞭解這裡列出的功能,請點選提供的連結,或前往 ChromeStatus.com 查看清單。Chrome 140 版於 2025 年 8 月 6 日推出 Beta 版。如要下載最新版 Chrome,請前往官方 Chrome 網站 (適用於電腦) 或 Android 上的 Google Play 商店。
CSS 和 UI
CSS 型別算術
使用型別算術,您可以在 CSS 中編寫運算式,例如 calc(10em / 1px) 或 calc(20% / 0.5em * 1px)。舉例來說,這在排版方面很有用,因為您可以將輸入的值轉換為未輸入的值,並重複用於接受數字的屬性。另一個用途是將無單位的值乘以其他型別。例如,您可以將像素轉換為角度。
scroll-target-group 屬性
scroll-target-group 屬性會指定元素是否為捲動標記群組容器。此項目接受下列其中一個值:
- 「none」:元素不會建立捲動標記群組容器。
- 「auto」:元素會建立捲動標記群組容器,形成捲動標記群組,其中包含所有捲動標記元素,而這是最接近的祖先捲動標記群組容器。
建立捲動標記群組容器後,容器內任何含有片段 ID 的錨點 HTML 元素,都會成為 ::scroll-marker 虛擬元素的 HTML 等效項目。您可以使用 :target-current 虛擬類別,為目前在檢視畫面中的捲動目標錨點元素設定樣式。
在 content 屬性的替代文字中啟用 counter() 和 counters()
這項功能可讓您在 content 屬性的替代文字中使用 counter() 和 counters()。提供更有意義的資訊,提升無障礙功能。
檢視轉場效果虛擬元素會繼承更多動畫屬性
檢視區塊轉換虛擬樹狀結構現在會繼承多項動畫屬性:
animation-delayanimation-timing-functionanimation-iteration-countanimation-directionanimation-play-state
啟用巢狀檢視區塊轉換
這項功能可讓檢視區塊轉場效果產生巢狀虛擬元素樹狀結構,而非平面結構。這樣一來,檢視區塊轉場效果就會更符合原始元素和視覺意圖。可啟用剪輯、巢狀 3D 轉換,並正確套用不透明度、遮罩和濾鏡等效果。
從根層級傳播可視區域 overscroll-behavior
這項變更會從根目錄 (而非主體) 傳播 overscroll-behavior。CSS 工作群組決定不將屬性從 <body> 傳播至檢視區塊。可視區域的屬性會從根層級 (<html>) 元素傳播。因此,overscroll-behavior 應從根元素傳播。不過,Chrome 長期以來都有一個問題:它會從 <body> 而非根目錄傳播 overscroll-behavior。這項行為無法與其他瀏覽器互通。這項變更可讓 Chrome 遵守規格,並與其他實作項目互通。
ScrollIntoView 容器選項
開發人員可使用 ScrollIntoViewOptions 容器選項執行 scrollIntoView 作業,只捲動最接近的祖先捲動容器。舉例來說,下列程式碼片段只會捲動 target 的捲動容器,將 target 帶入檢視區塊,但不會將所有捲動容器捲動至檢視區塊:
target.scrollIntoView({container: 'nearest'});
新增 CSS caret-animation 屬性
Chromium 支援 caret-color 屬性的動畫效果。不過,如果加上動畫效果,插入號的預設閃爍行為會干擾動畫。
CSS caret-animation 屬性有兩個可能的值:auto 和 manual。
auto 代表瀏覽器預設值 (閃爍),manual 則代表開發人員控制插入點動畫。此外,如果使用者對閃爍或閃動的視覺效果感到不適或有不良反應,可以透過使用者樣式表停用閃爍效果。
highlightsFromPoint API
開發人員可透過 highlightsFromPoint API 與自訂精選片段互動。這項功能會偵測文件特定位置的醒目顯示內容。如果網頁功能複雜,多個醒目顯示區域可能會重疊或位於陰影 DOM 中,這時互動功能就非常實用。這項 API 提供精確的點式重點偵測功能,可協助開發人員更有效地管理動態互動和自訂重點。舉例來說,開發人員可以回應使用者在醒目顯示區域的點擊或懸停事件,觸發自訂工具提示、內容選單或其他互動式功能。
變更檢視區塊轉換完成的 Promise 時間
目前完成的 Promise 時間發生在算繪生命週期的步驟中。也就是說,因 promise 解析而執行的程式碼,會在移除檢視區塊轉場的視覺影格產生後執行。如果指令碼會移動樣式來保留視覺上相似的狀態,這可能會導致動畫結尾閃爍。這項變更會將 ViewTransition 清理步驟移至生命週期完成後非同步執行,藉此解決問題。
新增 ToggleEvent 來源屬性
ToggleEvent 的 source 屬性包含觸發 ToggleEvent 觸發的元素 (如適用)。舉例來說,如果使用者點選 popovertarget 或 commandfor 屬性設為開啟快顯視窗的 <button> 元素,快顯視窗上觸發的 ToggleEvent 來源屬性會設為叫用 <button>。
防止 SVG foreignObject 汙染 Blob 網址的畫布
所有瀏覽器長期以來都支援在 HTML Canvas drawImage 作業中使用 <img> 元素搭配 SVG 來源。不過,各平台上的畫布汙損行為有所不同。當 SVG 來源包含 foreignObject 標記,且以 HTTP URI 參照時,所有瀏覽器都會汙染畫布。透過資料 URI 參照相同 SVG 時,所有瀏覽器都不會汙染畫布。不過,使用 Blob URI 時,Chromium (在此變更前) 和 WebKit 都會汙染畫布,但 Gecko 不會。這項功能推出後,Chromium 的行為會與 Gecko 相同,因此可在 canvas drawImage 呼叫中使用更多 SVG 內容,且不會遭到汙染。
在 @font-face rule 中支援 font-variation-settings 描述元
開發人員可以使用個別元素的 font-variation-settings 屬性,透過 CSS 調整字體的粗細、寬度、傾斜度和其他軸。不過,以 Chromium 為基礎的瀏覽器不支援 @font-face 宣告中的這項屬性。這項功能支援 CSS 字型第 4 級中定義的 font-variation-settings 字串語法。根據規格,系統會忽略無效或無法辨識的功能標記。系統不支援二進位或非標準表單。變數字型越來越常被採用,不僅能提升效能,還能提供排版彈性。在 Chromium 中新增對這個描述元的支援,可加強控制、減少重複,並支援更具擴充性的現代網頁排版方法。
網站 API
將 Uint8Array 轉換為 base64 和十六進位,以及從 base64 和十六進位轉換為 Uint8Array
Base64 是將任意二進位資料表示為 ASCII 的常見方式。JavaScript 具有二進位資料的 Uint8Arrays。不過,這個函式庫缺少內建機制,無法將資料編碼為 base64,也無法接收 base64 資料並產生對應的 Uint8Array。這項功能新增了在十六進位字串和 Uint8Arrays 之間轉換的功能和方法。
使用 ReadableStreamBYOBReader min 選項
這項功能會在現有的 ReadableStreamBYOBReader.read(view) 方法中加入 min 選項。這個方法已接受 ArrayBufferView,可從中讀取資料,但目前無法保證讀取作業解決前寫入的元素數量。指定 min 值後,系統會要求串流等待至少這麼多元素可用,才會解決讀取問題。這項改善措施可解決目前的問題,也就是讀取作業可能會解析的元素數量少於檢視畫面可容納的元素數量。
HTTP Cookie 前置字元
在某些情況下,伺服器端必須區分伺服器設定的 Cookie 和用戶端設定的 Cookie。其中一個案例是伺服器通常一律會設定的 Cookie。不過,非預期的程式碼 (例如 XSS 攻擊、惡意擴充功能或來自混淆開發人員的提交) 可能會在用戶端設定這些 Cookie。這項提案新增了信號,可供伺服器做出這類區別。具體來說,它會定義 __Http 和 __HostHttp 前置字元,確保系統不會使用指令碼在用戶端設定 Cookie。
區域網路存取權限制
Chrome 140 會限制向使用者本機網路提出要求的權限, 並要求顯示權限提示。區域網路要求是指公用網站向本機 IP 位址或回送發出的要求,或是內部網路等本機網站向回送發出的要求。網站必須取得權限才能執行這些要求,可降低針對區域網路裝置 (例如路由器) 發動跨網站要求偽造攻擊的風險。此外,這項功能也會降低網站使用這些要求來建立使用者區域網路指紋的能力。這項權限僅限於安全內容。如果獲得授權,系統也會放寬區域網路要求的複合型內容封鎖限制,因為許多區域網路裝置基於各種原因,無法取得公開信任的 TLS 憑證。
詳情請參閱「投放內容時所需的區域網路存取權」。
允許 SharedWorker 指令碼繼承 blob 指令碼網址的控制器
規格指出,worker 應繼承 blob 網址的控制器。不過,現有程式碼只允許專屬 worker 繼承控制器,共用 worker 則不會。這項修正可讓 Chrome 的行為符合規格。這項功能由 SharedWorkerBlobURLFixEnabled 企業政策控管。
新增「ServiceWorkerStaticRouterTimingInfo」
這項功能會新增 ServiceWorker 靜態轉送 API 的時間資訊,並在導覽時間 API 和資源時間 API 中公開,供開發人員使用。ServiceWorker 會提供時間資訊,標記特定時間點。
這項功能會新增兩項與 Static 路由 API 相關的計時資訊:
RouterEvaluationStart:開始將要求與已註冊的路由器規則比對的時間。CacheLookupStart:如果來源是"cache",開始查閱快取儲存空間的時間。
此外,這項功能還會新增兩項路由器來源資訊:相符的路由器來源和最終路由器來源。
在 Android 上啟用網路驗證條件式建立功能 (未發布)
隔離網頁應用程式
介紹 Controlled Frame API
這項功能會新增 Controlled Frame API,僅適用於隔離網頁應用程式 (IWA)。與其他平台上的同名 API 類似,Controlled Frame 可嵌入所有內容,包括無法嵌入 <iframe> 的第三方內容。此外,您也可以透過一系列 API 方法和事件,控制嵌入的內容。如要進一步瞭解隔離的網頁應用程式,請參閱「隔離的網頁應用程式說明」。
新的來源試用
在 Chrome 140 中,您可以選擇加入下列新的原始碼試用計畫。
新增「clipboardchange」活動
每當網頁應用程式或任何其他系統應用程式變更系統剪貼簿內容時,就會觸發 clipboardchange 事件。這樣一來,遠端桌面用戶端等網頁應用程式就能與系統剪貼簿保持同步。這項 API 可有效取代 JavaScript 輪詢剪貼簿變更的作業。
啟用來電通知
這項功能擴充了 Notifications API,讓已安裝的 PWA 可以傳送來電通知,也就是包含通話樣式按鈕和鈴聲的通知。這項擴充功能可讓使用者更輕鬆地辨識及接聽通話通知,協助 VoIP 網頁應用程式打造更吸引人的體驗。此外,如果應用程式同時有原生和網頁實作,這項功能有助於彌合兩者之間的差距。
介紹當機報告鍵值 API
這項功能會推出暫時稱為 window.crashReport 的全新鍵/值 API,並以每個文件的對應項為後盾,保存附加至當機報告的資料。
如果網站發生任何轉譯器程序當機情形,系統會將這個 API 後端對應項中的資料傳送至 CrashReportBody。開發人員可藉此偵錯應用程式中可能導致特定當機問題的狀態。
淘汰與移除
這個版本的 Chrome 會淘汰及移除下列項目。 如要查看計畫淘汰、目前淘汰和先前移除的項目清單,請前往 ChromeStatus.com。
這個版本的 Chrome 會淘汰一項功能。
針對部分元素內的 <h1>,不再支援特殊字型大小規則
HTML 規格包含 <h1> 標記的特殊規則清單,這些標記會巢狀內嵌在 <article>、<aside>、<nav> 或 <section> 元素中。
這些特殊規則會導致無障礙問題,因此已淘汰。
也就是說,這類元素會以視覺方式縮小巢狀 <h1> 的字型大小,使其看起來像 <h2>,但無障礙樹狀結構不會反映這項視覺變化。