WWDC25 的新闻:Safari 26 beta 中的 WebKit

主要观点:WWDC25 带来了众多关于网页技术的更新,包括 Safari 26 beta 的诸多特性及相关改进。
关键信息和重要细节

  • 版本更新:macOS、iOS、iPadOS、visionOS 和 watchOS 统一版本号为 26,Safari 也重新编号,版本号从 18.x 跳至 26.x,但点发布方式及对网页技术的改进保持不变。
  • SVG Icons:Safari 26 beta 支持 SVG 格式图标,包括 favicons,还支持 Data URL 图像,可利用无限矢量缩放,且 SVG 文件通常比常用的.png 文件下载量小。
  • Web App on iOS and iPadOS:默认情况下,添加到 iOS 和 iPadOS 主屏幕的每个网站都将以 Web App 形式打开,用户可决定是否开启“Open as Web App”,同时 WebKit 对 Web App 功能的支持不变。
  • HDR Images:Safari 26 beta 支持网页上的 HDR 图像,新增dynamic-range-limit属性可控制 SDR 和 HDR 视频或图像的混合显示,WebKit 此前已支持 Safari 14.0 中的 HDR 视频。
  • WebKit in SwiftUI:WebKit 有全新专为 Swift 和 SwiftUI 设计的 API,核心类型为WebViewWebPageWebView用于显示网页内容,WebPage可用于加载、控制和与网页内容通信,还新增URLSchemeHandlerWebPage.NavigationDeciding等协议。
  • <model> on visionOS:Safari 在 visionOS 上支持<model>元素,可嵌入 3D 模型,提供灯光、动画、旋转和交互等功能,有多种用法和属性可控制。
  • Immersive video and audio on visionOS:Safari 在 visionOS 上支持更广泛的沉浸式媒体,包括空间视频、Apple Immersive Video 等,还支持 HTTP Live Streaming 及相关工具更新。
  • WebGPU:Safari 26 beta 支持 WebGPU,它类似 WebGL 但添加了计算着色器,可通过框架利用其强大功能,已在 Safari Technology Preview 中启用一年并在 Safari 26 beta 中正式推出,同时注重安全。
  • CSS:新增锚点定位、滚动驱动动画、text-wrap: prettycontrast-color()progress()等功能,还支持margin-trimoverflow-blockoverflow-inline和绝对定位中的自对齐属性等。
  • Digital Credentials API:Safari 支持 W3C 的 Digital Credentials API,可安全请求身份文档,利用现有 Credential Management API,通过特定协议字符串请求,示例代码展示了请求过程。
  • Web API:支持 Trusted Types API 防止 XSS,URL Pattern Standard 用于匹配 URL,WebAuthn Signal API 报告凭证更新,File System WritableStream API 实现文件直接写入,WebKit 还添加了alg参数支持等。
  • JavaScript:支持 JavaScript 的RegExp对象的模式修饰符,以及 Explicit Resource Management Proposal 中的相关方法和构造函数。
  • Editing:在滚动内容中支持渲染原生选择 UI。
  • SVG:SVG 容器支持pointer-events="bounding-box"
  • Media:Safari 26 beta 支持 ALAC 和 PCM 音频在 MediaRecorder 中,扩展 WebCodecs API 增加 AudioEncoder 和 AudioDecoder,改进 Media Source API 支持 detachable MediaSource 和 prefers DecompressionSession。
  • WebRTC:WebKit 为 WebRTC 带来多项更新,如暴露 CSRC 信息、Speaker Selection API、序列化 RTCEncodedAudioFrame 和 RTCEncodedVideoFrame 等。
  • Web Inspector:Safari 26 beta 引入自动检查和暂停 Service Workers,方便调试 Worker 相关问题,在 Web Inspector 中更易调试 Worker 内存和性能问题,Elements 节点树显示更详细信息,调试器更新以提供更直观的异步代码调试体验。
  • Web Extensions:新的基于网络的 Safari Web Extension Packager 可准备扩展资源用于测试和分发,Web Extension 的命令在菜单栏显示,用户可自定义快捷键。
  • WebKit API:iOS、iPadOS、macOS 和 visionOS beta 中改进了 WebKit API,包括 Screen Time 支持、本地存储和会话存储恢复 API、应用backdrop-filter等。
  • WebAssembly:WebKit 提高了 WebAssembly 性能,先由内置解释器评估。
  • Privacy:Safari beta 防止已知指纹脚本访问敏感信息,包括设备特征和存储。
  • Networking:WebKit 支持<link rel=dns-prefetch>,提高性能并改善隐私。
  • Lockdown Mode:在 iOS、iPadOS、watchOS 和 macOS 上可用,Web 字体经过评估后可在 Lockdown Mode 中使用。
  • Website Compatibility:用户可在 Safari 中报告网页问题,提供关键信息以改善体验。
  • Bug Fixes and more:包含众多对各种技术和功能的修复,涉及 accessibility、CSS、Canvas、DOM、Editing、Forms、JavaScript、Media、Rendering、SVG、Safari View Controller、Scrolling、Service Workers、Tables、Text、URLs、Web API、Web Animations、Web Extensions、Web Inspector、WebRTC 等方面。
  • Try out Safari 26 beta:可通过安装 macOS Tahoe 26、iOS 26、iPadOS 26 或 visionOS 26 的 beta 版进行测试,也可在 Safari Technology Preview 中测试,还可下载 Safari 26 beta 版在 macOS Sequoia 或 macOS Sonoma 上试用。
  • Feedback:欢迎反馈,可通过多种方式联系 WebKit 团队,包括在线找到 web 福音传道者、关注 WebKit 在 LinkedIn 上的账号、提交 Safari UI 反馈或 WebKit 错误报告、在 webcompat.com 上报告网站问题等。
阅读 22
0 条评论