> Linux新闻 >

Chrome 97 测试版发布,引入 WebTransport 协议框架等大量新特性

11 月 18日 ,谷歌公布了 Chrome 97 测试版的新特性,这些更改适用于适用于 Android、Chrome OS、Linux、macOS 和 Windows 的最新 Chrome 97 测试版本。
Chrome 97 测试版的新特性如下:

自动展开详细信息元素
现在可以搜索封闭细节的元素,且可以链接到它们。使用页内查找(find-in-page)、滚动到文本片段(ScrollToTextFragment)和元素片段导航(element fragment navigation)时,这些隐藏的元素也会自动展开。

通过响应标头推送传递内容安全策略
之前 Chrome 用了错误的所有者文档内容安全策略,现在专职工作者由内容安全政策管理。

CSS
新的 font-synthesis 属性
font-synthesis CSS 属性控制当字体族在缺少斜面(oblique)、粗体( bold)和小型大写字母( small-caps)字体时,是否允许用户代理合成这三种字体。如果没有这个属性,一些没有必需变体的字体族的网页可能会有不自然的字体。

transform: perspective 支持 (none)参数
perspective() 函数现在支持使用 'none' 作为参数,在动画的一个端点是单位矩阵的情况下,更容易使用perspective() 函数构建动画。

新的键盘 API 特性策略
Chrome 支持新的dkeyboard-map值,Keyboard.getLayoutMap() 与代码结合使用可以识别不同键盘布局(如英语和法语)的按键,此方法在 iframe 元素中不可用,某些无法使用键盘 API 的 Web 应用程序(Excel、Word 和 PowerPoint)的体系结构也现在可以使用。

新的 HTMLScriptElement.supports() 方法
HTMLScriptElement.supports() 方法提供了一种统一的方法来检测使用脚本元素的新特性。不过目前还没有决定好 HTMLScriptElement的type 的 type 属性可以使用哪些类型。关于此部分的内容可以参阅以下几个使用脚本元素的新功能提案:

https://github.com/WICG/import-maps/
https://github.com/jeremyroman/alternate-loading-modes/blob/main/triggers.md#speculation-rules https://github.com/WICG /resource-bundles/
表单提交的换行规范化
表单条目中的换行符现在与 Gecko 和 WebKit 一样规范化,解决了长期存在的互操作性问题,即 Gecko 和 WebKit 规范化换行符较晚,而 Chrome 较早进行。从 Chrome 97 开始,早期规范化被删除,后期规范化扩展到所有编码类型。

标准化现有的客户端提示命名(Client Hint Naming)
Chrome 97 通过 sec-ch- 前缀来标准化客户端提示的名称,受影响的客户端提示是 dpr、width、viewport-width、device-memory、rtt、downlink、和ect。Chrome 97 还在支持这些客户端提示。不过早晚会删除这个功能,建议开发人员做好准备。

WebTransport
WebTransport 是一个协议框架,它使受 Web 安全模型约束的客户端能够使用安全的多路复用传输与远程服务器进行通信。

目前,Web 开发者有两个用于与远程服务器进行双向通信的 API:WebSockets 和 RTCDataChannel。

WebSockets 是基于 TCP 的,因此具有 TCP 的所有缺点(线头阻塞,缺乏对不可靠数据传输的支持),不适合对延迟敏感的应用程序。
RTCDataChannel基于流控制传输协议(SCTP),没有上述缺点;然而,它被设计用于对等环境,这导致它在客户端-服务器设置中的使用相当低。
WebTransport 提供了一个客户端 - 服务器 API,支持不可靠和可靠数据的双向传输,使用类似 UDP 的数据报和可取消的流。WebTransport 调用在 DevTools 的 Network 面板中可见,并在 Type 列中标识。

有关更多信息,请参阅使用 WebTransport 进行试验。

JavaScript
Chrome 97 包含 V8 JavaScript 引擎最新的 9.7 版本。可以在 V8 发行说明中找到最新功能的完整列表。

Array 和 TypedArray 已支持 findLast() 和 fileLastIndex()静态方法。这些函数类似于 find() 和 findIndex(),不过从数组的末尾进行搜索,而不是开始。

弃用和删除
删除 WebRTC 的 SDES 密钥交换
自 2013 年以来,WebRTC 的 SDES 密钥交换机制已在相关 IETF 标准中声明为“不支持”,IETF 已宣布 SDES 规范具有历史意义。近年来,它在 Chrome 中的使用量显着下降,因此 Chrome 97 将它删除。

在第三方上下文中删除 WebSQL
第三方上下文中的 WebSQL 现在已删除。Web SQL 数据库标准于 2009 年 4 月首次提出,并于 2010 年 11 月放弃。Gecko 从未实现此功能,WebKit 在 2019 年就已经弃用了它。

删除 SDP 的计划 B
用于在 WebRTC 中建立会话的会话描述协议 (SDP) ,在 Chromium 中使用两种不同的方言实现:统一计划和计划 B(Unified Plan and Plan B)。计划 B 不能跨浏览器兼容,因此删除。

公告原文:https://blog.chromium.org/2021/11/chrome-97-webtransport-new-array-static.html (责任编辑:IT)