Chrome 122 Beta 版

除非另有说明,否则以下变更适用于最新的 Chrome Beta 版 渠道版本。了解详情 通过提供的链接或 ChromeStatus.com.Chrome 122 Beta 版自 2024 年 1 月 24 日起推出。您可以下载 Google.com 上的最新桌面版或 下载您的应用。

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

Web API

Async Clipboard API:读取未经过处理的 HTML

添加 unsanitized 选项,以获取未经处理的 HTML 格式。read()除非网站 包含此属性,则从剪贴板读取的内容将会被净化。

默认情况下,在使用异步 API 读取 text/html MIME 类型时, 出于安全考虑,会调用 Sanitizer 以将内容从 HTML 标记中删除 而且样式内嵌在 HTML 中。这会导致 HTML 载荷非常大 以及网络开发者或移动应用阅读 HTML 内容时的保真度降低的问题。

不要在 dataTransfer.clearData() 中删除文件类型对象

更新 Chrome 以匹配 spec, 它指定 clearData() 不会影响 File 对象。它只会删除 text 种类对象。

FedCM:解除关联

允许使用依赖方网站断开联合登录账户。 借助断开连接 API,依赖方可能会通知身份提供方: 之前用过的账号现已取消关联,因此可再次使用该账号 则需将其视为新账号。

iframe 中可互操作的 mousedown 事件取消

将鼠标事件目标设置为与 将指针拖出 iframe。将鼠标拖出 iframe 后, 所有浏览器(包括 Chrome)都会将 mousemovemouseup 事件发送到 iframe。不过,如果 mousedown 事件被取消,Chrome 目前会保持 将 mousemove 和 mouseup 事件发送到外部 帧。WebKit 去年移除了这个异常,而 Mozilla 从未显示过它 近年来的行为。此功能将去除“仅限 Chrome 浏览器”的例外项, 这种特殊情况。

迭代器帮助程序

迭代器帮助程序是新方法 以便对迭代器进行常规用途。

MessagePort.onclose

对 Channel Messaging API 的更改,用于通知其中一个 MessagePort 另一个端口已被拆开。也就是说,close() 被调用, 文件被销毁,或者端口被垃圾回收。

用于请求生成关键帧的 RTCRtpSender setParameters() 扩展

向 WebRTC 的 RTCRtpSender.setParameters 调用添加可选的第二个参数 用于请求关联的编码器生成关键帧。

Set 方法

set 方法是添加到 JavaScript 的 内置 Set 类。

Storage Buckets API

存储分区让网站能够整理存储分区 单独的“桶”中,以便用户代理将 独立于其他存储分区中的数据进行分组, 从工效学角度管理语义相关数据。每个存储分区 包含与既有的存储 API(如 IndexedDB 和 CacheStorage。

网址格式:hasRegExpGroups

允许检查 URLPattern 是使用一个或多个 ECMAScript 常规 表达式组,因此可能不适合使用 ECMAScript 引擎不可用(例如一些即将推出的计划中的 API)。 严格来说,这反映了开发者原本可以知道的 还能访问此模式的 UA 实现, 会使其变得更加简单明了。

WebGL drawingBufferStorage

WebGL 允许渲染到许多不同像素的纹理和渲染缓冲区中 格式。例如,8 位、浮点和 sRGB 编码。

WebGL 的绘制缓冲区(传递到合成器的缓冲区)为 默认为 8 位。借助绘图缓冲区存储功能,WebGL 可以配置 像素格式,使开发者能够执行以下操作。

  • 在将渲染转换为默认绘图时避免额外的副本 缓冲区像素格式。
  • 绘制精度超过 8 位的内容。

后一种功能解锁了其他几个应用:

  • 非常广的色域内容,且不会降低精确度。
  • 精度要求高于 8 位的医疗应用。
  • 高动态范围应用(如果有)。

适用于 TLS 的 X25519Kyber768 密钥封装

通过 部署了 Kyber768 抗量子密钥协议算法。这是一个 混合 X25519 + Kyber768 密钥协议(基于 IETF 标准)。这个 并且发布在 W3C 的范围之外。此密钥协议将 作为 TLS 加密推出,并且应对用户公开。

正在进行源试用

在 Chrome 122 中,您可以选择使用以下新来源 测试

Web 应用范围扩展

Web 应用范围(由范围字段定义)只能使用 单一来源。它用于确定应用窗口的当前 文档是应用的一部分。它还决定了允许在 其他清单成员。

利用 scope_extensions,开发者可以 能够扩展其应用的行为,以包含其他源(如果有) Web 应用的主要来源和相关源之间达成的协议。

注册 Web 应用范围扩展源试用

捕获的表面控件

Captured Surface Control API 让 Web 应用在捕获的标签页或窗口中生成滚轮事件,并读取 或写入已捕获标签页的缩放级别。

报名参加 Captured Surface Control 源试用