Firefox 127 的开发者说明
本文提供了有关 Firefox 127 中影响开发者的变更信息。Firefox 127 于 2024 年 6 月 11 日发布。
为 Web 开发者带来的变化
HTML
- 现在禁止在
<base>
元素的href
属性中使用data:
和javascript:
URL。(Firefox bug 1850967)。
CSS
- 现已支持在使用
conic-gradient()
、linear-gradient()
和radial-gradient()
函数创建渐变时,以及在使用repeating-conic-gradient()
、repeating-linear-gradient()
和repeating-radial-gradient()
函数创建重复渐变时,使用<color-interpolation-method>
。(Firefox bug 1861363)。
JavaScript
-
现已支持以下
Set
方法(Firefox bug 1868423):Set.prototype.intersection()
——返回一个含有同时存在于当前集合以及给定集合中的元素的新集合。Set.prototype.union()
——返回一个含有当前集合以及给定集合中的所有元素的新集合。Set.prototype.difference()
——返回一个含有当前集合中存在而给定集合中不存在的元素的新集合。Set.prototype.symmetricDifference()
——返回一个含有存在于当前集合或给定集合,但不同时存在于两者中的元素的新集合。Set.prototype.isSubsetOf()
——返回一个指示当前集合中的所有元素是否都存在于给定集合中的布尔值。Set.prototype.isSupersetOf()
——返回一个指示给定集合中的所有元素是否都存在于当前集合中的布尔值。Set.prototype.isDisjointFrom()
——返回一个指示当前集合是否与给定集合没有任何元素相同的布尔值。
SVG
lh
和rlh
行高单位首先在 CSS 中得到支持(在 Firefox 120 中),现在也在 SVG 中得到了支持。它们可以在 CSS 属性值(stroke-width: 0.5lh
)和 SVG 属性值(stroke-width="0.5lh"
)中使用。(Firefox bug 1892089)。
安全
- Firefox 现在会自动将安全内容中的音频、视频和图像子资源的 HTTP 请求升级为 HTTPS,并阻止其他媒体类型的 HTTP 请求。如果因为媒体主机不支持 HTTPS 而导致升级请求失败,则认为找不到该媒体。这确保了如果内容通过 HTTPS 安全提供,则其所有子资源也必须通过 HTTPS 安全提供,否则不提供。由于页面不再显示混合内容,Firefox 还删除了用于指示页面是否包含混合内容的图标,并将控制台的混合内容警告替换为指示请求已被升级的警告。(Firefox bug 1779757)。
API
- 现已完全支持异步剪切板 API。
ClipboardItem
接口以及Clipboard
接口的read()
和write()
方法已启用。(Firefox bug 1887845、Firefox bug 1858788)。 - 所有的 HTML 字符引用都已在 Web 视频文本轨格式(WebVTT)的 cue、标题文本、注释、注解等中得到支持。(Firefox bug 1395924)。
- 现已支持
WebGLRenderingContext.drawingBufferColorSpace
和WebGL2RenderingContext.drawingBufferColorSpace
。(Firefox bug 1885491)。
WebDriver 一致性(WebDriver BiDi、Marionette)
常规
- 修复了 WebDriver classic 和 BiDi 中对滚轮(
wheel
)操作的支持,以正确处理ctrl
、shift
等修饰符。(Firefox bug 1885542)。
WebDriver BiDi
- 现已添加
permissions.setPermission
命令,其用于更新浏览器权限(例如geolocation
)。权限模块是 WebDriver BiDi 规范的扩展(定义于权限规范中)(Firefox bug 1875065)。 - 已为
browsingContext.locateNodes
命令添加了将无障碍属性name
和role
作为其定位器的支持(Firefox bug 1885577)。 - 已为
browsingContext.setViewport
添加了devicePixelRatio
参数,其用于模拟具有不同设备像素比的屏幕的行为(Firefox bug 1857961)。 - 改进了
browsingContext.navigate
,以避免竞态条件导致在解析命令之前进行不必要的等待(Firefox bug 1894305)。
Marionette
- 现已修复
WebDriver:ElementClear
以正确处理在禁用的 fieldset 中定位的元素(Firefox bug 1863266)。 - 现已修复
WebDriver:GetElementText
无法正确将包含下划线的文本转成大写的错误(Firefox bug 1888004)。 - 现已修复
WebDriver:SwitchToFrame
在导航时进行切换可能会失败的错误。(Firefox bug 1817820)。
为附加组件开发者带来的变化
- Firefox 现在可以安装 manifest.json
"incognito"
键的值为"split"
的扩展。然而,由于 Firefox 不支持分离模式,并为了保持隐私浏览的完整性,"split"
被视为"not_allowed"
值的别名(Firefox bug 1876924)。 - 现在,当附加组件使用企业策略安装时,
management.ExtensionInfo
返回的install_type
为"admin"
。(Firefox bug 1895341)。 - 为
declarativeNetRequest.getDynamicRules
和declarativeNetRequest.getSessionRules
添加了filter
参数,其用于通过 ID 过滤返回的规则列表(Firefox bug 1820870)。 - 现在在用户安装 Manifest V3 版本的扩展时会显示其
host_permissions
权限的信息(Firefox bug 1889402)。然而,如果扩展更新时请求了新的主机权限,则不会显示给同用户(Firefox bug 1893232)。 - 现已添加
runtime.getContexts
函数,其用于返回与扩展关联的上下文的信息(Firefox bug 1875480)。 - 对于 Manifest V3 扩展,如果没有为
_execute_action
命令定义用户快捷键,则会回退到特殊的_execute_browser_action
命令的用户定义快捷键。这使得从 Manifest V2 迁移到 V3 的扩展可以保留浏览器操作的任意用户定义快捷键(Firefox bug 1797811)。
实验性 Web 特性
这些特性是 Firefox 127 中新添加的,但在默认情况下是禁用的。要尝试这些特性,请在 about:config
页面上搜索相应的首选项,并将其设置为 true
。你可以在实验性特性页面上找到更多这样的特性。
-
使用 CSS
letter-spacing
实现对称间距:layout.css.letter-spacing.model
。CSS
letter-spacing
属性现在会将指定的字母间距均匀分配到每个字符的两侧。这与当前的行为(当前行为主要是将间距添加到一侧)不同(Firefox bug 1891446)。 -
calc()
相对颜色的色彩通道支持:layout.css.relative-color-syntax.enabled
。 -
JavaScript
Float16Array
类型化数组:javascript.options.experimental.float16array
。现已支持
Float16Array
类型化数组,以及用于通过DataView
读取和设置Float16Array
值的DataView.prototype.getFloat16()
和DataView.prototype.setFloat16()
,以及用于将数字舍入到 16 位的Math.f16round()
静态方法。新类型对于与 GPU 共享数据特别有用,特别是在需要以精度换取内存消耗的用例中。(Firefox bug 1833647。)
更早期的版本
- Firefox 126 的开发者说明
- Firefox 125 的开发者说明
- Firefox 124 的开发者说明
- Firefox 123 的开发者说明
- Firefox 122 的开发者说明
- Firefox 121 的开发者说明
- Firefox 120 的开发者说明
- Firefox 119 的开发者说明
- Firefox 118 的开发者说明
- Firefox 117 的开发者说明
- Firefox 116 的开发者说明
- Firefox 115 的开发者说明
- Firefox 114 的开发者说明
- Firefox 113 的开发者说明
- Firefox 112 的开发者说明
- Firefox 111 的开发者说明
- Firefox 110 的开发者说明
- Firefox 109 的开发者说明
- Firefox 108 的开发者说明
- Firefox 107 的开发者说明
- Firefox 106 的开发者说明
- Firefox 105 的开发者说明
- Firefox 104 的开发者说明
- Firefox 103 的开发者说明
- Firefox 102 的开发者说明
- Firefox 101 的开发者说明
- Firefox 100 的开发者说明
- Firefox 99 的开发者说明
- Firefox 98 的开发者说明
- Firefox 97 的开发者说明
- Firefox 96 的开发者说明