苹果刚放出 Safari Technology Preview 248,更新日志列了将近八十条改动。能单独拿出来讲的“新功能”,只有一件事:JavaScript 给 BigInt 加了几个 Math 方法。
其余全是修复。CSP 报错让网页直接打不开,iPhone 全屏视频没字幕,HDR 图片颜色发暗——这几条都不算新鲜功能,却是用户会立刻感觉“这网页坏了”的老毛病。这个版本没打算讲新故事,它在还债。
发生了什么
Safari Technology Preview 248 面向 macOS Golden Gate 和 macOS Tahoe 发布。已装用户在“系统设置 → 通用 → 软件更新”里能直接升级。
提醒一句:这仍是预览版,不是 Safari 正式版。普通用户不会自动收到,苹果通常只推给开发者和早期测试者。
JavaScript 部分实现了 TC39 的 BigInt Math 提案,加上 BigInt.pow、BigInt.sqrt 这类方法。这个提案还没定稿进 ECMAScript 正文,WebKit 愿意先跟进,说明团队对它的走向有信心,但它还不是已经定案的通用 Web 标准。
四条最扎眼的修复:
- CSP 报错导致页面直接打不开,一批网站因内容安全策略检查出错而白屏,这次修掉了
- iPhone 全屏视频没有字幕,隐藏式字幕全屏时完全不显示,恢复正常
- HDR 图片颜色发暗,带增益图的 HDR 图片被错误按 8 位解码,这是一处回归
- IndexedDB 事务卡死,后台标签页事务挂起会拖慢其他页面的数据库操作,现在放开了
官方日志按模块统计,开发者工具和 CSS/SVG 渲染排在最前面:
这张图统计的是六个主要模块,合计五十九项。开发者工具和 CSS 两项就占了三十三项,超过图中六大类总数的一半——图注里“大半”指的是这个范围,不是全部近八十条改动。
谁会先感觉到
| 人群 | 具体收益 | 建议动作 |
|---|---|---|
| 前端开发者 | 断点定位不准、Console 私有字段显示不全、跨域 iframe 无障碍面板为空,这些 Web Inspector 老毛病修了一批 | 装上 248 测试自己的调试流程,但先别在生产环境依赖这些新行为 |
| 复杂 Web 应用/无障碍团队 | 滚动捕捉、view transition、aria-labelledby 动态更新、hidden="until-found" 配合 VoiceOver 的坑被修了 | 现在就验证,记录哪些问题解决了,正式版发布前不要正式上线依赖 |
| 普通用户 | 字幕消失、HDR 颜色发暗、部分网页打不开这几个问题会消失 | 不用现在做什么,等正式版自动更新即可 |
预览版的修复能否原样带入正式版,取决于苹果后续的回归测试。目前没有官方时间表,这一点值得留意。
接下来怎么看
工欲善其事,必先利其器。这句话放在浏览器引擎上同样成立——开发者工具不好用,新 API 再多也没人愿意认真适配。
Safari 长期被吐槽的不是能力上限低,而是执行细节糙:同一个 CSS 属性在不同场景表现不一致,调试工具经常自己先出 bug。248 里一大堆“修复 XX 在某种情况下不生效”,正是这类细节债的集中体现。
但这不能说明 WebKit 补债速度天生就快,样本只有一个版本。真正能验证判断的,是这批修复能不能原样进入下一个 Safari 正式版:如果能,说明这次是真的在还账;如果又拖到下下个版本,那所谓“认真”就只是预览期的一次姿态。
接下来最该盯的不是这个版本又修了多少条,而是那几条最扎眼的问题——CSP 白屏、字幕消失、HDR 变色——什么时候真正出现在你我日常用的 Safari 里。
