除非另有說明,否則下列變更適用於 Android、ChromeOS、Linux、macOS 和 Windows 的最新 Chrome Beta 版。如要進一步瞭解此處所列功能,請透過我們提供的連結或 ChromeStatus.com 的清單。Chrome 122 已於 2024 年 1 月 24 日推出 Beta 版。您可以前往 Google.com 電腦版或 Android 的 Google Play 商店下載最新版本。
CSS
本次更新新增三項 CSS 功能。
含有不支援功能的 CSS @container 查詢永遠不會相符
含有不支援的查詢的 @container
選取器永遠不會選取任何容器,也就是一律無法比對。
也就是說,即使有與寬度查詢相符的大小容器,這項查詢也絕不會比對任何容器。例如,下列查詢因不明特徵而永遠不會比對:
@container (width > 0px) or (unknown) {}
這是最近對規格所做的變更,以避免前瞻相容性問題。
繼承原始元素的 CSS 虛擬元素 ::backdrop
用來繼承初始值的 ::backdrop
虛擬元素。也就是說,除非直接在 ::backdrop
規則中指定,否則 ::backdrop
無法使用自訂屬性值。現在規格已變更,讓 ::backdrop
繼承來源元素,這項變更會使 Chrome 實作符合新規格。
「@import
」的 CSS supports()
條件
@import
現在接受 supports()
條件。如果 supports()
條件不相符,系統就不會擷取匯入作業。
@import "scroll-driven-animations.css" supports(animation-timeline: auto);
要放入 supports()
中的功能查詢與用於 @supports
的功能查詢相同
網站 API
Async Clipboard API:讀取未處理過的 HTML
在 read()
方法中新增 unsanitized
選項,取得未經處理的 HTML 格式。除非網站包含這個屬性,否則從剪貼簿讀取資料都會經過處理。
根據預設,使用非同步 API 讀取 text/html
MIME 類型時,基於安全性考量,系統會叫用清理程式來移除 HTML 標記中的內容,並在 HTML 中內嵌樣式。這會導致大量 HTML 酬載,並在網頁開發人員或行動應用程式讀取時遺失 HTML 內容的擬真度。
請勿刪除 dataTransfer.clearData() 中的檔案類型物件
更新 Chrome 以符合spec,該規格指定 clearData()
不會影響檔案物件。只會刪除 text
種類物件。
FedCM:取消連結
允許透過依賴第三方網站中斷聯合登入帳戶的連線。如果使用取消連結 API,依賴方可能會通知識別資訊提供者通知先前使用的帳戶現已中斷連線,因此必須將該帳戶視為新帳戶,才能再次透過聯合登入使用。
iframe 中可互通的滑鼠遊標刪除事件
當指標從 iframe 中拖曳時,將滑鼠事件目標設為不涵蓋滑鼠事件目標。當滑鼠從 iframe 中拖曳時,所有瀏覽器 (包括 Chrome) 都會將 mousemove
和 mouseup
事件傳送至 iframe。不過,如果將 mousedown 事件取消,Chrome 現在會保留先前的 WebKit 例外狀況,並將滑鼠移動和滑鼠上移事件傳送至外部影格。WebKit 去年移除了這個例外狀況,而 Mozilla 近年來未曾顯示這項行為。這項功能會針對這個特殊情況移除僅適用於 Chrome 的例外狀況。
Iterator 輔助程式
疊代器輔助程式是疊代器原型上的新方法,可一般使用和疊代疊代器。
MessagePort.onclose
Channel Messaging API 的變更,用於通知其中一個 MessagePorts 已移位。也就是說,系統會呼叫 close()
、刪除剩餘文件,或為通訊埠進行垃圾收集。
RTCRtpSender setParameters() 擴充功能,用於要求產生金鑰影格
將選用的第二個參數新增至 WebRTC 的 RTCRtpSender.setParameters
呼叫,可用於要求相關聯的編碼器產生按鍵畫面。
設定方法
設定方法是新方法,例如加到 JavaScript 內建 Set
類別的聯集和交集。
Storage 值區 API
儲存空間值區可讓網站將裝置端資料整理成個別的「值區」,方便使用者代理程式將分組資料獨立刪除在其他值區中,讓網站能夠有效管理語意相關資料。每個儲存空間值區都可能包含與既有儲存 API (如 IndexedDB 和 CacheStorage) 相關聯的資料。
URLPattern:hasRegExpGroups
允許檢查 URLPattern
使用一或多個 ECMAScript 規則運算式群組,因此在 ECMAScript 引擎無法使用 (例如即將導入的一些 API) 的情況下,可能不適合使用。
嚴格來說,這反映出開發人員檢查模式時仍然能夠發現的問題,但能夠存取通用 Analytics (分析) 的實作方式,會讓這一點變得更加簡單。
WebGL drawBufferStorage
WebGL 允許算繪為多種不同像素格式的紋理和算繪緩衝區。例如 8 位元、浮點和 sRGB 編碼。
WebGL 的繪圖緩衝區 (傳遞至合成器的緩衝區) 預設為 8 位元。drawBufferStorage 功能可讓 WebGL 設定此繪圖緩衝區的像素格式,讓開發人員能夠執行以下操作。
- 將算繪轉換成預設繪圖緩衝區像素格式時,請避免額外複製。
- 繪製精確度超過 8 位元的內容。
第二種功能可讓您解鎖更多額外的應用程式:
- 非常寬的色域內容,沒有精確度。
- 需要超過 8 位元精確度的醫療應用程式。
- 高動態範圍應用程式 (如果有的話)。
適用於傳輸層安全標準 (TLS) 的 X25519Kyber768 金鑰封裝
部署 Kyber768 抗量子金鑰協議演算法,保護目前的 Chrome TLS 流量,避免日後的量子密碼分析遭到攻擊。這是依據 IETF 標準的混合 X25519 + Kyber768 金鑰協議。這項規格和推出作業不在 W3C 範圍內。此金鑰協議將以傳輸層安全標準 (TLS) 加密的形式推出,您應向使用者公開透明。
來源試用中
在 Chrome 122 中,您可以選擇啟用下列新的來源試用。
網頁應用程式範圍擴充功能
網頁應用程式範圍 (由範圍欄位定義) 只能以單一來源的路徑定義。此屬性會用來判斷應用程式視窗目前的文件是否屬於應用程式的一部分,也會決定其他資訊清單成員中允許哪些網址。
使用 scope_extensions 時,如果網頁應用程式的主要來源和相關來源有協議,開發人員可以擴充應用程式的行為,納入其他來源。
擷取的表面控制
Captured Surface Control API 可讓網頁應用程式在擷取的分頁或視窗中產生滾輪事件,以及讀取或寫入已擷取分頁的縮放等級。