我们还需要 `box-shadow` 或 `border-radius` 前缀吗?

Avatar of Chris Coyier
Chris Coyier

DigitalOcean 为您旅程的每个阶段提供云产品。 立即开始使用 200 美元的免费额度!

Jay Hughes 提出的一个直接的问题

我之前没有专门写过关于这方面的文章,所以让我们来写一篇吧!

简短回答

特别是对于 `box-shadow` 和 `border-radius`,可能不需要。

你只需要它们,如果

  1. 在极少数情况下,方形角或无阴影的回退会影响用户体验。
  2. 并且 **你的网站** 拥有大量 Firefox 3.6-、Safari 4-、iOS 3.2- 或 Android 2.3- 的访问流量。

详细回答

让我们更深入地探讨一下。 首先,你可以在 Can I use… 上查看哪些浏览器支持哪些功能。

其次,你应该 **只** 基于 你自己的网站的统计数据 来做出关于功能支持的决定,而不是其他任何东西。

border-radius

Firefox 3.6- 需要 `-moz-`。 从 4 开始,不带前缀的就可以。 在这个网站上,大约 30% 的 Firefox 用户中,只有 0.3% 使用了 3.6 版本以下。

Safari 4- 需要 `-webkit-`。 在这个网站上,这个比例甚至更小。 大约 10% 的 Safari 用户中,只有 0.1% 使用了 4 版本以下。

iOS 3.x 也需要 `-webkit-`,这意味着从未升级过的 iPhone 3GS 或 iPad 1,这是最小的数字。

再说一次,**你的** 网站统计数据才是最重要的,但我猜大多数网站的总和都远低于 1%。

更不用说,不渲染的 `border-radius` 是“谁在乎”回退的典型代表。

box-shadow

阴影与之类似,但略微严格一些。 Firefox 和 iOS 的情况完全相同。 Safari 在 5.0- 中需要 `-webkit-`,但在三个月后的 5.1(与 OS X 10.7 一起发布)中修复了此问题。

最显著的区别是 Android 2.3 需要 `-webkit-`。 Can I Use 将其列为在 4.0 上需要,但我提交了更正,他们几个小时内就修复了,所以这很好!即使在这个网站上,我也看到了 0.5% 的比例,这比其他浏览器高得多。如果你的网站特别注重移动端,我相信这个数字会高得多。

没有阴影的回退可能没什么大不了的,但我确实遇到过它很重要的情况,所以就是这样。