Speedometer 3.0 的推出是使网络更快、让网络开发者能够创建以前不可能实现的网站和网络应用的重要一步。在本文中,我们将探讨 WebKit 团队如何根据 Speedometer 3.0 基准测试,在 WebKit 和 Safari 中进行性能优化。
为了实现这些改进,我们广泛使用了我们的性能测试基础设施。它与我们的持续集成系统集成,并提供调度 A/B 测试的能力。这使得工程师能够快速测试性能优化并捕获新的性能回归。
Apple Vision Pro 已经面世,随之而来的是人们对 visionOS 中 WebXR 可能性的巨大热情。目前正在进行支持工作,您今天就可以进行测试。WebXR 现在包含一种更自然、更注重隐私的交互方法——新的 transient-pointer
输入模式——已在 visionOS 1.1 的 Safari 17.4 中可用。让我们来探索 WebXR 的自然输入是如何工作的,以及如何在为 Apple Vision Pro 开发 WebXR 体验时利用它。
垂直书写的文本在东亚语言中很常见。例如,中文、日文和韩文(CJK)可以垂直书写,从上到下阅读,行从右到左流动。类似地,传统蒙古语是一种垂直文字,行从左到右流动。
使用 CSS 的 writing-mode 属性在浏览器中支持垂直文本已经多年。然而,直到最近,表单控件的 vertical-lr 和 vertical-rl 值的支持在所有浏览器中都存在不一致。因此,作为 Interop 2023 的一部分,业界致力于在表单控件中支持垂直书写模式。我们很高兴看到跨浏览器支持显著改善。我们也很自豪 Safari 17.4 为您找到 Safari 的任何地方的表单控件带来了垂直书写模式支持。
正如今天在 browserbench.org 上宣布的,Apple 的 WebKit 团队与其他浏览器引擎开发者合作,很高兴推出 Speedometer 3.0,这是一次重大更新,更好地反映了当今的网络。它由所有主要浏览器引擎的开发者共同构建:Blink、Gecko 和 WebKit,并得到了来自 Apple、Google、Intel、Microsoft 和 Mozilla 等公司的数百项贡献。
就像 Safari 15.4 和 Safari 16.4 一样,今年 3 月发布的 Safari 17.4 对网络开发者来说意义重大。我们很荣幸地宣布新增 46 项功能和 146 项错误修复。
开关是移动平台和各种 UI 框架中流行的控件,但直到现在它们还没有内置到网络平台中。看到对这种控件的广泛需求,我们决定改变这一点。
媒体源扩展(MSE)是网络上提供流媒体视频的常用方式。它允许 JavaScript 控制字节如何发送到浏览器进行播放。在 2023 年全球开发者大会上,Apple 宣布了新的托管媒体源 API,通过高效的视频流和更长的电池续航时间,改进了 iOS 和其他设备的 MSE 功能。
然而,MMS 和 MSE 本质上与 AirPlay 不兼容,因为 AirPlay 需要唯一的播放 URL。AirPlay 允许您在手机上开始播放您喜爱的视频,将其移动到电视,然后关闭手机。AirPlay 兼容的 URL 可以是任何格式,例如 mp4、mpeg-ts 或 HTTP Live Streaming (HLS)。
本文将指导您提供两种来源,并在此过程中构建一个演示示例。
网络令人惊叹。它使数十亿人轻松协作、学习和连接,因为它旨在在截然不同的设备上运行。
作为一名网络开发者,您的工作是确保您的项目在所有浏览器和所有用户中都能正常工作——这可能很难做到。如果浏览器对您使用的网络技术具有相同的实现,那么这项工作会容易得多。
相同的实现是通过网络标准流程实现的,在这个过程中,人们协作编写极其详细的技术文档,定义每一项新的网络技术——甚至包括网站错误应该如何工作。
2023 年 9 月,macOS 上的 Safari 17.0 发布了一个虽小但有趣的 select 元素更改。您现在可以将 <hr> 元素(称为水平线)放入 <select> 元素中,它将再次绘制一条水平线。
上个月,Safari 17.2 发布了我们有史以来最大的 12 月网络技术更新——包含 39 项新功能和 169 项错误修复。现在,在 1 月份,Safari 17.3 对该版本进行了一些完善。
我们很高兴地宣布 MotionMark 的更新,这是 Apple 的网络浏览器图形基准测试,已升级到 1.3 版。这是一个次要更新,旨在改善基准测试在各种硬件设备上的行为,并提高分数的可靠性。
WebGPU 是一种新的符合标准的 API,可在网络上实现高性能 3D 图形和通用计算。WebGPU 程序用 JavaScript 编写,但暴露了 GPU 功能,首次允许在网络内容中使用 GPU 计算。从 Safari 技术预览版 185 开始,可以启用 WebGPU 进行早期测试和开发。
在过去的 28 个月里,Safari 发布了 17 个新版本——15.0、15.1、15.2、15.3、15.4、15.5、15.6、16.0、16.1、16.2、16.3、16.4、16.5、16.6、17.0、17.1,以及今天的 Safari 17.2。这使得新网络技术的发布可以在一年中更广泛地分布,并更快地送达您的用户手中。
今天的发布是 Safari 有史以来最大的 12 月网络技术更新,包含 39 项功能和 169 项修复。让我们来看看里面有什么。
今天我们很高兴分享 Safari 17.1 中 WebKit 的新功能。它现在可用于 iOS 17、iPadOS 17、macOS Sonoma、macOS Ventura 和 macOS Monterey。
您可能已经注意到 Safari 技术预览版 179 包含了对 CSS 嵌套的更新,增加了对新的“宽松解析行为”的支持。
这意味着什么?这意味着您不再需要担心每个嵌套选择器是否以符号开头。这意味着现在这样的嵌套 CSS 也能正常工作……
今天是 Safari 17.0 发布的日子。它现在可用于 iOS 17 和 iPadOS 17。
配置文件很有用。它们允许用户将数据分类并单独管理。用户可以为不同目的创建不同的配置文件,并删除任何配置文件而无需担心弄乱其他配置文件的数据。配置文件还使访问不同的在线身份变得更容易。在同一网站上拥有多个帐户的用户可以在不同配置文件中同时登录它们。他们无需不断登录和注销即可在帐户之间切换,因为配置文件之间的 Cookie 是独立的。
网站可以使用各种存储 API(localStorage、IndexedDB、File System 等)在用户设备上存储数据。这是一项重要的功能,通过提供本地资源,使网站能够离线运行并具有良好的性能。然而,存储容量并非无限。事实上,它通常远小于设备的磁盘大小。当容量已满时,可能会发生不良情况,例如存储操作失败或数据被清除。作为一名网络开发者,了解存储策略有助于避免这些意外结果。本文将讨论包括 Safari 在内的 WebKit 应用程序中的最新存储策略。