2011-10-28 26 views
2

我见过以下几行的CSS样式:CSS特殊类,如“:-moz-placeholder”

input::-webkit-input-placeholder {...} 

input:-moz-placeholder {...} 

他们为我提出了几个问题:

  • 这些东西叫什么? (我在搜索它们时遇到了麻烦。)
  • 是否有一个全面的列表,哪些浏览器支持哪些?
  • 哪些meta-CSS语言(Sass,Less,Stylus等)支持这些语言,如果有的话?

谢谢!

回答

4

事情与一个冒号称为伪类,它用于处理对象的不同状态(如:悬停和“活动”)。

射击描述和列表可以在那里找到:http://reference.sitepoint.com/css/css3psuedoclasses 说明在w3.org:http://www.w3.org/TR/selectors/#pseudo-classes

2个冒号称为伪元素的东西,它是用来自动生成的内容或类似的内容第一部分的风格第一行的字母。

说明在w3.org:http://www.w3.org/TR/selectors/#pseudo-elements

有很多通过这个列表的特定浏览器的扩展。这在css3标准中没有记录。

你可以找到Mozilla的浏览器在此列出:https://developer.mozilla.org/en/CSS_Reference/Mozilla_Extensions在部分“伪元素和伪类”。

找不到Webkit的伪元素的好名单,并通过 - 班。

3

它们被称为供应商特定属性,它们通常是CSS3格式的供应商版本。由于CSS3尚不是一个标准,因此在技术上任何实现它们的浏览器都实现了供应商特定的扩展。

-moz意味着Mozilla的火狐又名等。 -webkit指基于WebKit浏览器,例如Safari,Chrome浏览器Konqueror等。 -ms

参见:http://reference.sitepoint.com/css/vendorspecific

+0

我理解供应商特定的属性(例如“-webkit-边界半径”等),我特指这些伪类肥胖型选择器之类的输入字段的输入HTML5属性(“:: -webkit-input-placeholder“),它在类级别匹配,而不是属性。供应商特定的类,也许? – So8res

+1

@ So8res - 它们是供应商特定的伪类,但我不希望在该特定术语中找到太多内容,因为大多数文本都将它们称为HTML5/CSS3伪类。实施它们的供应商只有在供应商扩展之前使用了供应商扩展。 –