稳定版发布日期:2026 年 2 月 10 日
除非另有说明,否则以下变更适用于 Android、ChromeOS、Linux、macOS 和 Windows 的 Chrome 145 稳定版发布。
CSS 和界面
添加对 text-justify CSS 属性的支持
应用 text-align: justify 时,您可以使用 text-justify 属性控制文本的对齐方式。例如,即使在英文文本中,您也可以通过扩大字符间距来强制实现两端对齐。
跟踪 bug #40321528 | ChromeStatus.com 条目 | 规范
为 CSS letter-spacing 和 word-spacing 属性启用百分比值
为 letter-spacing 和 word-spacing CSS 属性启用百分比值,如 CSS 文本模块级别 4 规范中所定义。百分比值是相对于空格字符 (U+0020) 的预先测量值计算的。这可让您更灵活地控制排版,尤其是在自适应设计中,文本间距需要适应不同的视口和字体大小。
跟踪 bug #327740939 | ChromeStatus.com 条目 | 规范
针对高 border-radius 改进了边框半径阴影边缘计算
此变更可确保近圆形元素(其中 border-radius 接近 50%)上的阴影和剪切边界与曲边的视觉轮廓完全一致。
这样可以更一致地渲染复杂的圆角形状,从而消除高半径值带来的视觉差异。border-radius 调整系数可确保小半径的边角看起来清晰锐利,但随着半径值接近 50%,该系数会逐渐减弱。
这也适用于非圆形轮廓(使用 corner-shape),这些轮廓现在使用相同的半径调整机制。
跟踪 bug #448651073 | ChromeStatus.com 条目 | 规范
多列的列换行
添加对 column-wrap 和 column-height CSS 属性的支持(来自多列布局模块第 2 级)。
这样可以实现纵向列布局,甚至二维列布局。列可以具有明确的受限高度,而不是从多列容器的 content-box 高度派生而来。当一行中的所有列都已填满时,它们会换到新的一行,而不是在内嵌方向上创建溢出列。
跟踪 bug #403183884 | ChromeStatus.com 条目 | 规范
向 GlobalEventHandlers 公开 onanimationcancel 事件
CSS 动画级别 1 扩展了 HTML 规范中定义的 GlobalEventHandlers 接口,声明了四个新的事件处理程序:onanimationstart、onanimationiteration、onanimationend 和 onanimationcancel。只有 onanimationcancel 事件处理脚本从 GlobalEventHandlers IDL 中缺失。
跟踪 bug #464010037 | ChromeStatus.com 条目 | 规范
可自定义的选择列表框
此功能将可自定义的选择支持扩展到列表框渲染模式,包括列表框模式下的单选和多选。
列表框呈现模式会在流中或页面中呈现 select 元素,而不是通过单独的按钮和弹出式窗口呈现。您可以使用 multiple 或 size 属性选择在各个平台上启用列表框呈现模式,例如 <select multiple> 或 <select size=4>。当 appearance: base-select CSS 属性应用于具有这些属性的 select 元素时,可改善渲染和输入行为。
此功能不支持为多选弹出式窗口自定义 select,但稍后会支持。您必须设置以下属性才能获得多选弹出式窗口:<select multiple size=1>。
跟踪 bug #357649033 | ChromeStatus.com 条目 | 规范
focus 上的 focusVisible 选项
调用 focus() 方法时,您可以在 FocusOptions 字典中提供 focusVisible 布尔值。如果为 true,则始终在新聚焦的元素周围绘制聚焦环,并且该聚焦环与 :focus-visible 伪类匹配。如果为 false,则不会绘制焦点环,并且 :focus-visible 不匹配。
如果缺少此属性,用户代理会自行决定是否应绘制焦点环,并相应地匹配 :focus-visible 伪类。
跟踪 bug #462191849 | ChromeStatus.com 条目 | 规范
在强制颜色模式下启用单色表情符号渲染。
此变更更新了强制颜色模式下的 Chromium 表情符号呈现行为。
在计算值解析期间,如果表情符号的 font-variant-emoji 值计算结果为 normal 或 unicode,则会使用其单色字形(如果可用)进行渲染。
因此,Chromium 会抑制彩色表情符号的渲染,从而确保表情符号完全参与强制配色模式流水线,并遵循系统高对比度颜色。强制颜色模式之外的行为保持不变。
跟踪 bug #420857717 | ChromeStatus.com 条目 | 规范
非根滚动器上的滚动效果
此示例展示了非根滚动容器上的弹性过度滚动效果。当嵌套的可滚动元素达到其滚动边界时,过滚动功能会应用于该元素,而不仅仅是根滚动器。这样可以减少对自定义 JavaScript 变通方法的需要,并且可以使用 overscroll-behavior 按元素进行控制。
跟踪 bug #41102897 | ChromeStatus.com 条目 | 规范
功能
在 Android 上显示真实窗口位置
Android 版 Chrome 使用 window.screenX、window.screenY、window.outerWidth 和 window.outerHeight 准确报告浏览器窗口的位置和大小。
Chrome 之前错误地假定 Android 上的所有浏览器窗口都从坐标 (0, 0) 开始。对于使用自由窗口模式的 Android 平板电脑,此假设并不准确。网站在通过 window.screenX 和 window.screenY 查询窗口的屏幕位置时,始终收到 0。这些字段以全局工作区坐标空间存储窗口左上角的坐标。
此外,Android 版 Chrome 错误地假设浏览器窗口的外部尺寸等于网站视口的内部尺寸。
window.screenX 和 window.screenY 具有别名:window.screenLeft 和 window.screenTop。
跟踪 bug #417632037 | ChromeStatus.com 条目 | 规范
JavaScript
更新/插入
这是一项针对 Map.prototype.getOrInsert、Map.prototype.getOrInsertComputed、WeakMap.prototype.getOrInsert 和 WeakMap.prototype.getOrInsertComputed 的 ECMAScript 提案。
跟踪 bug #434977728 | ChromeStatus.com 条目 | 规范
崩溃报告键值对 API
新的键值对 API window.crashReport 由每个文档的映射提供支持,该映射用于保存 Chrome 附加到崩溃报告的数据。
如果网站发生任何渲染器进程崩溃,放置在此 API 的后备映射中的数据将通过 CrashReportBody 发送。这样一来,您就可以调试应用中的哪些特定状态可能会导致给定的崩溃。
跟踪 bug #400432195 | ChromeStatus.com 条目 | 规范
默认缩短用户代理字符串
从 Chrome 145 开始,Chrome 会移除 UserAgentReduction 政策。此政策用于控制 Chrome 是否发送精简版或完整版 User-Agent 字符串。
为了增强用户隐私保护并降低被动跟踪能力,Chrome 从版本 110 开始默认减少用户代理标头中包含的信息。UserAgentReduction 政策是为企业管理此过渡而提供的临时措施。
网站访问浏览器和设备信息的推荐机制是用户代理客户端提示 (UA-CH)。UA-CH 要求网站主动请求特定信息,与旧版 User-Agent 字符串相比,这种方法更能保护隐私。如需了解详情,请参阅 web.dev 文章迁移到用户代理客户端提示。
从 Chrome 145 开始,UserAgentReduction 政策不再生效。Chrome 默认发送精简的用户代理字符串。依赖此政策来接收完整(旧版)User-Agent 字符串的系统或应用可能无法再接收到预期的详细信息。
Navigation API:在 navigation.transition 中公开目的地
NavigationTransition 具有一个 from 属性,用于公开导航的旧网址。公开 to(一个 NavigationDestination)即可完成此操作。当使用预提交处理程序时,此属性尤其有用,因为在预提交期间,当前网址尚未切换到目标网址。
navigation.transition 仅针对拦截的导航(即同源文档发起的导航)公开。
跟踪 bug #447171238 | ChromeStatus.com 条目 | 规范
安全付款确认:浏览器绑定密钥
这会在安全付款确认断言和凭据创建之上添加额外的加密签名。相应的私钥未在设备之间同步。这有助于您满足支付交易的设备绑定要求。
跟踪 bug #377278827 | ChromeStatus.com 条目 | 规范
安全付款确认:用户体验更新
更新了 Android Chrome 上 SPC 对话框的界面元素。
除了用户体验演示之外,还添加了以下内容:
- 商家可以提供与付款相关的付款实体徽标的可选列表,这些徽标会显示在用户体验中。
- 系统会根据用户是否要在不使用 SPC 的情况下继续交易或取消交易,向商家返回不同的输出状态。在这两种情况下,都只会发送一个输出状态。
- 向支付工具添加了一个新的支付详情标签字段,以便在 SPC 中以两行显示文本。
跟踪 bug #405173922 | ChromeStatus.com 条目 | 规范
Cookie Store API maxAge 属性
您可以在使用 Cookie Store API 设置 Cookie 时指定 maxAge。
Cookie 过期时间已可使用 expires 属性进行配置,但 maxAge 提供了一种更惯用的选项,并使 Cookie Store API 与 document.cookie 和 Set-Cookie HTTP 标头提供的选项保持一致。
跟踪 bug #430926231 | ChromeStatus.com 条目 | 规范
针对非折叠选择项的删除命令的 InputEvent 类型
此报告可针对所选文本准确报告删除快捷键的 inputType 值。当在 contenteditable 元素中使用 Ctrl+Backspace 或 Ctrl+Delete 等删除命令并选择文本时,beforeinput 和 input 事件会报告 deleteContentBackward 或 deleteContentForward,而不是 deleteWordBackward 或 deleteWordForward。这样一来,您就可以正确了解发生了哪些编辑操作,并实现可靠的撤消、重做或自定义编辑行为。
跟踪 bug #41423062 | ChromeStatus.com 条目 | 规范
clipboardchange 事件的粘性激活
这需要用户进行粘性激活或拥有 clipboard-read 权限才能触发 clipboardchange 事件,从而防止未经授权的剪贴板监控。
clipboardchange 事件相对较新(Chrome 144),并且对面向 Web 的更改极少。在大多数情况下,发生剪贴板监控时,粘性用户激活或 clipboard-read 权限已存在(例如,在远程桌面客户端中)。
跟踪 bug #468821937 | ChromeStatus.com 条目 | 规范
多媒体
通过 VideoFrame.metadata() 从 WebRTC 视频帧公开 rtpTimestamp
添加了一个 VideoFrame.metadata() 方法,用于返回包含 rtpTimestamp 字段的字典(如果底层 VideoFrame 在其原生元数据中包含此字段)。否则,返回一个空字典。只有来自 WebRTC 源的视频帧才附加了 rtpTimestamp 元数据。
其他元数据字段已存在于原生实现中,并且可能会随着时间的推移向 JavaScript 公开,如提议的规范中所述。
存储
IndexedDB:SQLite 后端(内存上下文)
Chromium 的 IndexedDB 实现已基于 SQLite 重写,以替换之前使用 LevelDB 和扁平文件混合的实现。Web API 没有变化。
这有助于提高可靠性,并在一定程度上提升性能。
此设置仅适用于内存中的上下文,例如 Chromium 和 Google Chrome 中的无痕模式。这样可以限制任何新 bug 的影响,并推迟迁移已持久保存到磁盘的现有数据的需求。
跟踪 bug #436880911 | ChromeStatus.com 条目 | 规范
性能
让 Web 应用了解双峰性能时间
PerformanceNavigationTiming 对象上的新 confidence 字段可让您辨别导航计时是否代表您的 Web 应用。
跟踪 bug #1413848 | ChromeStatus.com 条目 | 规范
向性能条目添加了 presentationTime 和 paintTime
这会在元素时间、LCP、长动画帧和绘制时间中公开 paintTime 和 presentationTime。
paintTime 表示渲染阶段结束且浏览器开始绘制阶段的时间。presentationTime 表示“像素到达屏幕”的时间,这在一定程度上取决于具体实现。
此功能条目省略了活动时间,该时间会单独设置。
跟踪 bug #378827535 | ChromeStatus.com 条目 | 规范
LayoutShift API 中 CssPixels 的使用
此功能会更改 LayoutShift API 中的归因数据(prevRect 和 currentRect),使其以 CSS 像素而非物理像素进行报告。此行为与其他布局相关 API 不一致,因为其他布局相关 API 都使用 CSS 像素。此变更可提高一致性,简化您的使用流程,并与调试和工具中的预期单位保持一致。
跟踪 bug #399058544 | ChromeStatus.com 条目 | 规范
安全
设备绑定会话凭证
借助设备绑定会话凭据 (DBSC),网站可以将用户的会话绑定到其特定设备,从而使被盗的会话 Cookie 难以在其他机器上使用。
Origin API
源是 Web 实现的基本组成部分,对于用户代理维护的安全边界和隐私边界至关重要。HTML 和网址之间的概念界定明确,并包含广泛使用的相邻概念,例如网站。
不过,来源不会直接向您显示。虽然各种对象上都有各种来源 getter,但每个 getter 返回的都是来源的 ASCII 序列化,而不是来源本身。这会带来一些负面影响。 实际上,在处理序列化来源时,您尝试进行同源或同网站比较往往会出错,从而导致出现漏洞。从哲学角度来看,这似乎是一个缺失的安全原语,您很难准确地进行 Polyfill。
在 Chrome 145 中,Chrome 通过引入封装来源概念的 Origin 对象来弥补平台中的这一差距,并提供比较、序列化和解析等实用方法。
跟踪 bug #434131026 | ChromeStatus.com 条目 | 规范
本地网络访问权限拆分
这是对本地网络访问 (LNA) 限制的增强,其中 Chrome 将所需的权限从一个本地网络访问权限拆分为两个单独的权限。
旧权限为 local-network-access。新权限为 local-network(针对向本地地址空间中的 IP 发出的 LNA 请求)和 loopback-network(针对向环回地址空间中的 IP 发出的 LNA 请求)。
旧权限将保留为别名,并继续适用于 permissions.query 和 Permissions Policy。企业政策将继续以相同的方式运作;我们稍后会添加更新、更精细的企业政策。
跟踪 bug #465491626 | ChromeStatus.com 条目 | 规范
Trusted Types 规范对齐
Trusted Types 最初于 2019 年在 Chromium 中实现并推出,此后已在许多网站中得到应用。最近,其他浏览器供应商也对此产生了兴趣。
Trusted Types 规范是与原始实现一起作为“猴子补丁”规范共同编写的。随着其他人尝试实现相同的规范,它获得了新的关注。它已“上游化”到 HTML + DOM(以及少量 CSP)。在此过程中,系统会发现并修正各种不一致之处。其中一些修复可能对开发者可见。目的是更新实现,使其与上游到 HTML 中的规范保持一致。
与此同时,WebKit 已推出更新后的 Trusted
Types 规范的实现,这让 Chrome 确信此更新具有高度的 Web 兼容性。
跟踪 bug #330516530 | ChromeStatus.com 条目 | 规范
图形
WebGPU:subgroup_uniformity 功能
这会为均匀性分析添加一个新范围,并更改每个范围中检查的语言部分,以便在更多情况下将子群组功能视为均匀。
跟踪 bug #454653380 | ChromeStatus.com 条目 | 规范
独立式 Web 应用
WebRequest.SecurityInfo(Controlled Frame)
此功能为 ControlledFrame 引入了 WebRequest.SecurityInfo API。它允许 Web 应用拦截向服务器发出的 HTTPS、WSS 或 WebTransport 请求,检索服务器的证书指纹(由浏览器验证),然后使用该指纹手动验证与同一服务器建立的单独原始 TCP/UDP 连接的证书。这为应用提供了一种确认其正在与正确服务器通信的方法。
跟踪 bug #462114142 | ChromeStatus.com 条目 | 规范
源试用
在 blink 中支持 JPEG XL 解码 (image/jxl)
添加了对在 Blink 中使用 jxl-rs(一种内存安全的纯 Rust 解码器)解码 JPEG XL (image/jxl) 图片的支持。
JPEG XL 是一种现代图片格式,已标准化为 ISO/IEC 18181,具有以下优势:
- 采用渐进式解码,以提升感知到的加载性能。
- 支持广色域、HDR 和高位深度。
- 动画支持。
此实现使用 jxl-rs 而不是 C++ libjxl 参考解码器,以满足 Chromium 的内存安全要求。解码器通过 enable-jxl-image-format 标志和 enable_jxl_decoder build 标志进行门控。
WebAudio:可配置的渲染量子
AudioContext 和 OfflineAudioContext 现在接受可选的 renderSizeHint,这允许用户在传递整数时请求特定的渲染量子大小,在未传递任何内容或传递 default 时使用默认的 128 帧,或者在指定 hardware 时请求 User-Agent 选择合适的渲染量子大小。
弃用和移除
移除对 macOS 上过时虚拟相机的支持
Chrome 会针对其支持的所有 macOS 版本移除对过时虚拟摄像头的支持。
跟踪 bug #461717105 | ChromeStatus.com 条目
移除用于在 BMP 中嵌入 JPEG 或 PNG 的 BMP 扩展程序
Chrome 移除了用于在 BMP 中嵌入 JPEG 或 PNG 的 BMP 扩展程序。