Chrome 107 Beta 版

对屏幕捕获 API、CSS grid-template 属性插值等的改进。

除非另有说明,否则下述变更适用于 Android、ChromeOS、Linux、macOS 和 Windows 的最新 Chrome Beta 版渠道版本。如需详细了解此处列出的功能,请点击提供的链接或访问 ChromeStatus.com 上的列表。截至 2022 年 9 月 29 日,Chrome 107 仍处于 Beta 版阶段。您可以在 Google.com 上下载桌面版最新版本,也可以在 Android 设备上的 Google Play 商店中下载。

CSS grid-template 属性插值

在 CSS 网格中,开发者可以使用 grid-template-columnsgrid-template-rows 属性分别定义网格列和行的网格线名称和轨道大小。感谢 Microsoft 的贡献者,我们现在支持对这些属性进行插值。网格布局现在可以在状态之间平稳过渡,而不是在动画或过渡的中途突然切换。

可保护隐私的屏幕共享控制

屏幕捕获 API 对现有的媒体捕获和流 API 进行了补充,让用户可以选择要捕获为媒体流的屏幕或部分屏幕(例如窗口)。然后,您可以录制此视频流,也可以通过网络与他人分享。在此 Beta 版中,此 API 添加了一些新功能。

DisplayMediaStreamConstraints.selfBrowserSurface

提示,允许 Web 应用指示浏览器在调用 getDisplayMedia() 时是否应将当前标签页从提供给用户的标签页列表中排除。

这有助于防止意外的自我拍摄。当用户意外选择应用正在运行的标签页时,会产生镜厅效应,让用户感到困惑,并打断与远程用户的讨论。

DisplayMediaStreamConstraints.surfaceSwitching

添加了一个选项,用于以编程方式控制 Chrome 在屏幕共享时是否显示用于切换标签页的按钮。此选项将传递给 navigator.mediaDevices.getDisplayMedia()

借助“改用此标签页”按钮,用户可以顺畅地切换正在分享的标签页,而无需再次选择视频会议标签页、点击按钮以再次启动 getDisplayMedia() 或从长长的标签页列表中选择新标签页。此行为是有条件公开的,因为并非所有 Web 应用都能处理此行为。

MediaTrackConstraintSet.displaySurface

调用 getDisplayMedia() 后,浏览器会向用户提供显示界面的选择:标签页、窗口或显示器。现在,Web 应用可以使用 displaySurface 限制向浏览器提示,它是否希望向用户更突出地提供某种界面类型。

详细了解这些功能如何帮助您避免意外过度分享。

资源时间轴中的渲染阻塞状态

PerfomanceResourceTiming 添加一个字段,以指示资源的阻塞渲染状态。目前,从开发者的角度来看,确定哪些资源实际上会阻塞渲染的唯一方法是依赖复杂的启发式方法。而新字段将直接提供有关此方面的信号。

权限政策来源中的通配符

此功能增加了对权限政策中类似 SCHEME://*.HOST:PORT(例如 https://*.foo.com/)的通配符的支持,其中有效的来源可以从 SCHEME://HOST:PORT(例如 https://foo.com/)构建。这要求 HOST 至少为 eTLD+1(可注册的网域)。这意味着 https://*.bar.foo.com/ 有效,但 https://*.com/ 无效。方案和端口部分中的通配符将不受支持,并且 https://*.foo.com/ 不会委托给 https://foo.com/。以前,权限政策可能需要如下所示:

permissions-policy: ch-ua-platform-version=(self "https://foo.com" "https://cdn1.foo.com" "https://cdn2.foo.com")

借助此功能,您可以:

permissions-policy: ch-ua-platform-version=(self "https://foo.com" "https://*.foo.com")

支持 <form> 元素上的 rel 属性

此功能会向表单元素添加 rel 属性,从而可以防止 window.opener 出现在通过具有 rel=noopener 的表单元素导航到的网站上,并防止通过 rel=noreferrer 发送引荐来源网址标头。

源试用

此版本的 Chrome 包含 2 项新的源试用

声明性 PendingBeacon API

一种有状态的信标 API,可让浏览器控制信标的发送时间。信标是发送到后端服务器的一组数据,不期望获得特定响应。通常,我们希望在用户访问完某个网页后发送这些事件,但没有合适的时间来发出“发送”调用。此 API 将发送操作委托给浏览器本身,因此它可以在网页卸载或隐藏时支持 Beacon,而无需开发者在确切的时间实现发送调用。

此试验预计将持续到 Chrome 109。点击此处注册试用

Permissions-Policy: unload

此功能允许网页停用正在运行的卸载事件处理脚本。此功能的目的是允许已移除所有卸载处理程序的网站确保不会意外添加新的卸载处理程序。这将有助于网站迁移掉卸载事件处理脚本,从而提高 BFCache 命中率

此试验预计将持续到 Chrome 109。点击此处注册试用

弃用和移除

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

此版本的 Chrome 弃用了一项功能。

Expect-CT

Expect-CT 是一种 HTTP 标头,允许网站在默认强制执行证书透明度之前选择加入证书透明度强制执行。它还具有报告功能,可帮助开发者发现 CT 错误配置。

Expect-CT HTTP 标头旨在帮助过渡到通用证书透明度 (CT) 强制执行,方法是允许高价值网站选择加入 CT 强制执行或报告,以便在 Chrome 要求所有公共网站都必须强制执行 CT 之前提高安全性。不过,Expect-CT 现在已失去效用。Chrome 现在要求所有公共网站都使用 CT,因此 Expect-CT 不再具有任何安全价值。没有其他浏览器实现 Expect-CT,因此移除它不会造成互操作性问题。