我正在研究css和排版,遇到了伪选择器这个有趣的概念。我使用过单冒号的psuedo选择器,但不熟悉双冒号版本的psuedo选择器。I understand双冒号被称为伪元素而不是伪选择器--但为什么呢?有什么不同呢?
我也知道单冒号更受支持,那么在什么情况下会使用双冒号伪元素呢?是否存在需要双冒号而单冒号无法完成工作的用例?那会是什么情况呢?
与伪元素不同,伪类可以出现在选择器链中的任何位置。(引用自link) -我不知道“选择器链”是什么,但这似乎也是双冒号方法的另一个局限性。如果(在我的理解中)双冒号只是一个不太受支持的单冒号版本,为什么我需要使用双冒号呢?
编辑:它们在功能上似乎不同:fiddle
<div><p>First Line</p></div>
<div><p>Second Line</p></div>css
div:nth-child(1) > p {
color: green;
}
div::nth-child(2) > p {
color: blue;
}发布于 2015-04-21 01:43:50
伪类(:)允许您对元素的不同状态设置样式,例如,当您将鼠标悬停在其上时,当它被禁用时,当它是其父级的第一个子级时,等等。
伪元素(::)允许您对元素的不同部分设置样式,例如第一行、第一个字母、在前面或后面插入内容等。
最初,它们都使用单冒号,但CSS3引入了双冒号来分隔这两个冒号。
https://stackoverflow.com/questions/29754474
复制相似问题