CSS和::之间究竟有什么区别? 例如,我看到CSS代码如:
.example:before{
content:'just one';
}
和
.example2::before{
content:'here two';
}
有什么区别?什么是最佳做法?
答案 0 :(得分:9)
<强>伪类强>
引入伪类概念以允许基于位于文档树之外的信息进行选择,或者使用其他简单选择器无法表达的信息。
伪类总是由“冒号”(:)后跟伪类的名称和可选的括号之间的值组成。
参考:http://www.w3.org/TR/css3-selectors/#pseudo-classes
<强>伪元素强>
伪元素创建超出文档语言指定的文档树的抽象。例如,文档语言不提供访问元素内容的第一个字母或第一行的机制。伪元素允许作者参考这个否则无法访问的信息。伪元素还可以为作者提供一种引用源文档中不存在的内容的方法(例如,:: before和:: after伪元素可以访问生成的内容)。
伪元素由两个冒号(::)后跟伪元素的名称组成。
参考:http://www.w3.org/TR/css3-selectors/#pseudo-elements
我们通常只使用一个冒号来处理所有内容,但现在最好的做法是遵循W3C的指导原则,但我要添加一个警告,确保您支持的浏览器在开始制作之前理解语法批量更改样式表。