Firefox:你可能不知道的 46 个功能

自从 Firefox 3 发布以来,我们一直在努力为 Web 开发人员添加新的功能。我们认为发布一篇列出所有已知功能(以及用户可能不知道的功能)的文章非常有价值。这包含了我们在过去三个版本左右完成的所有工作,但也特别指出了 3.6 中的新功能。

希望您喜欢!

CSS

@font-face

显示在线字体(支持 WOFF 和 TTF 字体

pointer-events

点击穿透元素

:-moz-locale-dir(ltr/rtl)

了解您是否处于 ltr 或 rtl 上下文

:indeterminate 伪类

用于“未确定”单选按钮和复选框

媒体查询

根据媒体(大小、纵横比、颜色、方向、分辨率)选择 CSS。 具有新的类来检测您是否在触摸设备上

结构性伪类

:nth-child、:nth-last-child、:nth-of-type、:nth-last-of-type 等。

-moz-border-radius

圆角边框

CSS 变换

缩放、平移、倾斜和旋转您的元素

CSS 渐变

使用线性渐变和径向渐变作为背景

多重背景

将图像、渐变和其他项目都用作同一背景的一部分

背景大小

定义背景图像的大小

CSS 列

以列的形式显示您的内容

文本阴影

文本周围的阴影

盒子阴影

元素周围的阴影

边框图像

使用图像作为元素的边框

rem 长度单位

将元素大小与根文本元素进行比较

图像渲染算法

优化调整大小的图像的速度或质量

XMLHttpRequest

跨域 XMLHttpRequest

允许 XMLHttpRequest 访问其他域

监控请求进度

计算上传或下载的百分比

发送二进制数据

发送非 ASCII 内容

读取请求中的二进制数据

读取服务器通过 XMLHttpRequest 发送的二进制数据

离线

离线和在线事件

在浏览器上线或下线时获得通知

localStorage

存储持久性数据

HTML5 应用程序缓存

为 Firefox 构建离线应用程序

内容

视频标签(poster 属性

直接将视频嵌入到您的网页中

音频标签

将音频文件嵌入到您的网页中

Canvas 元素

使用 JavaScript 绘制位图数据

动画 PNG 图形

为您的透明 PNG 图形制作动画

SVG 支持

绘制、操作和获取矢量图形的事件

ForeignObject

在 SVG 元素内添加 HTML 内容

将 SVG 效果和变换应用于普通的 HTML 内容

使用 SVG 进行 CSS 蒙版、剪辑路径或滤镜

交互

页面内拖放

在您的 Web 应用程序内干净地支持拖放

从桌面拖放文件

将文件直接从操作系统拖放到您的网页中

DNS 预取

通过 DNS 预取加快网页加载速度

地理位置

检索某人的 GPS 坐标或 街道地址

鼠标手势事件

从您的触控板进行滑动、放大和旋转

检测设备方向

用于检测机器方向的事件

基于 Web 的协议处理程序

设置一个 Web 应用程序来支持“mailto:”或“phone:”之类的协议

检测文档宽度和高度的变化

了解何时有人更改文档的大小

窗口和 iframe 之间的通信

安全地将消息从一个文档发送到另一个文档

JavaScript 和 API

原生 JSON

安全快速地编码和解码 JavaScript 对象

Web Workers

在一个线程中运行 JavaScript 代码

文件 API

读取拖放和文件上传控件中文件的二进制内容

QuerySelector

通过 CSS 选择器在网页中查找元素

classList

轻松操作元素的类

脚本元素的 defer 和 async 属性

使用新的脚本属性提高页面加载性能

关于 Paul Rouget

Paul 是一位 Firefox 开发人员。

Paul Rouget 的更多文章…


16 条评论

  1. Tony Mechelynck

    这些大多数是 Gecko 功能,而不是 Firefox 独有的功能,对吧?所以
    – 在(例如)SeaMonkey 用户代理字符串的 rv:1.9.x 部分中,我应该注意哪个 x 值才能使用上面提到的“Fx 3.6 中的新功能”?
    – 其中一些功能已经存在很长时间了,例如,我这里有一本关于 CSS 的书,其中将 -moz-border-radius 记录为“从 Netscape 6 开始就存在”。我想知道为什么它还没有成为“官方”CSS 的一部分。哦,好吧,我想标准的演变就是如此缓慢。

    2010 年 2 月 24 日 上午 08:07

    1. Marcel Korpel

      不要测试 Gecko 或浏览器的版本号,而是使用特性检测。Nicholas Zakas 撰写了一篇关于此的 精彩文章。此外,请查看这些 Javascript 特性测试CSS 支持检测

      边框半径将成为 官方 CSS3 的一部分。

      2010 年 2 月 27 日 下午 14:21

      1. Marcel Korpel

        当然,我应该指向 CSS3 的最新规范

        2010 年 2 月 27 日 下午 15:07

  2. vinyll

    感谢这份不错的列表…
    我们“只需要”现在学习和测试每一个!
    再见假期和周末 :s

    2010 年 2 月 24 日 上午 09:45

  3. PJ

    这是一个很棒的列表。我肯定会将从桌面拖放的功能整合到我的应用程序中。它肯定会让上传大量文件变得容易得多。

    但我希望其中更多功能成为标准的 HTML 或 CSS 组件,因为对于希望在浏览器中使用某个功能但不受支持的用户来说,这很困难。

    2010 年 2 月 24 日 下午 13:40

  4. Paul Rouget

    实际上,-moz-border-radius 不是 Firefox 3.* 特定的(在 Firefox 3.0 之前就存在)。

    2010 年 2 月 24 日 下午 13:42

    1. Tony Mechelynck

      我知道:NS6 比 Fx3 要老得多,不是吗?但是我的问题仍然存在:对于您提到的那些“Fx 3.6 中的新功能”(其他功能),我应该在 SeaMonkey UA 字符串中寻找哪个 1.9.x?

      2010 年 2 月 25 日 下午 15:47

  5. Dao

    :-moz-locale-dir 旨在用于 XUL 应用程序,而不是 Web 上。

    2010 年 2 月 24 日 下午 15:12

  6. Ken Saunders

    很酷的帖子。
    我了解其中大部分,但现在是时候重新审视它们了,因为一些想法已经产生。
    谢谢

    2010 年 2 月 24 日 下午 16:21

  7. […] 翻译自Mozilla Hacks,不过这里的特性是针对开发人员的。(由于使用了一些特性的CSS,不知道在阅读器里面会不会受到影响) […]

    2010 年 2 月 24 日 下午 20:27

  8. voracity

    弹性盒呢?我希望看到一篇专门介绍它的 hacks.mozilla.org 文章(尤其是在 Webkit 也支持它的情况下)。

    2010 年 2 月 24 日 下午 21:23

  9. Brett Zamir

    这些都很棒….

    有人应该做一些类似的事情来介绍很酷的 XPCOM 接口…

    2010 年 2 月 25 日 上午 01:32

  10. […] (原文链接:https://hacks.mozilla.ac.cn/2010/02/firefox-46-features/) 发表在 火狐在中国 | 引用通告 | del.icio.us | 返回顶部 […]

    2010 年 3 月 4 日 下午 22:08

  11. Jakob K…

    当我阅读这篇文章时,我心想:“如果 Firefox 不仅支持‘-moz-border-radius’,还支持‘border-radius’就好了!”

    “border-radius”在 CSS3 中,这意味着——在我看来——“-moz-border-radius”并不重要。

    2010 年 3 月 17 日 下午 14:56

  12. George White

    我认为 FF 3.6 中的 DNS 预取和 CSS 获取存在问题。我经常收到“服务器未找到”错误。刷新浏览器后,网站会加载。但问题尚未结束。浏览器根本不会获取样式表。我只能看到没有样式的页面。如果我再次刷新,网站会正常加载。

    所以每次我都要点击两次刷新按钮 :(

    2010 年 8 月 23 日 上午 04:38

  13. Reynir Heiðberg Stefánsson

    动画 PNG?MNG 有什么问题?

    2010 年 11 月 11 日 上午 04:19

本文的评论已关闭。