Chrome 107 Beta 版

添加了 Screen Capture API、CSS 网格模板属性插值等。

除非另有说明,否则下文所述的更改均适用于最新 Chrome Beta 版(Android、ChromeOS、Linux、macOS 和 Windows)。请通过提供的链接或 ChromeStatus.com 上的列表详细了解此处列出的功能。从 2022 年 9 月 29 日起,Chrome 107 为 Beta 版。您可以访问 Google.com(桌面版)或 Google Play 商店(Android 版)下载最新版本。

CSS grid-template 属性插值

在 CSS 网格中,开发者可以使用 grid-template-columnsgrid-template-rows 属性来定义线条名称,并跟踪网格列和行的大小。感谢 Microsoft 的贡献者,我们现在针对这些属性支持插值。网格布局现在可以在状态之间平滑过渡,而不是在动画或过渡的中间点贴靠。

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

Screen Capture API 是对现有 Media Capture 和 Streams API 的补充,可让用户选择要作为媒体流截取的屏幕或屏幕的一部分(例如窗口)。然后,您便可录制此直播或通过网络与他人分享。在此 Beta 版中,此 API 添加了一些新功能。

DisplayMediaStreamConstraints.selfBrowserSurface

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

这有助于防止意外的自拍,当用户不小心选择了运行应用的标签页时,会产生镜厅效应,令用户感到困惑,并阻碍与远程用户的讨论。

DisplayMediaStreamConstraints.surfaceSwitching

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

通过“改为分享此标签页”按钮,用户可以无缝切换要分享的标签页,而无需再次选择视频会议标签页、点击按钮再次启动 getDisplayMedia(),或从一长串标签页中选择一个新标签页。此行为是有条件的,因为并非所有 Web 应用都能处理此行为。

MediaTrackConstraintSet.displaySurface

调用 getDisplayMedia() 时,浏览器会为用户提供多种显示 surface:标签页、窗口或监视器。通过使用 displaySurface 约束条件,Web 应用现在可提示浏览器,如果它更希望向用户提供某个 Surface 类型,则可以这样做。

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

Resource Timing 中的渲染阻塞状态

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,可让浏览器控制何时发送信标。信标是发送到后端服务器的一组数据,而不会收到特定响应。通常希望在用户访问网页结束时发送这些请求,但是现在正是执行“send”调用的好时机。此 API 可将发送委托给浏览器本身,因此可在页面卸载或隐藏页面时支持信标,而开发者无需在正确的时间实现发送调用。

此试用版预计会一直持续到 Chrome 109。点击此处注册试用

Permissions-Policy:卸载

此功能允许网页禁止运行卸载事件处理脚本。目的是让已移除所有卸载处理程序的网站能够避免意外添加新的处理程序。这有助于网站迁移卸载事件处理脚本,从而提高 BFCache 命中率

此试用版预计会一直持续到 Chrome 109。点击此处注册试用

弃用和移除

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

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

预期 - CT

Expect-CT 是一个 HTTP 标头,可让网站在强制执行证书透明度政策之前选择启用这一功能。它还具有报告功能,可帮助开发者发现 CT 配置错误。

Expect-CT HTTP 标头旨在帮助重要网站改用通用证书透明度 (CT) 或生成报告,以便在 Chrome 强制要求所有公开网站采用 CT 之前,增强安全性。不过,Expect-CT 现已失去实用性。Chrome 目前要求在所有公开网站上启用 CT,因此 Expect-CT 不再具有安全价值。没有任何其他浏览器实现 Expect-CT,因此移除它并不存在互操作性问题。