Chrome 127 测试版

原文信息: 查看原文查看原文

Chrome 127 beta

- Chrome for Developers

除非另有说明,以下更改适用于 2024 年 6 月 12 日发布的最新 Chrome 测试版,包括 Android、ChromeOS、Linux、macOS 和 Windows 平台。您可以通过提供的链接或 ChromeStatus.com 上的列表了解更多关于这些特性的信息。您可以在 Google.com 下载桌面版的最新版本,或在 Android 上的 Google Play 商店下载。

CSS

此版本新增了三项 CSS 特性。

CSS 字体大小调整(font-size-adjust)

font-size-adjust CSS 属性提供了一种方法,可以根据大写字母的大小来调整小写字母的大小,从而定义整体的字体大小。这个属性在可能发生字体回退的情况下非常有用。

Chrome 127 包含了传入字体度量和值的双值语法。

CSS 生成内容中的多参数替代文本

CSS content 属性允许您使用以下语法为可访问性指定替代文本:

.has-before-content::before {
  content: url("cat.jpg") / "A cute cat";
}

所示的语法,其中替代文本由一个单独的字符串给出,在 Chrome 中已经得到支持。从 Chrome 127 开始,替代文本可以由任意数量的元素给出,除了字符串外,还可以是 attr() 函数或计数器。例如:

.has-before-content::before {
  content: url("cat.jpg") / "A cute " attr(data-animal);
}

请注意,此特性条目不包括计数器支持的添加。

iframe 中支持视图转换

从 Chrome 127 开始,将支持在主框架和同源 iframe 中同时进行同一文档的并发视图转换。

以前,如果在主框架中同时运行转换时使用 document.startViewTransition 在同源 iframe 中运行视图转换将不起作用。iframe 的转换将自动跳过。现在,两个转换都将执行。

iframe 中对同源跨文档导航的视图转换也将得到支持。

Web API

归因报告的新增功能

Chrome 127 为归因报告增加了两个额外的特性。聚合调试报告允许 API 调用者即使在第三方 cookie 弃用后,也能继续接收调试信息。归因范围提供了更多的归因过滤控制。

自动全屏内容设置

新的“自动全屏”内容设置允许企业管理员允许网站在没有用户手势的情况下进入全屏。用户也可以通过网站设置页面允许隔离的 Web 应用程序使用此功能。

结合窗口管理权限和未阻止的弹出窗口,这解锁了宝贵的全屏功能:

  • 从一个手势在另一个显示器上打开全屏弹出窗口。
  • 从一个手势在多个显示器上显示全屏内容。
  • 当连接新显示器时,显示全屏内容。
  • 用一个手势在显示器之间交换全屏窗口。
  • 在用户手势过期或消耗后显示全屏内容。

分区 Cookie 的 CookiePartitionKey 的跨站祖先链位

Chrome 127 在分区 Cookie 的 CookiePartitionKey 的密钥环中添加了一个跨站祖先位。此更改将分区键与存储分区中使用的分区键值统一起来,并通过防止跨站嵌入框架访问顶级网站的分区 Cookie,增加了对点击劫持攻击的保护。

如果企业在使用嵌入式 iframe 时遇到任何中断,他们可以使用 CookiesAllowedForUrls 策略,或者使用没有 Partitioned 属性的 SameSite=None Cookie,然后调用存储访问 API(SAA),以确保嵌入式 iframe 可以访问与顶级域相同的 Cookie。

文档画中画:传播用户激活

这使得文档画中画窗口中的用户激活也可以在其打开器窗口中使用,反之亦然。这使得使用用户激活门控 API 更加符合人体工程学,因为文档画中画窗口中的事件处理器实际上经常在打开器的上下文中运行,因此打开器的上下文需要访问用户手势。

Importmap 完整性

当前无法检查导入的 ES 模块的完整性,因此它们不能在需要子资源完整性或带有 require-sri-for CSP 指令的环境中运行。

此特性向 import maps 添加了一个 integrity 部分,使开发人员能够将 ES 模块 URL 映射到它们的完整性元数据,并确保只有在它们与预期的哈希匹配时才加载。

键盘可聚焦滚动容器

此特性引入了以下更改:

滚动器默认情况下是可点击聚焦和程序聚焦的。没有可聚焦子元素的滚动器默认情况下是键盘可聚焦的。

这是一个重要的改进,有助于使滚动器和滚动器内的内容对所有用户更加可访问。您可以在“键盘可聚焦滚动器”的帖子中阅读更多关于其好处的信息。键盘可聚焦滚动器将从 Chrome 127 开始默认启用。如果网站需要时间适应这个新特性,有几种选择:

预渲染的 No-Vary-Search 支持

之前的 prefetch 支持 的基础上扩展了预渲染的 No-Vary-Search 支持。这使得即使某些 URL 查询参数发生变化,预渲染条目也能匹配。No-Vary-Search HTTP 响应头声明可以忽略 URL 查询的某些或全部部分,以用于缓存匹配目的。

Snap 事件

Snap 事件允许开发人员可靠地监听滚动器的 snap target 更改,并执行样式调整。

CSS 滚动快照点通常用作创建滚动交互式选择组件的机制,其中选择是通过 JavaScript 交叉观察者和滚动结束估计来确定的。通过创建内置事件,不可见状态将变得可操作,在正确的时间,始终正确。

此特性增加了两个 JavaScript 事件:scrollsnapchangescrollsnapchangingscrollsnapchange 事件在滚动操作(包括快照)完成后通知开发人员,滚动器所固定到的元素已更改。scrollsnapchanging 事件在滚动操作期间给开发人员一个提示,即用户代理打算根据到目前为止的滚动输入将滚动容器快照到一个新的快照目标。

MediaMetadata 中的视频章节

您现在可以 添加个别章节信息,例如部分标题、时间戳和屏幕截图图像到媒体元数据中。这允许用户浏览媒体内容。

这只会出现在 ChromeOS 媒体通知中,而不会出现在 Chrome 浏览器的全局媒体控件中。

WebGPU: GPUAdapter 信息属性

增加了一个同步的 GPUAdapter 信息属性,以检索与异步 GPUAdapter requestAdapterInfo() 方法相同的物理适配器信息。

正在进行的源试验

在 Chrome 127 中,您可以选择加入以下新的 源试验

使用共享 Brotli 和共享 Zstandard 的压缩字典传输

此特性增加了对使用指定的先前响应作为 Brotli(或 Zstandard)压缩 HTTP 响应的外部字典的支持。

为私人网络访问(PNA)弃用 0.0.0.0

我们提议在 PNA 完全推出之前阻止访问 IP 地址 0.0.0.0

作为 PNA 规范 的一部分,Chrome 正在弃用从公共网站直接访问私有网络端点。该规范将监听在本地主机(127.0.0.0/8)的服务视为私有。Chrome 的 PNA 保护(作为 https://chromestatus.com/feature/5436853517811712 的一部分推出)可以使用 IP 地址 0.0.0.0 来绕过,以访问在 macOS 和 Linux 上监听本地主机的服务。

这也可能被滥用于针对监听本地主机的 Web 应用程序的 DNS 重绑定攻击。

由于 0.0.0.0 在实践中没有(也不应该)被使用,我们正在将其与私有网络请求的其他弃用分开弃用。

我们打算从 2024 年第一季度开始,逐步弃用并移除对第三方(即跨站)Cookie 的默认访问权限,首先是 1% 的测试期,然后计划从 2025 年第一季度开始逐步淘汰,前提是解决英国竞争与市场管理局的任何剩余竞争问题。

逐步淘汰第三方 Cookie 是隐私沙箱计划的核心努力,旨在在支持关键用例的同时,负责任地减少网络(及其它地方)的跨站跟踪。

存储、服务工作者和通信 API 的分区

从 Chrome 115 开始,在第三方上下文中,存储、服务工作者和通信 API 被分区。从 Chrome 113 到 126,网站可以参加弃用试验,临时取消分区并恢复存储、服务工作者和通信 API 的以前行为。

从 Chrome 125 开始,存储访问 API 中的非 cookie 存储得到支持,这应该可以解决大多数未分区存储的用例。如果这些用例没有得到满足,现在可以为 DisableThirdPartyStoragePartitioning 弃用试验请求续期,额外 6 个里程碑,适用于 Chrome 127 到 132(含)的用户。

有关更多信息,请查看 存储分区弃用试验续期博客文章

键盘可聚焦滚动容器弃用试验

此特性引入了以下更改:

  • 滚动器默认情况下可点击聚焦和程序聚焦。
  • 没有可聚焦子元素的滚动器默认情况下是键盘可聚焦的。

我们尝试发布这些更改,并发现一些网站的某些组件对它们的期望出现了问题。因此,为了避免这种中断,我们不得不取消发布该功能。鉴于这些好处,该功能将从 127 开始发布。为了给受影响的网站更多的时间来迁移它们的组件,我们正在开始一个弃用试验。启用后,这将禁用该功能。

弃用和移除

此版本的 Chrome 引入了以下列出的弃用和移除。访问 ChromeStatus.com 查看计划弃用、当前弃用和之前移除的列表。

此版本的 Chrome 移除了三个功能。

变异事件

变异事件支持将从 Chrome 127 开始默认禁用。代码应在该日期之前迁移,以避免网站中断。如果需要更多时间,有几种选择:

有关更多详细信息,请查看博客文章 变异事件弃用

限制公共网站上子资源的“私有网络请求”到安全上下文

要求公共网站上子资源的私有网络请求只能从安全上下文发起。例子包括从互联网到内网的请求和从互联网到回环的请求。

这是完全实施 私有网络访问 的第一步。

移除旧的 CSS 自定义状态语法

CSS 自定义状态伪类正在从 :--foo 重命名为 :state(foo)。新的语法 :state(foo) 已默认启用,因此我们正在移除 :--foo 语法。

Firefox 和 Safari 从未实现过旧语法,并且它们都已经发布了新语法。

需要更多时间的企业客户可以使用 CSSCustomStateDeprecatedSyntaxEnabled 策略。此策略将在 Chrome 131 中被移除。

分享于 2024-06-13

访问量 194

预览图片