Chrome 154 测试版

发布时间:2026 年 9 月 2 日

除非另有说明,否则以下变更适用于 Android、ChromeOS、Linux、macOS 和 Windows 的最新 Chrome Beta 版渠道版本。如需详细了解这些功能,请使用提供的链接或访问 ChromeStatus.com。截至 2026 年 9 月 2 日,Chrome 154 处于 Beta 版阶段。您可以从 Google.com 下载适用于桌面设备的最新 Beta 版,也可以从 Google Play 商店下载适用于 Android 设备的最新 Beta 版。

CSS 和界面

CSS scroll-marker-group 种交通方式

scroll-marker-group 属性已得到增强,可支持以下模式:

  • links:生成的 ::scroll-marker-grouplinks 模式运行,功能类似于导航列表。如果省略,则这是默认模式。
  • tabs:生成的 ::scroll-marker-grouptabs 模式运行,功能类似于标签页列表。

每种模式都会更改 ::scroll-marker-group::scroll-marker 的焦点顺序和无障碍功能行为,遵循 WAI-ARIA 模式:

  • 链接模式(默认):模拟标准导航标记,并与 fragment 锚点相结合。::scroll-marker-group 承担 navigation 角色,::scroll-marker 元素承担 link 角色。所有 ::scroll-marker 元素都是顺序标签页停止位置。当链接标记处于活动状态时,焦点会移至目标元素。
  • 标签页模式:复制标签页模式,并作为标签页式轮播界面的基础。::scroll-marker-group 被分配了 tablist 角色,::scroll-marker 元素充当 tab 角色,而原始元素则获得 tabpanel 角色。只有处于活动状态的 ::scroll-marker 充当 Tab 键停止位,使用箭头键可在标记之间切换。闲置标签页中的内容会从无障碍树中隐藏。

CSS text-decoration-inset

text-decoration-inset CSS 属性用于控制下划线、上划线和删除线装饰与文本运行边缘的内边距或外边距。它支持 auto、长度和百分比值,包括用于设置起始偏移量和结束偏移量的单值和双值语法。这样一来,开发者就可以调整装饰间距,并使用原生文本装饰来创建显示效果,而无需使用背景渐变或其他元素。

CSS text-decoration-skip-spaces

text-decoration-skip-spaces CSS 属性用于控制文本装饰线(例如下划线、上划线和删除线)是否跳过空格字符。这样一来,您就可以防止装饰绘制在空格下方。

向 Worker 上下文公开 CSSStyleValue 层次结构

CSS 类型化对象模型规范将 CSSStyleValue 层次结构公开给 worker 全局范围 ([Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]),但 Blink 之前仅将 CSSStyleValueCSSKeywordValueCSSNumericValueCSSUnitValueCSSUnparsedValue 公开给 Window 和 worklet。因此,这些构造函数在 Worker 上下文中未定义。Chrome 154 在工作器中公开了这些构造函数,与规范和其他浏览器引擎保持一致。

FontFace width 属性和 font-width 描述符

FontFace 上的 width 属性和 @font-face font-width 描述符作为 stretchfont-stretch 的别名公开。这使 Chromium 符合更新后的 CSS 字体加载和 CSS 字体 4 规范。您可以使用 FontFace.width 和 CSS font-width 检查或初始化字体的宽度,也可以使用 stretchfont-stretch

改进了对弹出式窗口和对话框的轻触关闭

改进并简化了对弹出式窗口和对话框的轻触即关闭行为。 轻关闭是指点击弹出式窗口或对话框外部时关闭该窗口的行为。这些改进可确保触摸屏上的滚动手势和右键点击不再触发轻触即关闭操作。

浏览器现在使用 click 事件来触发轻触即关闭,而不是 pointerdownpointerup 事件的组合。

响应式尺寸 <iframe>

允许网站选择启用自适应尺寸的 iframe。这样可以将父文档中的 <iframe> 元素调整为 iframe 文档的布局溢出大小,从而避免子文档中出现滚动。

JavaScript

迭代器 includes

一项 TC39 提案,为迭代器添加了 includes() 方法,让您可以检查迭代器是否会生成给定的值,类似于 Array.prototype.includes()

Web API

WebSocket 构造函数添加了选项包

添加了对传递选项字典 (WebSocketInit) 作为 WebSocket 构造函数的第二个实参的支持。选项字典支持 protocols 选项,可用于指定子协议(与现有的 protocols 实参类似),并可作为未来选项的扩展点。

之前,此内容写为:

const socket = new WebSocket("wss://example.com:8080", "soap");

进行此更改后,还可以将其写为:

const socket = new WebSocket("wss://example.com:8080", { protocols: "soap" });

WebCrypto 中的算法更新

向 Web Cryptography API 中可用的加密算法集添加了后量子加密和对称 AEAD 算法。这样,您就可以访问浏览器提供的、由 NIST 标准化的抗量子加密算法的实现:

  • ML-KEM (768、1024)
  • ML-DSA (44, 65, 87)
  • ChaCha20-Poly1305
  • X-Wing

对 Background Fetch 强制执行 CORS

Background Fetch API 现在强制执行跨域资源共享 (CORS)。

此次更新使 Chromium 的实现符合 Background Fetch 规范的设计意图。这确保了 Background Fetch 请求遵循相同的安全政策,例如本地网络访问权限检查,防止网站通过使用 Background Fetch(而非常规 Fetch)来绕过 CORS 和其他安全政策检查。

Fetch API:将原因从 AbortController 转发到 fetch Response

如果提供了中止原因,则会将其公开给 Response 对象及其 ReadableStream 的方法,而不仅仅是 fetch promise。这使 Chrome 符合标准,可在所有预期位置显示开发者提供的中止原因。

针对 Background Fetch 的本地网络访问限制

Background Fetch 请求要求 Service Worker 的源具有必要的本地网络访问 (LNA) 权限,才能向本地或环回服务器发送请求。

这使得 Chromium 的实现与 后台获取规范 的意图保持一致,该规范规定请求将通过获取规范,并应用相同的安全策略。这可防止网站通过使用 Background Fetch 而不是常规 Fetch 来绕过 LNA 检查。

对于企业,您可以像处理来自服务工作线程的常规 Fetch API 请求一样,使用现有的 LNA 企业政策:

更新了 HTML 插播和流式传输方法

公开了多种 HTML 设置方法,可为将标记动态插入现有文档提供一致的方法:

  • 以 HTML 作为实参的位置方法(before()after()append()prepend()replaceWith()),用于替换 insertAdjacentHTML()
  • 返回 WritableStream 的流式方法(streamAppendHTML()streamAppendHTMLUnsafe() 和相关方法)。
  • {runScripts} 作为 SetHTMLUnsafeOptions 的一部分传递,匹配 createContextualFragment 的行为。
  • 在可信类型中支持 createParserOptions,允许可信类型替换脚本模式和清理器。

安全支付确认:语言区域验证

更新了“安全付款确认”locale 数据字段,以在字段中提供的任何语言标记与“安全付款确认”对话框使用的语言不匹配时返回 NotSupportedError DOMException。如果未设置或为空,则跳过此验证。

这有助于使提供给安全付款确认的数据语言与对话框的语言相匹配。

支持 WebSocket 的 targetAddressSpace 选项

添加了对在 WebSocket 构造函数中传递 targetAddressSpace 选项的支持。这样,您可以指定与公共主机名的 WebSocket 连接应被视为前往“本地”或“环回”目标,与 Fetch API 中的现有支持相匹配。主要用途是在连接到不支持 HTTPS 的本地服务器时绕过混合内容限制,因为本地网络访问权限需要安全上下文。

例如,连接到本地服务器的公共网站可以使用主机名,而无需手动配置确切的专用 IP 地址:

const ws = new WebSocket("ws://local-server.example", { targetAddressSpace: "local" });

这会将 WebSocket 连接标记为指向本地地址,从而在安全环境中运行时绕过混合内容屏蔽。用户必须授予网站本地网络权限,WebSocket 连接才能成功,并且主机名必须解析为本地 IP 地址(否则将被阻止)。

此功能基于添加到 WebSocket 构造函数的 options 字典构建。

WebGPU:WGSL 片段深度

添加了向 WGSL 中的 @builtin(frag_depth) 提供 lessgreater 修饰符的功能。

使用不带修饰符的 @builtin(frag_depth) 可能会因在绘制调用中停用早期 Z 优化而导致性能下降。新的修饰符允许显式设置缓冲区模式,从而可以应用早期 Z 优化。

Window Shape API

窗口形状 API 允许 ChromeOS 上被列入允许列表的 隔离 Web 应用 拥有自定义窗口形状。通过启用非矩形和非连续窗口布局,开发者可以打造与原生应用外观高度契合的 widget、悬浮面板和叠加层等体验。window.setShape() 方法要求窗口必须处于 unframed 显示模式,并且还必须获得 window-management 权限。

管理员可以使用现有的窗口管理政策来管理此功能:

新的源试用

在 Chrome 154 中,您可以选择加入以下新的源试用

私密验证令牌

Private Verification Tokens (PVT) 是一种低熵机制,可让网站将用户在常规浏览模式下建立的信任转移到无痕浏览模式,从而减少 CAPTCHA 和质询给用户带来的不便。PVT 在常规浏览会话期间发放,并在无痕浏览模式下兑换。