Microsoft Edge 135 Web 平台发行说明 (2025 年 4 月)
以下是 Microsoft Edge 135 中于 2025 年 4 月 3 日发布的新 Web 平台功能和更新。
若要保持最新状态并获取最新的 Web 平台功能,请下载 Microsoft Edge 的预览体验成员版本,例如 Canary、Dev 或 Beta 版;请参阅 成为Microsoft Edge 预览体验成员。
详细内容:
- Edge DevTools
- WebView2
-
Web 平台功能
- CSS 功能
- HTML 功能
-
Web API
- 向 Web 语音 API 添加 MediaStreamTrack 支持
-
分区
:visited
链接历史记录 -
使用 创建服务辅助角色客户端并继承 iframe 的服务辅助角色控制器
srcdoc
- 将单击事件调度到捕获的指针
- Float16Array
- HSTS 跟踪防护
-
sourceElement
的 属性NavigateEvent
- PerformanceNavigationTiming API NotRestoredReasons 名称更改
- 可观测 API
-
服务辅助角色客户端 URL 现在忽略
history.pushState
更改 - RTC 编码帧的时间戳
-
将
double
类型用于 ProgressEvent 的loaded
和total
属性 - fetchLater API
- highlightsFromPoint API
- 已弃用和已删除的功能
- 源试用版
Edge DevTools
请参阅 Microsoft Edge DevTools 中的新增功能。
WebView2
请参阅 WebView2 SDK 的发行说明。
Web 平台功能
CSS 功能
CSS 轮播小组件: ::column
伪元素
::column
CSS 伪元素表示多列容器中的单个列。
可以使用有限数量的 CSS 属性设置容器的样式。
可以使用伪元素通过滚动容器将容器 ::scroll-marker
贴靠到。
CSS 轮播小组件: ::scroll-marker
和 ::scroll-marker-groups
伪元素
::scroll-marker
和 ::scroll-markers-group
伪元素允许在滚动容器中创建一组可聚焦标记。
可聚焦标记集用于将滚动容器对齐到特定位置。
CSS 轮播小组件: ::scroll-button()
伪元素
伪 ::scroll-button()
元素允许将滚动按钮创建为滚动容器的伪元素。
单击滚动按钮时,滚动按钮用于向按钮的方向滚动容器。
嵌套伪元素样式
现在可以使用 和 ::after::marker
设置嵌套在其他伪元素内的伪元素的样式::before::marker
。
::column::scroll-marker
尚不受支持。
CSS interactivity
属性
CSS interactivity
属性指定元素及其平面树后代 (包括文本运行) 是否惰性。
使元素惰性会影响:
- 元素是否可以通过“在页面中查找”进行焦点、编辑、选择和搜索。
- 元素在辅助功能树中是否可见。
CSS 逻辑溢出属性
overflow-inline
和 overflow-block
CSS 属性允许设置相对于写入模式的内联和块方向溢出。
- 在水平写入模式下,
overflow-inline
映射到overflow-x
。 - 在垂直写入模式下,
overflow-inline
映射到overflow-y
。
CSS abs()
和 sign()
函数
函数 abs(A)
返回 A 的绝对值,作为与输入相同的类型。 返回类型为 <number>
。
函数 sign(A)
返回:
-
-1
如果 A 的数值为负值,则为 。 -
+1
如果 A 的数值为正。 -
0
否则。
返回类型为 <number>
。
CSS 定位点定位:记住的滚动偏移量
如果定位的元素具有默认定位点,且在一个边缘与此定位点连接,另一个边缘的原始包含块,则调整元素大小时将考虑滚动偏移量。
在调整元素大小时考虑滚动偏移量,可以在文档在给定滚动偏移量时使用定位元素的所有可见空间 (使用 position-area
) 。
为了避免每次滚动文档时调整元素的大小,将使用“已记住的滚动偏移量”概念,而不是始终使用当前滚动偏移量。
CSS dynamic-range-limit
属性
dynamic-range-limit
CSS 属性允许限制高动态范围 (HDR) 内容的最大亮度。
CSS shape()
函数
shape()
CSS 函数允许在 属性中使用clip-path
自由格式和响应形状。
可以定义一系列谓词,等效于 函数中的 path()
谓词。
可以使用响应单元,例如 %
或 vw
。
可以使用 CSS 值,例如自定义属性。
CSS progress()
函数
progress()
、 media-progress()
和 container-progress()
函数表示给定值 (进度值) 从一个值 (进度开始值) 到另一个值 (进度结束值) (的比例距离。
-
progress()
允许从数学函数绘制进度比率。 -
media-progress()
允许从媒体功能绘制进度比率。 -
container-progress()
允许从容器特征绘制进度比率。
safe-area-max-inset-*
变量
safe-area-max-inset-top
、safe-area-max-inset-right
、 safe-area-max-inset-bottom
和 safe-area-max-inset-left
环境变量与安全区域嵌入变量相关联,但表示可能的最大安全区域。
使用最大可能的安全区域有助于避免在安全区域内插值增大时更新页面布局。
HTML 功能
command
和 commandfor
HTML 属性
元素command
的 <button>
和 commandfor
HTML 属性允许你以可访问和声明性的方式向按钮分配行为,同时减少必须使用 JavaScript 页提供交互性的频率。
通过按键单击、触摸或激活时,具有 commandfor
和 command
属性的按钮在 引用commandfor
的元素上调度 CommandEvent
一些默认行为,例如打开对话框和弹出框。
支持推送付款的链接rel=facilitated-payment
元素 <link rel="facilitated-payment" href="...">
充当提示,浏览器使用该提示通知已注册的付款客户端挂起的推送付款。
支持 rel
SVG <a>
元素中的 和 relList
属性
SVG 2.0 中的 SVGAElement 接口允许作 SVG <a>
元素,这些元素类似于 HTML 定位点元素。 此更改添加了对 rel
和 relList
属性的支持,以增强网页的安全性和隐私性。
此方法与 HTML 定位点元素的工作方式保持一致,并确保 SVG 和 HTML 之间的一致性和易用性。
Web API
向 Web 语音 API 添加 MediaStreamTrack 支持
Web 语音 API 是一种 Web 标准 API,可用于将语音识别和合成合并到网页中。
Web 语音 API 使用用户的默认麦克风作为默认音频输入。 MediaStreamTrack 支持允许网站使用 Web 语音 API 描述文字其他音频源,包括远程音轨。
分区 :visited
链接历史记录
为了消除用户浏览历史记录泄漏, <a>
HTML 元素现在仅在以前从顶级网站和框架原点单击时,才将其设置为 :visited
样式。 这意味着Microsoft Edge 现在根据三个键对访问的链接进行分区:
- 链接 URL。
- 顶级网站。
- 帧原点。
由于仅设置以前在此网站和框架上单击过的链接的样式,为获取 :visited
链接样式信息而开发的侧通道攻击现已过时。
自链接 已从中排除;指向网站自己的页面的链接可以设置样式, :visited
即使这些链接之前未在此确切的顶级网站和框架原点中被单击。 仅在与顶级帧同源的顶级帧或子帧中启用此豁免。
使用 创建服务辅助角色客户端并继承 iframe 的服务辅助角色控制器 srcdoc
现在为使用 srcdoc
属性的 iframe 创建了一个服务辅助角色客户端。 创建的服务辅助角色客户端继承自 iframe 父级的服务辅助角色。
将单击事件调度到捕获的指针
如果在调度事件时pointerup
捕获了指针,则会将click
事件调度到捕获的目标,而不是被调度到 和 pointerup
事件的最接近的共同上级pointerdown
。
Float16Array
Float16Array
现在支持类型化数组。 写入实例时, (IEEE FP16) ,将数字值舍入为 Float16Array
半精度浮点格式。
HSTS 跟踪防护
通过 HTTP 严格传输安全性 (HSTS) 缓存缓解第三方的用户跟踪。
此功能仅允许对顶级导航进行 HSTS 升级,并阻止对子资源请求进行 HSTS 升级。 阻止此类 HSTS 升级会使第三方站点无法使用 HSTS 缓存来跟踪 Web 上的用户。
sourceElement
的 属性 NavigateEvent
当页面导航由元素启动时(例如当用户单击链接或提交表单时),生成的 NavigateEvent
现在具有指向 sourceElement
发起元素的属性。
PerformanceNavigationTiming API NotRestoredReasons 名称更改
NotRestoredReasons API 是 PerformanceNavigationTiming API 的一部分。 此更改会更新原因的名称,以便它们与规范匹配。
更改列表:
旧名称 | 新的名称 |
---|---|
extension-messaging 、pending-permission-request 、not-main-frame 、、timeout frame-navigating 、cookie-disabled cookie-removed 、printing 、web-database 、、injected-javascript 、 和injected-stylesheet |
masked |
response-method-not-get |
request-method-not-get |
serviceworker-version-activation |
serviceworker-version-activated |
serviceworker-added-after-bfcache |
serviceworker-added |
serviceworker-unregistration |
serviceworker-unregistered |
unload-handler |
unload-listener |
session-restored |
null |
可观测 API
可观测对象是一种常用的反应式编程范例,用于处理基于推送的事件的异步流。 可观测内容可视为 Promise,但对于多个事件。 可观测对象允许编写更多线性和声明式代码,并避免嵌套回调。 也就是说,可观测对象通过提供表示 Observable
异步事件流的对象,允许符合人体工学的事件处理。
可以“订阅”此对象以接收传入事件,并调用其任何运算符以声明方式描述事件通过的转换流。 这与 命令性 版本形成鲜明对比,后者通常需要使用等 addEventListener()
方法进行复杂的嵌套。
请参阅 W3C 可观测规范。
服务辅助角色客户端 URL 现在忽略 history.pushState
更改
Client.url
服务辅助角色的 属性(即初始 HTML 文档的 URL)现在忽略方法history.pushState()
和其他类似的历史记录 API 所做的更改。
RTC 编码帧的时间戳
现在公开了以下时间戳:
- 捕获时间戳:最初捕获帧时的时间戳。
- 接收时间戳:接收帧时的时间戳。
这些时间戳存在于通过 RTCPeerConnection
传输的 WebRTC 编码帧中。
此更改允许使用 WebRTC 实现延迟度量的视频会议应用程序更好地了解性能。
将 double
类型用于 ProgressEvent 的 loaded
和 total
属性
loaded
的 ProgressEvent
和 total
属性指示当前进度。 这些属性的类型现在是 和 之间的0
浮点数,当省略属性时max
,该浮点数与 HTML 元素的默认行为<progress>
保持一致ProgressEvent
1
。
fetchLater API
fetchLater()
是用于发送延迟提取请求的 JavaScript API。 发送延迟提取请求后,浏览器会将延迟请求排队,处于 挂起 状态。
然后,将按以下最早条件调用延迟提取请求:
- 销毁文档时。
- 在用户指定的时间之后。
- 当浏览器决定该发送请求时。
API 返回一个 FetchLaterResult
包含布尔字段的 activated
。
activated
可以更新布尔字段,以指示是否已发送延迟请求。 成功发送延迟请求后,浏览器将忽略响应,包括网页的正文和标头。
highlightsFromPoint API
该 highlightsFromPoint()
API 通过检测文档中特定点存在的突出显示点,使网页能够与 CSS 自定义突出显示进行交互。
Web 应用可以使用从某个点获取突出显示来管理与自定义突出显示的用户交互,例如:
- 响应突出显示区域上的悬停事件,以触发自定义工具提示。
- 响应用户单击突出显示的区域,以触发右键单击菜单 (上下文菜单) 。
已弃用和已删除的功能
弃用 Intl.Locale
getter
API Intl.Locale
公开区域设置的周数据和小时周期类型等信息。
根据规范, Intl.Locale
对象的访问器属性现在已弃用,转而使用相应的函数。 例如, Intl.Locale.prototype.hourCycle
取值器属性已弃用,转而改用 Intl.Locale.prototype.getHourCycles()
函数。
Remove navigator.xr.supportsSession
方法
已从 WebXR API 中删除已 navigator.xr.supportsSession
弃用的属性。
在 2019 年的 WebXR 规范中,属性 navigator.xr.supportsSession
被标记为已弃用,并替换为 navigator.xr.isSessionSupported()
方法。
删除 WebGPU 限制 maxInterStageShaderComponents
由于以下原因,该 maxInterStageShaderComponents
限制现已删除:
使用
maxInterStageShaderVariables
的冗余已经具有类似的目的:控制在着色器阶段之间传递的数据量。次要差异:虽然两个限制的计算方式略有不同,但这些差异很小,可以在限制内
maxInterStageShaderVariables
有效管理。简化:删除
maxInterStageShaderComponents
可简化着色器接口,并降低使用接口的复杂性。 无需管理两个单独的限制 (这两者同时适用,但) 存在细微差异,只需专注于更恰当地命名和更全面的maxInterStageShaderVariables
。
源试用版
以下是新的实验性 API,你可以在自己的实时网站上试用有限时间。
若要了解有关源试用的详细信息,请参阅 在 Microsoft Edge 中使用源试用版。
若要查看可用源试用版的完整列表,请参阅 Microsoft Edge Origin 试用版。
Microsoft仅限边缘的源试用版
数字商品 API
到期日期为 2025 年 3 月 31 日。
数字商品 API 允许 Web 应用程序获取有关其数字产品和由数字商店管理的用户购买的信息。 用户代理提取到商店的连接,付款请求 API 用于进行购买。
Web 应用 LocalFolder 访问
到期日期为 2025 年 3 月 31 日。
Web 应用 LocalFolder Access 允许Microsoft应用商店安装的渐进式 Web 应用 (PWA) 访问以前由应用程序的早期版本存储在 WinRT ApplicationData.LocalFolder
文件夹中的文件内容。
HTML+IDL 手写属性
将于 2025 年 6 月 14 日到期。
特性 handwriting
提供按文档和按元素的方式控制允许手写输入的位置,例如使用触笔时。
购置信息 API
将于 2025 年 6 月 30 日到期。
对于通过应用商店或直接从浏览器获取的 PWA,购置信息 API 支持 3P 获取属性。
注意
本页的部分内容是基于 Chromium.org 创建和共享的作品的修改,并根据 Creative Commons 署名 4.0 国际许可中所述的术语使用。