Safari 技术预览版 142 发布说明
Safari 技术预览版 142 现已可供下载,适用于 macOS Big Sur 和 macOS Monterey。如果您已安装 Safari 技术预览版,可在 macOS 的“系统偏好设置”中的“软件更新”面板中进行更新。
此版本涵盖 WebKit 修订版本 289213-290223。
注意:本版本中,标签页组不会同步。
网页检查器
- 元素选项卡
- 源选项卡
CSS 子网格
- 默认启用子网格 (r290111)
- 调整大小时,新增对子网格外边距、边框和内边距的考量 (r290096)
- 新增支持在
grid-template-columns
和grid-template-row
中解析子网格 (r289722) - 更改为将轨道大小从父网格复制到子网格中 (r290007)
- 更改为从父网格继承子网格轴的轨道计数,并将项目放置钳制到该显式网格 (r289986)
- 在外部网格的轨道大小调整算法中包含子网格项目 (r290077)
- 为子网格实现了
getComputedStyle
(r289993) - 修复了网格可能为空的某些场景 (r289437)
- 修复了更新网格间距值时重新计算样式的问题 (r289241)
CSS 容器查询
- 默认启用 CSS 容器查询 (r290025)
- 新增查询容器跟踪,以便在大小更改时使其失效 (r289457)
- 新增支持所有大小特性 (r289838)
- 新增支持在大小查询中使用完整范围表示法 (r290037)
- 新增支持在大小查询中使用范围运算符 (r289789)
- 更改为将不支持轴上的大小查询评估为未知 (r289890)
- 实现了容器名称匹配 (r289617)
- 实现了完整的查询解析器和评估器 (r289742)
- 实现了行内尺寸包含 (inline-size containment) (r289466)
- 实现了容器简写序列化 (r289886)
- 在未渲染的子树中正确匹配容器查询 (r290205)
CSS
- 默认启用 CSS 运动路径 (r290071)
- 默认启用
overscroll-behavior
(r289683) - 更改为不将
transform: perspective(0)
视为恒等操作 (r289903) - 更改为当没有遮罩图像时,返回
none
作为遮罩的计算样式 (r289377) - 修复了点击单选框或复选框标签时
:focus-visible
的问题 (r289521) - 修复了全屏模式下
contain: content
的问题 (r289686) - 修复了切换
contain
时绝对定位布局不正确的问题 (r289527) - 更新了转换为较小色域的颜色空间以执行色域映射的功能 (r289396)
- 更新了同时具有
-webkit-user-select: all
和-webkit-user-drag: element
的元素,使其在仅使用-webkit-user-drag: element
时也能获取快照 (r289544)
Web 动画
- 启用
KeyframeEffect.composite
属性 (r290067) - 新增对 transform 属性的
composite
累积支持 (r289599) - 新增支持在 JS 源动画中使用逻辑属性 (r289216)
- 使具有不同但兼容的
frameRate
值的动画对齐 (r290121) - 允许将
frameRate
作为选项传递给Element.animate()
进行设置 (r290123) - 允许将
frameRate
作为选项传递给document.timeline.animate()
进行设置 (r290125) - 更改为正确处理不可逆矩阵的插值 (r289862)
- 更改为在动画解析和调度期间使用动画
frameRate
(r290003) - 更改
Animation.commitStyles()
以使用非动画样式 (r289453) - 修复了累加插值和累积插值在隐式 0% 和 100% 关键帧下无法正确工作的问题 (r289454)
- 修复了从
scale()
到scale() translate()
的动画问题 (r289732) - 修复了累加动画阻止其他动画加速运行的问题 (r289605)
- 修复了更改
direction
或writing-mode
时重新计算关键帧的问题 (r289426) - 修复了更改
direction
或writing-mode
时清除计算关键帧的问题 (r289226) - 修复了与自定义效果相关的动画出现在
document.getAnimations()
结果中的问题 (r290122) - 实现了对
offset
简写的解析和动画支持 (r289876)
渲染
- 修复了制表符和
ch
单位无法正确遵循合成粗体宽度调整的问题 (r289609)
表单
- 更改为当无效的浮点数以“.”结尾时,输入元素返回空字符串 (r290124)
- 修复了选择方法返回值以匹配规范的问题 (r289813)
- 修复了在“增加对比度”模式下,浅色外观文本字段渲染不可见的问题 (r290054)
- 修复了点击
<input type="image">
会以null
提交者提交表单的问题 (r289615) - 改进了
applyStep()
以匹配规范 (r289465)
JavaScript
- 默认启用 Shadow Realms 支持 (r290119)
- 在标志
__XPC_JSC_useTemporal=1
后实现了Temporal.PlainDate
(r290209) - 优化了 JSString 的原子化 (r289359)
共享工作线程
- 新增支持共享共享工作线程(包括跨 WebProcesses)(r289247)
- 更改为在用非同源 URL 构造 SharedWorker 时同步失败 (r289532)
- 修复了 Shared Workers 在重定向情况下
self.location.href
的问题 (r289483)
工作线程
- 更改为始终将工作线程脚本解码为 UTF-8 (r289489)
- 修复了
WorkerGlobalScope.importScripts()
以保护传入的 blob URL 直到导入完成的问题 (r289236) - 修复了经典工作线程脚本获取的 MIME 类型检查问题 (r289672)
- 修复了将工作线程初始化为模块时正确报告异常的问题 (r289479)
对话框元素
Web API
- 新增支持 ScreenCaptureKit API 的两个版本 (r289547)
- 更改为在可用时使用系统窗口和屏幕选择器 (r289696, r289701)
- 修复了在页面进入页面缓存时,fetch promise 的结算会被延迟的问题 (r289533)
- 优化了 DOM 存储事件分派 (r290223)
实验性模型元素
Web 扩展
- 新增支持
browser.action.openPopup()
和browser.browserAction.openPopup()
API 以打开特定窗口的扩展弹窗(这是一项 WECG 提案) - 新增支持
manifest_version
3 扩展中的optional_host_permissions
清单键(这是一项 WECG 提案) - 新增支持
browser.runtime.getFrameId()
,以便更轻松地从内容脚本获取帧标识符(这是一项 WECG 提案) - 新增支持可传递给
browser.tabs.sendMessage()
的frameId
选项 - 修复了
webNavigation
和webRequest
事件中parentFrameId
返回的数字,使其在主帧时为-1
- 修复了
devtools.panels.onShown
,以便将面板的窗口对象发送给监听器 - 修复了
devtools.panels.onShown
,以防止其在每次活动面板更改时多次触发 - 使
devtools
API 命名空间仅暴露给 devtools 后台页面