【问题标题】:Why do browsers need vendor prefixes for CSS3? What is stopping them from just using the standard CSS3 properties? [duplicate]为什么浏览器需要 CSS3 的供应商前缀?是什么阻止他们只使用标准的 CSS3 属性? [复制]
【发布时间】:2011-12-11 01:24:07
【问题描述】:

可能重复:
Why do browsers create vendor prefixes for CSS properties?

例如,如果我想旋转一张图片,为什么当我使用 transform: rotate(50deg); 时谷歌浏览器什么也不做,而在我使用 -webkit-transform: rotate(50deg); 时却可以正常工作?

制定标准以使程序员/设计人员只编写一次相同的代码,而不是为每个浏览器编写一次,这难道不是重点吗?这是在可预见的将来会改变的事情,还是会一直这样?我才刚刚开始使用 CSS3,这对我来说真的很奇怪。

【问题讨论】:

  • 或者更确切地说,只是开始使用一般的 CSS。不知道这是否一直是个问题。

标签: browser css vendor-prefix


【解决方案1】:

CSS3 还没有作为一个完整的标准被正式采用——它仍然是draft proposal

供应商特定标签允许供应商现在使用experimental implementations 开始实施 CSS3 草案标准或提议的 CSS3 想法,同时确保他们当前使用这些专有标签的渲染可以在未来与实际 CSS3 的渲染区分开来根据最终规范标记,即使不同。

【讨论】:

    【解决方案2】:

    标准声明尚未实现,前缀是供厂商测试和实现专有功能。随着代码变得稳定,浏览器应该开始使用标准语句。

    因此,您必须始终将非前缀语句保留在末尾,如下所示:

    -o-transition: all 1s linear;
    -ms-transition: all 1s linear;
    -moz-transition: all 1s linear;
    -webkit-transition: all 1s linear;
    transition: all 1s linear;
    

    因为级联样式表得名于级联。标准语句将在可用时覆盖其余语句。

    【讨论】:

      猜你喜欢
      • 2013-11-28
      • 1970-01-01
      • 2011-12-29
      • 1970-01-01
      • 1970-01-01
      • 2014-10-15
      • 1970-01-01
      • 1970-01-01
      • 2014-10-15
      相关资源
      最近更新 更多