4

我刚刚从这个网站下载了一个 css 文件,它包含诸如 和 之类的-webkit-transform属性-moz-transform。破折号是什么意思,在什么情况下需要它?

对于整体而言,短语“供应商前缀”是指 - 或 - 和 - 之间的内容(散发出 - 和 - )还是 - 和 - 之间的内容(包括 - 本身)?

换句话说,供应商前缀是指破折号本身还是仅指破折号之间的内容或破折号与它们之间的内容?

4

2 回答 2

6
于 2013-04-30T03:03:16.493 回答
2

它们被称为供应商前缀。不同的浏览器有不同的前缀:

  • -webkit- - 基于 Webkit 的浏览器,例如 Safari 和 Chrome
  • -moz- - 基于 Gecko 的浏览器,例如 Firefox
  • -ms- Internet Explorer
  • -o- 基于 Presto 的浏览器,例如 Opera

供应商前缀用于表示实验性 CSS 功能。当特定属性或规范被认为不稳定时使用它们,并且将来可能会发生变化。通过使用前缀,浏览器可以试验该功能,而不会有开发人员使用该属性的风险,并且如果行为或语法发生更改,网站将中断。一旦规范成为最终版本,前缀就会被移除,一些浏览器会移除对前缀版本的支持。

W3C 的官方指导是,在属性或特性来自的规范达到候选推荐之前,应使用前缀。

一般的最佳实践是一个接一个地使用所有供应商前缀,最后使用无前缀版本。

Mozilla 和 Chrome(现在他们正在转向 Blink 引擎)已更改策略,将功能隐藏在标志后面,而不是使用前缀。这意味着除非用户启用该标志,否则该功能将无法使用。

有关更多信息,请参阅 CSS 工作组的此 wiki 页面:http ://wiki.csswg.org/spec/vendor-prefixes

于 2013-04-30T03:05:34.017 回答