CSS和::之间的区别

时间:2014-01-20 12:53:44

标签: css css3

CSS和::之间究竟有什么区别? 例如,我看到CSS代码如:

.example:before{
   content:'just one';
}

.example2::before{
   content:'here two';
}

有什么区别?什么是最佳做法?

1 个答案:

答案 0 :(得分:9)

  

<强>伪类

     

引入伪类概念以允许基于位于文档树之外的信息进行选择,或者使用其他简单选择器无法表达的信息。

     

伪类总是由“冒号”(:)后跟伪类的名称和可选的括号之间的值组成。

参考:http://www.w3.org/TR/css3-selectors/#pseudo-classes

  

<强>伪元素

     

伪元素创建超出文档语言指定的文档树的抽象。例如,文档语言不提供访问元素内容的第一个字母或第一行的机制。伪元素允许作者参考这个否则无法访问的信息。伪元素还可以为作者提供一种引用源文档中不存在的内容的方法(例如,:: before和:: after伪元素可以访问生成的内容)。

     

伪元素由两个冒号(::)后跟伪元素的名称组成。

参考:http://www.w3.org/TR/css3-selectors/#pseudo-elements

我们通常只使用一个冒号来处理所有内容,但现在最好的做法是遵循W3C的指导原则,但我要添加一个警告,确保您支持的浏览器在开始制作之前理解语法批量更改样式表。