我知道,如果我们要确保一些CSS3特性在任何地方工作,我们需要使用W3C的前缀版本推荐一个这样的:
transition: all 1s ease;
-moz-transition: all 1s ease;
-o-transition: all 1s ease;
-webkit-transition: all 1s ease;
我知道前缀用于实验的功能,但为什么他们有必要吗? 他们为什么不对其进行测试的原始W3C一个? 是否每个CSS3功能有或有一个前缀为每一个浏览器或者他们只是创造一个前缀版本,如果他们认为他们应注意什么?
供应商前缀的最初目的是为供应商提供给自己加非标准功能用在他们的CSS实现的能力。 然而,大部分都是用于实验的东西版本的最终成为标准。
如果一个实验性质为前缀的,这意味着它是一个属性的正确,标准版。 如果每一个浏览器呈现不同的看法,那么就没有太大的标准。 相反,直到它确保它做了一个浏览器避免了实施一个前缀的属性,以便根据标准,那么它开始支持无前缀属性的话说它正确地支持该特定标准的一种方式。
并不是每一个功能都有一个前缀; 事实上,供应商创建,只有当它认为必要的前缀。
谁使用实验功能的人已经知道,一个标准的,跨浏览器的行为不应该在所有预期。
在我看来没有必要的前缀的新功能。 它使你有写的标准属性更难使用它们,Chrome的前缀属性,Firefox,歌剧......这也使得样式表更大的(谁将会在未来的删除所有那些前缀属性,并不需要他们的时候了吗?)。
我看不到任何优势,但它只是我的意见。
亚..可能是我们以后将不必使用这些前缀不同的浏览器,但现在每个浏览器都存在不同的CSS库,以便为前端开发者,我们必须使用这些前缀在其他我们的CSS明智一些浏览器将无法呈现我们CSS。 这是他们的工作,我们必须遵守。
这里是WebKit和Firefox的前缀库的链接才可
http://developer.apple.com/library/safari/#documentation/InternetWeb/Conceptual/SafariVisualEffectsProgGuide/Gradients/Gradient.html
https://developer.mozilla.org/en-US/docs/CSS/CSS_Reference/Mozilla_Extensions