Chrome 109 Beta 版

MathML、getDisplayMedia() 的条件聚焦、Android 上的源私有文件系统等。

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

CSS

@font-face 规则内的字体描述符提供自动范围支持

可变字体让用户能够使用 font-weightfont-stylefont-stretch 来选择字体的粗细、倾斜度或宽度@font-face 规则内的描述符。CSS 工作组为这些描述符添加了新值 auto,它现在是初始值。此值在 109 中实现,以符合新规范。

CSS lh 长度单位

lh CSS <length> 单位相当于对其使用了行高属性的计算值。这样一来,就可以为 <textarea> 指定相当于预期文本行数的高度。

CSS hyphenate-limit-chars 属性

hyphenate-limit-chars 属性用于指定带连字符的字词中的最少字符数。在使用断字功能时,字词中、连字符之前或连字符后的最佳字符数下限可能因网页的设计或语言而异。此属性支持更精细地控制断字,从而在网络上提供更好的排版效果。当默认设置不是最佳时,此设置对国际网页也有所帮助。

对齐布局前对齐边框、轮廓和列规则宽度

目前,Blink 会在绘制时贴靠边框宽度。这可能会导致父元素的边框和子元素的背景之间产生可见的 1px 间隙(当边框在绘制过程中向下舍入时)。这是因为贴靠底板值取整,但布局会将其向上舍入来计算子元素的位置(例如,边框宽度设为 10.75 像素,绘制时四舍五入为 10px,布局时四舍五入为 11)。通过进行此更改,Blink 将表现得像 Gecko 和 WebKit,从而改善互操作性。

MathML

Chrome 109 支持 MathML Core,这是一种用于描述嵌入在 HTML 和 SVG 中的数学表示法的语言。MathML 以与 OpenType MATH 兼容的 CSS 方式呈现,并通过平台无障碍功能 API 公开。MathML 样式由 CSS 功能(包括专用于数学布局的功能)启用:

math-depth 属性。 math-shift 属性。 math-style 属性。 display 属性的 mathmath font-family 名称 text-transform 属性的 math-auto 值。

MathMLElement 接口提供了一种在脚本中操作 MathML 的便捷方式。

Web API

Android Chrome 上的安全付款确认

Android 版 Chrome 109 支持安全付款确认 (SPC)。SPC 是一种提议的网络标准,允许客户使用平台身份验证器(通常通过指纹传感器等设备的屏幕解锁功能激活)向信用卡发卡行、银行或其他付款服务提供商进行身份验证。这通常发生在付款身份验证协议(例如 EMV 3-D SecureOpen Banking)中。例如,EMV 3-D Secure 在其 v2.3 规范版本中支持 SPC。我们之前曾宣布,已针对 macOS 和 Windows 版 Google Chrome 推出 SPC,并针对注册身份验证提供了开发者指南。

条件聚焦

条件焦点通过添加可作为参数传入的 CaptureController 对象来扩展 getDisplayMedia()。此对象公开了 setFocusBehavior() 方法。通过调用此方法,应用可以控制在捕获开始时是否聚焦捕获的标签页或窗口,或者捕获页面是否应保留焦点。

MediaTrackSupportedConstraints.suppressLocalAudioPlayback

同事们一般会聚在会议室中,这样他们中的一人可以通过笔记本电脑向配备专用显示器和扬声器的会议室内会议解决方案进行演示。演讲者通常会将自己的笔记本电脑静音,并使用音量较大的外部扬声器;这也能确保音频与视频保持同步。suppressLocalAudioPlayback 音频约束条件可在此处节省时间。如果设置为 true,则表示浏览器应在捕获开始时停止将音频中继到本地扬声器。

Resource Timing API 中的 HTTP 响应状态代码

PerfomanceResourceTiming 中添加一个字段,用于指示提取资源时的 HTTP 响应状态。通过这种方式,开发者可以使用 Resource Timing API 直接判断资源是否加载失败。

Android 上的原始私有文件系统 (OPFS)

Chrome 109 支持 Android 上 File System Access API 的源私有文件系统 (OPFS) 部分。这包括所有 File System Access API Surface,不含 show{OpenFile, SaveFile, Directory}Picker() 方法和 Drag-and-Drop API 集成。借助 OPFS 上的 File System Access API,网站可以访问其每个源站的私有文件系统,并且能够通过 FileSystemSyncAccessHandle 执行文件操作,同时性能得到提升。

由推测规则 API 触发的同网站跨源预渲染

之前,Chrome 会启动由推测规则 API 触发的同源预渲染。Chrome 109 扩大了覆盖范围,还允许触发同网站跨源网页。此预渲染将通过凭据和存储空间访问权限完成,但此类预渲染目标需要使用 Supports-Loading-Mode: credentialed-prerender 标头选择启用。

WebTransport BYOB 读取器

为 Web Transport 支持 BYOB(自带缓冲区)读取器,以允许读取开发者提供的缓冲区。BYOB 读取器可以最大限度地减少缓冲区副本,并减少内存分配。

正在进行源试用

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

往返缓存 NotRestoredReason API

NotRestoredReason API 将通过 PerformanceNavigationTiming API 报告未从框架树结构中的 BFcache 提供页面的原因列表。

注册 NotRestoredReason API 源试用

针对子资源的专用网络访问预检请求

该功能会在针对子资源的任何专用网络请求之前发送 CORS 预检请求,以请求目标服务器的明确权限。专用网络请求是从公开网站向专用 IP 地址或 localhost 发出的任何请求,或从专用网站(例如内网)发送到 localhost 的任何请求。发送预检请求可降低针对专用网络设备(如路由器)的跨站请求伪造攻击的风险,这些设备通常未准备好抵御这种威胁。

注册用于子资源源试用的专用网络访问预检请求

弃用和移除

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

弃用

此版本的 Chrome 没有新的弃用功能。

移除

此版本的 Chrome 移除了一项功能。

移除“Event.path

Event.path 是一种非标准 API,它会返回事件路径,此路径是将调用监听器的对象数组。只有 Blink 支持此功能,从而导致 Web 兼容性问题。Web 开发者应改用等效的标准 API Event.composedPath(),此 API 会返回相同的结果。