Safari技术预览版161发布说明
Safari技术预览版161现已发布下载,适用于 macOS Monterey 12.3 或更高版本以及 macOS Ventura。如果您已安装 Safari技术预览版,可以在 macOS Monterey 的“系统偏好设置”中的“软件更新”面板,或 macOS Ventura 的“系统设置”中“通用”→“软件更新”下进行更新。
此版本包含 WebKit 在以下提交之间的更改:257351@main…258382@main
注意:此版本未启用共享标签页组以及标签页组、网站设置和网页扩展的同步功能。
Web检查器
- 在“元素”选项卡中添加了
prefers-reduced-motion
和prefers-contrast
的模拟开关 (257383@main) - 更改为显示所有会话的“设备”菜单 (257426@main)
- 重新定位了媒体特性
prefers-color-scheme
和appearance
的开关 (257744@main)
CSS自定义属性
- 启用
@property
支持 (258246@main, 257525@main) - 添加
@property
规则解析和 CSSOM (258067@main) - 添加标识符列表语法的解析 (257786@main)
- 添加支持在注册的自定义属性中允许使用CSS宽关键字 (257873@main)
- 添加支持自定义属性的CSS过渡 (258134@main)
- 添加对包括
<color>
、<image>
、<url>
、<time>
、<dimension>
等语法类型的支持 (257678@main, 257698@main, 257701@main, 257706@main) - 添加对列表值的支持 (257844@main)
- 添加单位循环处理 (258357@main)
- 使
var()
对于不匹配语法的备用值无效 (258373@main) - 使内联样式不验证注册的自定义属性值 (258240@main)
- 从
@property
规则注册自定义属性 (258106@main)
CSS Typed OM
- 启用 CSS Typed OM (258269@main)
- 允许通过 CSS Typed OM API 设置自定义标识符 (257859@main)
- 使
transition-duration
属性不允许负值 (258295@main) - 确保
z-index
属性可以设置为-3.14
(258265@main) - 确保
column-count
值被限制在 [1, 无穷大] 范围内 (258218@main) - 确保
orphans
和widows
值被限制在 [1, 无穷大] 范围内 (258243@main) - 使 StylePropertyMap 完全按照设置的方式返回CSS值 (257815@main)
- 使
StylePropertyMap.set()
在值超出允许范围时将其包装在calc()
中 (257485@main) - 使
StylePropertyMap.set()
在尝试为不允许数字的属性设置数字时抛出错误 (258242@main)
:has() 伪类
- 添加对
:picture-in-picture
伪类的失效支持 (257995@main) - 添加对
:playing
、:paused
、:seeking
、:muted
和:volume-locked
伪类的失效支持 (257991@main)
CSS
- 添加对
:user-invalid
和:user-valid
伪类的支持 (257997@main) - 使
stroke-dasharray
CSS属性解析与规范对齐 (258136@main) - 修复渐变中的长度值以考虑有效缩放 (257659@main)
- 修复 CSS
::marker
以支持定义 CSS 变量 (257711@main) - 修复
font-variant-alternates: historical-forms
以通过 StylePropertyMap 正确反映 (257955@main) - 修复
stroke-dasharray
的计算值为px
(258300@main) - 修复空
input[type=number]
的:out-of-range
伪类匹配问题 (258165@main) - 修复
transform
属性的计算值 (257964@main) - 修复
perspective
属性的calc()
值未被裁剪为0 (257779@main) - 更改
transform-style: preserve-3d
和perspective
,使其仅适用于直接的DOM子元素 (257509@main, 257432@main) - 确保
baseline-shift
CSS属性的计算值长度单位为px
(257928@main) - 在解析
baseline-shift
CSS属性时不再允许数字 (258025@main) - 在解析
cx
、cy
、x
和y
CSS属性时不再允许数字 (258029@main)
Web动画
- 在插值自定义属性时考虑
iterationComposite
(257925@main) - 添加对
<length>
自定义属性的基本插值支持 (257906@main) - 添加对
<transform-function>
自定义属性的插值支持 (258009@main) - 添加对
<transform-list>
、+ 和 # 自定义属性的插值支持 (258039@main) - 添加
<length-percentage>
自定义属性插值测试 (257931@main) - 使自定义属性支持单个关键帧的插值 (257911@main)
- 在插值自定义属性时支持可加性 (257920@main)
- 支持
<color>
自定义属性的插值 (257929@main) - 支持数字自定义属性的插值 (257930@main)
- 修复超过2个关键帧的复合动画 (257731@main)
渲染
- 当下一段文本有前导空格时,在文本末尾添加一个不间断空格 (257622@main)
- 在存在干扰浮动时调整嵌套列表标记 (258372@main)
- 在计算弹性尺寸时,更改为使用被替换元素的固有比例 (257474@main)
- 使
::backdrop
渲染器在可能时使用背景层 (257538@main) - 修复按钮元素默认裁剪溢出 (257439@main)
- 修复在没有高度的内联元素中渲染懒加载图片的问题 (257565@main)
- 修复
box-sizing
的逻辑宽度计算 (258342@main) - 修复0像素约束的行,如果它有内容,仍被视为非空行 (257528@main)
- 当脱离流时,在旧的包含块链中重新计算固有宽度 (257980@main)
JavaScript
- 添加对 RegExp 后向断言的支持 (257823@main)
- 启用 AVX JIT 代码生成 (257884@main)
- 修复
Atomics.wait
和Atomics.waitAsync
中的竞态条件 (257423@main) - 修复 ResizableArrayBuffer 和
lastIndexOf
(258164@main) - 修复从 JavaScript 调用 WASM SIMD 函数时抛出 TypeError (257494@main)
- 提高
Object.values
的速度 (257382@main)
WebAssembly SIMD
- 在 ARM 上启用 WASM SIMD (257632@main)
- 在 x64 上启用 WASM SIMD (258309@main)
- 添加对英特尔平台转换的支持 (257592@main)
- 添加对英特尔平台扩展整数算术的支持,并修复位掩码操作 (257657@main)
- 添加对英特尔平台浮点绝对值、取反、最小值、最大值和平方根的支持 (257880@main)
- 添加对英特尔平台加载和存储操作的支持,并修复操作混洗 (257818@main)
- 添加对英特尔平台饱和整数算术运算的支持 (257468@main)
- 添加对英特尔平台 swizzle 和 shuffle 的支持,并修复
extract_lane
和replace_lane
(257400@main) - 添加对英特尔平台位运算的支持 (257640@main)
- 添加对英特尔平台整数和浮点算术的支持 (257511@main)
- 添加对英特尔平台向量比较的支持 (257532@main)
- 添加对英特尔平台剩余转换操作码的支持 (257965@main)
- 使 SIMD 函数支持线性扫描和图着色寄存器分配器 (257519@main)
- 在英特尔平台上模拟8位移位指令和
i8x16.popcnt
(258089@main) - 在英特尔平台上模拟向量浮点绝对值 (257806@main)
- 修复
min
、max
和 CompareIntegerVector 操作 (257935@main)
WebAssembly
- 实现 WASM GC 紧凑数组类型 (257597@main)
媒体
- 更改为使用 dav1d 解码器而不是 libaom 解码器 (257357@main)
- 修复播放停止时进度条继续移动的问题 (257403@main)
全屏API
- 启用无前缀版本的全屏API (257658@main)
- 添加对全屏元素上
::backdrop
伪元素的支持 (257337@main) - 修复正确解析全屏API Promise的问题 (257668@main)
- 实现无前缀的
:fullscreen
伪类 (257542@main) - 实现
ShadowRoot.fullscreenElement
(257457@main) - 使全屏API使用顶层 (257456@main)
- 使全屏元素匹配
:modal
伪类 (257572@main) - 使
requestFullscreen()
消耗用户激活 (257554@main) - 报告屏幕尺寸时使用全屏首选尺寸 (258005@main)
- 全屏模式下不再将根元素的位置调整为绝对 (257946@main)
HTML
- 添加对
<model src>
的支持并遵循<source type>
属性 (257518@main)
Web API
- 启用 2D OffscreenCanvas (257672@main, 258237@main)
- 添加
iframe
深度限制 (257550@main) - 添加支持从 JavaScript 绑定访问时返回调整后的URL (257490@main)
- 确保将视频绘制到画布时视频色彩空间一致 (258030@main)
- 确保负的字母间距不会将内容拉出内联框之外 (258356@main)
- 转义
innerHTML
和outerHTML
中 JavaScript URL 的与号 (&
) (258112@main) - 修复了在某个框架中没有mouseup的mousedown会干扰另一个框架中点击事件的bug (258055@main)
- 修复了带复选框的label元素上嵌套点击事件的行为 (258287@main)
- 修复 BroadcastChannel 未能始终正确计算其源的问题 (257551@main)
- 修复
legend.focus()
不委托焦点的问题 (258074@main) - 改进
<textarea>
验证性能 (257417@main) - 使站点隔离的跨源 iframe 在其自己的进程中加载 (257435@main)
- 移除 WebSocket 接口上已弃用的大写 URL 属性别名 (257467@main)
辅助功能
- 修复复选框不遵循
indeterminate
属性状态的问题 (258314@main) - 修复颜色
<input>
元素、<textarea>
元素或<progress>
元素动态更改后控件值未更新的问题 (257976@main) - 为 macOS 将粗体和斜体字体样式公开为文本属性 (258212@main)
- 修复 VoiceOver 未将不确定进度元素报告为不确定的问题 (258332@main)
智能跟踪预防
- 修复用户发起的跨域链接导航被计为顶层框架重定向的问题 (258382@main)
SVG
- 停止自动换行
svg:text
(257993@main) - 限制 setCurrentTime 和 setCurrentScale 上的浮点数为有限值 (258322@main)
WebAuthn
- 更改用户手势要求,以便在成功断言或注册后返还用户手势的“免费”机会 (257940@main)
- 改进了对具有完整密钥存储的安全密钥的处理 (257989@main)
- 修复了 WebAuthn 超时导致错误的问题 (258116@main)
- 修复了通过混合传输执行操作时
authenticatorAttachment
始终为"platform"
的问题 (257576@main)
WebDriver
- 修复 Get Element Rect 命令不再四舍五入为整数值 (257498@main)
WebGL
- 添加在 Web Worker 中为 OffscreenCanvas 创建 WebGL 上下文的支持 (257541@main)
- 修复设置为重复的视频纹理被限制的问题 (257365@main)
- 修复 WebGL 在主线程上的 OffscreenCanvas 中初始化失败的问题 (258222@main)