Safari Technology Preview 255 发布说明

Safari Technology Preview 255 发布说明

💡 原文英文,约2900词,阅读约需11分钟。
📝

内容提要

Safari Technology Preview 255 发布,包含多项 WebKit 修复:CSS 修复字体、网格、line-clamp 及浮动布局问题;JavaScript 修复 await 语法与数组字面量求值等;SVG 新增 textPath 的 side 属性并启用内联布局引擎;Web API 新增跨源隔离权限策略及流传输至 AudioWorklet;Web Inspector 新增关键帧动画编辑器、堆栈跟踪弹窗和求值预览。

🔎

延伸解读

CSS 修复聚焦布局与 line-clamp 稳定性

本次更新中 CSS 修复数量最多,尤其集中在 line-clamp 的边界行为:浮动元素、兄弟块、固定高度容器等场景下的截断与省略号位置得到修正。此外,网格布局的固有尺寸计算、百分比行高解析、box-sizing 对容器尺寸的影响等也有修复。对依赖多行截断或复杂网格的页面,这些改动可能减少渲染偏差,但需注意 line-clamp 相关行为仍在持续调整。

JavaScript 引擎修正 await 与求值顺序

JavaScript 部分修复了 await 作为标识符的语法判定问题,以及一元加号改变二元表达式求值顺序、常量数组字面量元素被重复求值等缺陷。这些修复涉及语言语义的边界情况,普通业务代码通常不受影响,但对依赖特定求值顺序或动态生成代码的场景,行为可能更符合规范。开发者可关注涉及 await 的嵌套函数与 catch 参数写法。

Web API 与安全策略的渐进增强

新增跨源隔离 Permissions Policy 特性,并支持将流传输至 AudioWorklet,为需要跨源隔离或实时音频处理的 Web 应用提供更多能力。同时修复了 Cross-Origin-Embedder-Policy 在非安全上下文被忽略、FileSystemHandle 在非安全上下文反序列化等问题,安全边界进一步收紧。使用相关 API 的站点应确认自身运行在安全上下文中。

Web Inspector 增强动画与调试体验

Web Inspector 新增关键帧动画编辑器、堆栈跟踪弹窗和求值预览,并加入 WGSL 语法高亮与 WebGPU 标签更新监测。这些工具改进有助于调试 CSS 动画和 GPU 相关代码。此外还修复了控制台 await 支持、样式面板对 @layer 中 !important 声明的计算、以及源码映射定位错误等问题,日常调试的准确性有所提升。

❓

Q&A

Safari Technology Preview 255 支持哪些 macOS 版本?

Safari Technology Preview 255 支持 macOS Golden Gate 和 macOS Tahoe。

Safari Technology Preview 255 在 CSS 方面修复了哪些主要问题?

修复了 font-family: initial 行为错误、box-sizing: content-box 被忽略、line-clamp 相关多个问题(如容器建立独立格式化上下文、省略号位置、浮动影响等)、网格布局的固有尺寸计算和百分比解析、以及浮动布局和形状外边距等问题。

这个版本对 JavaScript 的 await 语法做了哪些修复?

修复了 catch 参数命名为 await 时在 await 不是标识符的上下文中被拒绝为语法错误的问题;修复了在 async 函数参数中嵌套的非 async 函数里 await 应被视为标识符的问题。

Safari Technology Preview 255 为 SVG 带来了哪些新特性?

新增了对 SVG <textPath> 元素 side 属性的支持,并启用了 SVG 文本的内联布局引擎。

Web Inspector 在这个版本中新增了哪些功能?

新增了 CSS 关键帧动画编辑器、堆栈跟踪弹窗、控制台求值预览、基本 WGSL 语法高亮,以及 WebGPU 设备与管线标签更新的图形插桩。

Web API 方面有哪些新增支持?

新增了对跨源隔离权限策略(cross-origin-isolated Permissions Policy)的支持,以及支持将流传输到 AudioWorklet。

🏷️

标签

➡️

继续阅读