Chrome 118 Beta 版

适用于 CSS 的作用域样式、其他媒体功能、键盘可聚焦滚动容器等。

除非另有说明,否则上述变更适用于 Android、ChromeOS、Linux、macOS 和 Windows 的最新 Chrome Beta 渠道版本。您可以通过提供的链接或 ChromeStatus.com 上的列表详细了解本文所列的功能。Chrome 118 Beta 版自 2023 年 9 月 13 日起推出。您可以在桌面版 Google.com 或 Android 版 Google Play 商店中下载最新版本。

CSS

此版本新增了四项 CSS 功能。

作用域样式

借助 @scope 规则,开发者可以将样式规则的作用域限定为指定的作用域根,并根据该作用域根的距离来设置元素的样式。

CSS 逻辑流相对值

将以下新值添加到现有 CSS 属性:

  • float: inline-start
  • float: inline-end
  • clear: inline-start
  • clear: inline-end
  • resize: block
  • resize: inline

这些相对流的方向关键字会解析为物理值,具体取决于元素或其包含块的书写模式或方向。

媒体查询:preferreds-reduced-transparency 功能

添加了 prefers-reduced-transparency 媒体功能,可让开发者根据用户选择的偏好设置调整 Web 内容,以降低操作系统中的透明度,例如 macOS 上的降低透明度设置。有效选项为 reduceno-preference

在 transform-box CSS 属性中支持 stroke-box、content-box 和 border-box

添加此支持后,您就可以更改 transform 属性的参考框的计算方式。这样可以启用额外的转换或图形效果。例如,围绕内容框中的某个点旋转,此时元素边框的宽度不会影响结果。或者,(SVG) 元素的描边应影响结果的位置,例如围绕其中心旋转描边形状时(包括描边)。

HTML

键盘可聚焦滚动容器

使用依序焦点导航使滚动容器可聚焦,从而改进了无障碍功能。在此变更之前,除非 tabIndex 已明确设置为 0 或更高版本,否则 Tab 键不会聚焦滚动条。通过将滚动条默认设为可聚焦,无法(或不想)使用鼠标的用户将能够使用键盘的 Tab 键和箭头键访问剪辑的内容。此行为不适用于包含键盘可聚焦元素的滚动条,因为这些元素已经可通过键盘访问。

移除了选项标签属性的 Quirks 模式行为

Option 元素支持 label 属性,这会使选项使用属性内的文本(而不是选项元素本身的子文本)进行呈现。此功能在 Quirks 模式下处于停用状态,在该模式下,系统会忽略 label 属性,并始终呈现子文本。此更改将始终在标准模式和 Quirks 模式下使用标签属性。

Web API

注册 Privacy Sandbox (PSB)

随着 Privacy Sandbox 相关性和效果衡量 API 陆续推出正式版,我们希望确保这些技术的使用方式正常且公开透明。这些 API 包括 Attribution ReportingProtected Audience APITopics APIPrivate Aggregation APIShared Storage API。PSB 将针对 Privacy Sandbox 相关性和效果衡量 API 推出全新的开发者注册流程。Chrome 将(通过组件更新程序)从注册服务器提取已注册网站的列表,并使用该列表控制对 Privacy Sandbox API 的访问权限。

阻止通过 JavaScript 设置且包含控制字符的所有 Cookie

更新了对通过 JavaScript 设置的 Cookie 中的控制字符的处理方式。具体而言,所有控制字符都会导致整个 Cookie 被拒绝。以前,Cookie 行中的 NULL 字符、回车符或换行字符会导致系统将其截断,而不是完全拒绝,在某些情况下,这可能会促成恶意行为。此行为可使 Chrome 遵循 RFC6265bis 最新草稿中指示的行为。您可以使用 --disable-features=BlockTruncatedCookies 或 BlockTruncatedCookies 企业政策来停用此变更,此政策将存在于多个里程碑,以防变更造成任何中断。

不同语言的最小字体大小一致

将七种语言(阿拉伯语、波斯语、日语、韩语、泰语、简体中文和繁体中文)的最小字体大小默认更改为关闭,以提高互操作性和无障碍性。在此次变更之前,对于除所列七种语言之外的所有语言,此设置默认处于关闭状态。此更改使这些语言与其他语言保持一致。请注意,这并不是更改最小字体大小功能本身,无需对无障碍功能和可读性进行任何更改即可使用这项功能。

检测同文档导航中的 UA 转换

在用户浏览网页时提供平滑的视觉过渡,有助于用户停留在情境中,从而降低认知负担。不过,如果网站作者和 UA 都添加了这些过渡,则会给用户带来糟糕的体验:这些过渡可能会发生冲突并给用户造成困扰。此 API 可避免此类情况,确保一次仅执行一个视觉转场。该 API 会在 PopStateEventNavigateEvent 上添加一个布尔值,以指明 UA 是否已为此导航执行视觉过渡。开发者可以使用此方法跳过自定义过渡。

网址解析器不会解码网址路径中采用百分比编码的 ASCII 字符

此更改会使网址解析器对网址路径中采用百分比编码的 ASCII 字符(如“%41”)进行解码(“A”)。此次变更之前:

const url = new URL("http://example.com/%41");
url.href "http://example.com/A" 

本次变更后:

const url = new URL("http://example.com/%41"); 
url.href "http://example.com/%41"

Protected Audiences 排除性定位

在针对广告空间的在线广告竞价中,阻止向某些受众群体展示广告有时很有用,这个概念称为排除性定位。例如,您可能不想向现有客户展示新客户广告。以获取新客户为目标的广告系列大多以此为关键要求。Protected Audience 目前允许广告定位到过去曾在网络上的活动,进而加入特定兴趣群体的用户。此功能允许新广告仅定位到尚未加入特定兴趣群体的用户,从而扩展 Protected Audience,以实现排除性定位。通过这种方式,广告客户可以利用 Protected Audience API 的现有可保护隐私的概念来定位新的用户群体。

移除付款用户激活要求

为帮助开发者减少付款请求流程中的障碍,我们将从“付款请求”和安全付款确认中移除用户激活要求。我们实施了垃圾内容和点击劫持缓解措施,以降低此次变更带来的安全和隐私风险。

扩展程序 Service Worker 中的 WebUSB

允许 Web 开发者通过向浏览器扩展程序注册的 Service Worker 公开 WebUSB API,在响应扩展程序事件时使用 WebUSB API。此 API 目前未向网站注册的 Service Worker 公开。

XML 文档将连续的 CDATA 部分合并为单个节点

由于 libxml 中的错误,XHTML 文档中的 CDATA 部分有时会错误地生成多个节点,具体取决于文档的大小以及 CDATA 部分在文档中的位置。当单个 CDATA 部分跨越多个输入解析器区块时,libxml 会缓冲并将 CDATA 输入发送到 300 字节的运行中。这会意外地将单个 CDATA 部分转换为多个节点(如果输入分块的长度超过 300 个字节)。此更改会导致同级 CDATA 部分节点在解析期间合并为单个 CDATA 部分。这修复了解析期间的 libxml bug,但也会合并编写的单独节点,例如:<![CDATA[foo]]><!CDATA[bar]]> 将生成一个内容为 "foobar": CDATA "foobar" 的 CDATA DOM 节点。

更改 beforeunload 处理程序对话框条件

对于 beforeunload 事件提示取消对话框的方式,有两个新更改。

如果调用了 event.preventDefault(),则提示取消对话框。 如果 event.returnValue 是空字符串,则不提示取消对话框。

正在进行源试用

在 Chrome 118 中,您可以选择参加以下新的源试用

WebRTC 编码转换:修改元数据函数

在 WebRTC Encoded Transform API 中添加了允许处理音频和视频帧元数据的功能。已确定的许多用例要求在不事先解码的情况下操纵 WebRTC 编码媒体。其中包括:

  • 发送之前经过编码的数据。
  • 发送以编码形式接收的数据。
  • 接收编码格式的数据并转发。

具体而言,我们希望支持从提供相同媒体载荷但具有不同元数据的多个冗余对等连接的媒体无干扰转发的用例。

注册参与 RTCEncodedFrameSetMetadata 源试用

弃用和移除

此版本的 Chrome 引入了下列弃用和移除功能。请访问 ChromeStatus.com,查看计划内弃用、当前弃用和先前移除的列表。

此版本的 Chrome 移除了以下功能。

移除了某些非标准的外观关键字

在 Chrome 118 中,用量最低的非标准 appearance 关键字将被停用。停用该功能后,如果将该关键字用作值,则系统将会忽略外观属性。Chrome 118 中停用的关键字是指使用率低于 0.001% 的关键字:

  • media-slider
  • media-sliderthumb
  • media-volume-slider
  • media-volume-sliderthumb
  • sliderthumb-horizontal
  • sliderthumb-vertical

背景

由于应只支持标准的 appearance 关键字,因此我们将移除非标准的 appearance(和 -webkit-appearance)关键字。完整列表如下:

  • inner-spin-button
  • media-slider
  • media-sliderthumb
  • media-volume-slider
  • media-volume-sliderthumb
  • push-button
  • searchfield-cancel-button
  • slider-horizontal
  • sliderthumb-horizontal
  • sliderthumb-vertical
  • square-button

请注意,在此过程中不会移除值“slider-vertical” 用于允许 <input type=range> 类别。时间是 在完全采用表单控件垂直书写模式后移除。

如果使用了上述任何关键字,在被停用之前,系统会显示控制台警告,但系统会将相应关键字识别为有效值。