穩定版發布日期:2025 年 2 月 4 日
除非另有說明,否則下列變更適用於 Android、ChromeOS、Linux、macOS 和 Windows 的 Chrome 133 穩定版。
HTML 和 DOM
彈出式視窗屬性的提示值
Popover API 會指定 popover 屬性的兩個值的行為:自動和手動。這項功能會說明第三個值 popover=hint
。提示通常與「工具提示」類型行為相關,但行為略有不同。主要差異在於,開啟巢狀的彈出式視窗堆疊時,提示會從屬於自動。因此,在自動彈出式視窗堆疊仍處於開啟狀態時,您可以開啟不相關的提示彈出式視窗。
標準範例是開啟 <select>
挑選器 (popover=auto
) 並顯示懸停觸發的工具提示 (popover=hint
)。這項操作不會關閉 <select>
選擇器。
追蹤錯誤 #1416284 | ChromeStatus.com 項目
改善彈出式視窗叫用器和錨定點位置
新增強制方式,可透過 popover.showPopover({source})
設定彈出式視窗之間的叫用端關聯。啟用叫用者關係,以建立隱含的錨定元素參照。
追蹤錯誤 #364669918 | ChromeStatus.com 項目
在叫用器內巢狀的彈出式視窗不應重新叫用
在下列情況下,按一下按鈕會正確啟用彈出式視窗,但在按下按鈕後,按一下彈出式視窗本身不應關閉彈出式視窗。
<button popovertarget=foo>Activate
<div popover id=foo>Clicking me shouldn't close me</div>
</button>
之前發生這種情況,是因為彈出式視窗點擊會傳送至 <button>
,並啟用叫用者,進而切換彈出式視窗關閉。這項行為現已改為預期的行為。
追蹤錯誤 #https://crbug.com/379241451 | ChromeStatus.com 項目
CSS
CSS 進階 attr()
函式
實作 CSS 5 級中指定的 attr()
增強功能,允許使用 <string>
以外的類型,並在所有 CSS 屬性中使用 (除了現有的擬元素內容支援)。
MDN attr() | 追蹤錯誤 #246571 | ChromeStatus.com 項目 | 規格
CSS :open
虛擬類別
:open
擬造類別會在 <dialog>
和 <details>
處於開啟狀態時相符,並在 <select>
和 <input>
處於有選取器且選取器顯示的模式時相符。
追蹤錯誤 #324293874 | ChromeStatus.com 項目 | 規格
CSS 捲動狀態容器查詢
使用容器查詢,根據容器的捲動狀態設定容器的子項樣式。
查詢容器可能是捲動容器,也可能是受捲動容器捲動位置影響的元素。可查詢的狀態如下:
stuck
:固定位置容器會固定在捲動方塊的其中一側邊緣。snapped
:目前已對齊捲動觸發點的容器,目前已水平或垂直對齊。scrollable
:捲動容器是否可在查詢方向中捲動。
新的 container-type: scroll-state
可讓您查詢容器。
追蹤錯誤 #40268059 | ChromeStatus.com 項目 | 規格
CSS text-box
、text-box-trim
和 text-box-edge
為確保文字內容的最佳平衡,text-box-trim
和 text-box-edge 屬性以及 text-box 簡寫屬性可讓您更精細地控制文字的垂直對齊方式。
text-box-trim
屬性會指定要裁剪的邊緣 (上方或下方),而 text-box-edge
屬性則會指定邊緣的裁剪方式。
這些屬性可讓您使用字型規格精確控制垂直間距。
追蹤錯誤 #1411581 | ChromeStatus.com 項目 | 規格
網站 API
Animation.overallProgress
無論時間軸的性質為何,都能讓開發人員方便且一致地表示動畫在疊代過程中進展的程度。如果沒有 overallProgress
屬性,您必須手動計算動畫進度,並考量動畫的迭代次數,以及動畫的 currentTime
是總時間的百分比 (例如捲動驅動動畫) 或絕對時間量 (例如時間驅動動畫)。
追蹤錯誤 #40914396 | ChromeStatus.com 項目 | 規格
Atomics
物件的 pause()
方法
將 pause()
方法新增至 Atomics
命名空間物件,向 CPU 提示目前的程式碼正在執行 spinlock。
指令碼的 CSP 雜湊值回報
複雜的網路應用程式通常需要追蹤下載的子資源,以確保安全性。
特別是,即將推出的業界標準和最佳做法 (例如 PCI-DSS 4.0) 要求網路應用程式記錄下所有下載及執行的腳本。
這項功能會建構 CSP 和 Reporting API,回報文件載入的所有指令碼資源的網址和雜湊值 (針對 CORS/相同來源)。
追蹤錯誤 #377830102 | ChromeStatus.com 項目
DOM 狀態保留搬移
新增 DOM 原始元素 (Node.prototype.moveBefore
),讓您在 DOM 樹狀結構中移動元素,而無須重設元素的狀態。
移動而非移除和插入時,系統會保留下列狀態:
<iframe>
元素仍會載入。- 有效元素仍會保留焦點。
- 彈出式視窗、全螢幕和互動式對話方塊會保持開啟狀態。
- CSS 轉場效果和動畫會繼續執行。
在 <area>
上公開 attributionsrc
屬性。
將 <area>
上的 attributionsrc
屬性公開資訊與屬性的現有處理行為保持一致,即使該屬性未公開也一樣。
此外,在 <area>
上支援這個屬性也是合理的做法,因為該元素是頂級導覽介面,而 Chrome 已在 <a>
和 window.open
的其他介面上支援這個屬性。
追蹤錯誤 #379275911 | ChromeStatus.com 項目 | 規格
FileSystemObserver
介面
FileSystemObserver
介面會通知網站檔案系統的變更情形。網站會在使用者本機裝置或 Bucket 檔案系統 (也稱為 Origin 私人檔案系統) 中,觀察使用者先前已授予權限的檔案和目錄變更,並收到基本變更資訊的通知,例如變更類型。
追蹤錯誤 #40105284 | ChromeStatus.com 項目
多個匯入對應
匯入地圖目前必須在任何 ES 模組之前載入,且每個文件只能有一個匯入地圖。這會導致模組不穩定,並在實際情境中可能會導致使用速度變慢:任何在模組前載入的模組都會導致整個應用程式發生錯誤,而在有許多模組的應用程式中,模組會成為大型封鎖資源,因為需要先載入所有可能模組的整個地圖。
這項功能可讓每份文件匯入多個匯入地圖,並以一致且確定的方式合併這些地圖。
儲存空間存取標頭
為已驗證的嵌入項目提供其他方式,讓其選擇啟用未區隔的 Cookie。這些標頭會指出未分割的 Cookie 是否已 (或可) 納入特定網路要求,並允許伺服器啟用已授予的「storage-access」權限。提供另一種啟用「storage-access」權限的方式,可讓非 iframe 資源使用這項權限,並減少經過驗證的嵌入項目的延遲時間。
追蹤錯誤 #329698698 | ChromeStatus.com 項目 | 規格
支援使用 Promise<DOMString>
建立 ClipboardItem
ClipboardItem
是異步剪貼簿 write()
方法的輸入內容,現在在建構函式中接受字串值,以及 Blob。ClipboardItemData
可以是 Blob、字串或解析為 Blob 或字串的 Promise。
追蹤錯誤 #40766145 | ChromeStatus.com 項目 | 規格
WebAssembly Memory64
memory64 提案新增支援線性 WebAssembly 記憶體,大小超過 2^32 位元。它不會提供新的指令,而是擴充現有指令,允許記憶體和資料表使用 64 位元索引。
Web Authentication API:PublicKeyCredential
getClientCapabilities()
方法
PublicKeyCredential
getClientCapabilities()
方法可讓您判斷使用者的用戶端支援哪些 WebAuthn 功能。這個方法會傳回支援功能清單,方便開發人員根據用戶端的特定功能,調整驗證體驗和工作流程。
追蹤錯誤 #360327828 | ChromeStatus.com 項目 | 規格
Web Cryptography API 的 X25519 演算法
「X25519」演算法提供工具,可使用 [RFC7748] 中指定的 X25519 函式執行金鑰協議。「X25519」演算法 ID 可用於 SubtleCrypto 介面,用來存取已實作的作業:generateKey、importKey、exportKey、deriveKey 和 deriveBits。
追蹤錯誤 #378856322 | ChromeStatus.com 項目 | 規格
成效
在節能模式下凍結
啟用省電模式後,如果「瀏覽內容群組」中的同源影格子群組超過 CPU 使用量門檻,Chrome 就會凍結該群組,且在五分鐘內不回應任何事件,除非:
- 提供音訊或視訊會議功能 (透過識別麥克風、攝影機或螢幕/視窗/分頁擷取畫面,或具有「open」RTCDataChannel 或「live」MediaStreamTrack 的 RTCPeerConnection 偵測)。
- 控制外部裝置 (透過 WebUSB、Web Bluetooth、WebHID 或 Web Serial 偵測)。
- 保留 Web Lock 或 IndexedDB 連線,以阻擋其他連線上的版本更新或交易。
- 凍結是指暫停執行。這個值已在 Page Lifecycle API 中正式定義。
在省電模式啟用時,系統會校正 CPU 用量閾值,將大約 10% 的背景分頁凍結。
追蹤錯誤 #325954772 | ChromeStatus.com 項目
在元素時間和 LCP 中公開粗略的跨來源 renderTime
(不論 Timing-Allow-Origin
為何)
元素時間和 LCP 項目都含有 renderTime
屬性,與圖片或文字繪製的首個影格保持一致。
這項屬性目前會要求圖片資源包含 Timing-Allow-Origin
標頭,以便保護跨來源圖片。不過,這項限制很容易規避 (例如在同一個影格中顯示同源和跨來源圖片)。
由於這項限制容易造成混淆,因此我們打算移除這項限制,並在文件未跨來源隔離時,將所有轉譯時間粗略估計為 4 毫秒。這似乎足夠粗略,可避免洩漏任何關於跨來源圖片的實用解碼時間資訊。
追蹤錯誤 #373263977 | ChromeStatus.com 項目 | 規格
還原 responseStart
並導入 firstResponseHeadersStart
啟用 103 Early Hints 後,回應會有兩個時間戳記:
- 早期提示到達時 (103)
- 最終標頭到達時 (例如 200)
- 當 Chrome 115 推出
firstInterimResponseStart
以便評估這兩個時間戳記時,我們也將responseStart
的含義 (由 Time to First Byte (TTFB) 使用) 改為「最終標頭」。這會導致瀏覽器和工具出現網頁相容性問題,因為這些工具並未對這項常用指標做出類似的變更。
Chrome 133 會將這項 responseStart
變更還原,以解決相容性問題,並改為導入 firstResponseHeadersStart
,讓網站能夠測量到最終標頭的時間,同時保留 TTFB 的原始定義。
追蹤錯誤 #40251053 | ChromeStatus.com 項目 | 規格
算繪和圖形
WebGPU:1 個元件的頂點格式 (以及 unorm8x4-bgra)
新增 WebGPU 初始版本中因缺乏支援或舊版 macOS (已無任何瀏覽器支援) 而未提供的額外頂點格式。1 元件頂點格式可讓應用程式只要求必要資料,而過去在 8 位元和 16 位元資料類型中,應用程式必須要求至少兩倍的資料量。使用 unorm8x4-bgra 格式時,您可以保留相同的著色器,稍微更方便地載入 BGRA 編碼的頂點顏色。
追蹤錯誤 #376924407 | ChromeStatus.com 項目
來源試用
選擇在節能模式下不凍結
這項試驗功能可讓網站停用 Chrome 133 中的節能模式凍結行為。
Origin Trial | 追蹤錯誤 #325954772 | ChromeStatus.com 項目 | 規格
跨根 ARIA 的參照目標
參照目標是一種功能,可讓您使用 IDREF 和 aria-labelledby
等 IDREF 屬性,參照元件 shadow DOM 中的元素,同時保留 shadow DOM 的內部詳細資料封裝。for
這項功能的主要目標,是讓 ARIA 能夠跨陰影根邊界運作。
元件可在其陰影樹中指定元素,做為「參照目標」。如果主機元件是 IDREF 的目標 (例如標籤的 for
屬性),參考目標就會成為標籤的有效目標。
陰影根會指定 shadow DOM 中目標元素的 ID。您可以使用 JavaScript 中的 ShadowRoot
物件上的 referenceTarget
屬性,或是 HTML 標記中的 <template>
元素上的 shadowrootreferencetarget
屬性,完成這項作業。
Origin Trial | ChromeStatus.com 項目
淘汰和移除
淘汰 WebGPU 限制 maxInterStageShaderComponents
maxInterStageShaderComponents limit
已因多種因素而淘汰。預計在 Chrome 135 版中移除。
maxInterStageShaderVariables
的冗餘:這個限制已用於類似目的,控制著著色器階段之間傳遞的資料量。- 微小差異:雖然兩種限制的計算方式略有不同,但差異不大,且可在
maxInterStageShaderVariables
限制內有效管理。 - 簡化:移除
maxInterStageShaderComponents
可簡化著色器介面,並降低開發人員的複雜度。這樣一來,他們就能專注於名稱更貼切且更全面的maxInterStageShaderVariables
,而非管理兩個差異不大的獨立限制。
移除 <link rel=prefetch>
五分鐘規則
先前,當使用 <link rel=prefetch>
預先擷取資源時,Chrome 會在五分鐘內首次使用時忽略快取語意 (即 max-age
和 no-cache
),以免重新擷取。如今,Chrome 已移除這項特殊情況,並使用一般 HTTP 快取語意。
也就是說,網頁開發人員必須加入適當的快取標頭 (Cache-Control 或 Expires),才能享有 <link rel=prefetch>
的優點。
這也會影響非標準的 <link rel=prerender>
。
追蹤錯誤 #40232065 | ChromeStatus.com 項目
移除 Chrome 歡迎頁面,並在首次執行時使用初始偏好設定開啟分頁
在 initial_preferences
檔案的 first_run_tabs
屬性中加入 chrome://welcome
現在不會產生任何效果。我們移除了這個頁面,因為這個頁面與電腦平台上觸發的「首次執行體驗」重複。