Chrome 107 Beta 版

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

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

CSS grid-template 属性插值

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

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

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

DisplayMediaStreamConstraints.selfBrowserSurface

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

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

DisplayMediaStreamConstraints.surfaceSwitching

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

通过“改为分享此标签页”按钮,用户可以无缝切换要分享的标签页,而无需再次选择视频会议标签页,也无需点击按钮以再次发起getDisplayMedia(),也无需从冗长的标签页列表中选择新的标签页。此行为有条件地公开,因为并非所有 Web 应用都能够处理此行为。

MediaTrackConstraintSet.displaySurface

调用 getDisplayMedia() 时,浏览器会为用户提供一个显示界面选项:标签页、窗口或显示器。借助 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,可让浏览器控制何时发送信标。信标是发送到后端服务器但不需要特定响应的一组数据。我们通常希望在用户访问页面结束时发送这些内容,但现在正好赶上这种“发送”的时机调用。此 API 将发送任务委托给浏览器本身,因此可以在页面卸载或隐藏页面时支持信标,而无需开发者在正好正确的时间实现发送请求。

该试用版预计会持续到 Chrome 109。请在此处注册试用

Permissions-Policy:unload

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

该试用版预计会持续到 Chrome 109。请在此处注册试用

弃用和移除

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

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

预计 - CT

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

Expect-CT HTTP 标头旨在帮助我们过渡到通用证书透明度 (CT) 的强制执行模式,允许高价值网站选择启用 CT 或生成报告,以便在所有公开网站上要求强制执行 CT 之前提高安全性。不过,Expect-CT 已经失去效用。Chrome 目前要求在所有公开网站上进行 CT,因此 Expect-CT 不再有安全价值。其他浏览器尚未实现 Expect-CT,因此移除它不会产生互操作性问题。