我们是否还应该使用-webkit-和-moz-来识别CSS3属性?

时间:2012-09-30 03:11:23

标签: css css3 vendor-prefix

我正在尝试清理一个CSS文件,我想知道现在是否可以安全删除供应商特定的属性是否已经标准化(或至少是半标准化的)?

例如我还应该使用

-webkit-border-radius
-moz-border-radius
border-radius

或者仅仅使用

更好
border-radius

3 个答案:

答案 0 :(得分:1)

是的,我会说坚持下去。除非您确定X浏览器已经标准化。根据w3schools的说法,所有主流浏览器都支持border-radius,但是这些信息不是一个值得信赖的网站。

为什么不试试呢?

答案 1 :(得分:1)

这取决于属性,但主要答案是你应该继续使用浏览器前缀版本。它取决于实现状态和各种版本浏览器的实际使用,而不是标准化状态。

查看MDN descriptions of properties浏览器兼容性部分。虽然在所有情况下都不具有权威性并且不是绝对最新的,但它们是一个很好的参考。例如,border-radius description表示Firefox 4.0及更高版本,Chrome 4.0和Safari 5.0支持标准的非前缀版本。旧版本的使用率非常低。

另一方面,不应该清除现有代码。你只会冒险在编辑代码时犯一些愚蠢的错误。即使例如当前版本Firefox忽略了前缀属性名称,这不会阻止使用它的页面工作,前提是它们也使用标准名称设置属性。

相比之下,例如,非常有用的hyphens属性当前具有 no 支持,除非以浏览器为前缀。再举一个例子,border-image主要仅支持浏览器前缀,但Firefox 15和更新版本以及Opera也支持标准名称。

有些原因可能仍然使用旧版本的浏览器。一个原因是某些环境中某些重要的应用程序可能无法在较新版本的浏览器上运行。 (或者当我遇到一些非常旧的版本时,我就被告知了这一点。)

答案 2 :(得分:0)

使用前者支持向后兼容性。

-webkit-border-radius
-moz-border-radius
border-radius