首页 > 代码库 > 对于伪类的理解 :first-child

对于伪类的理解 :first-child

今天看到伪类 :first-child;发现自己对于伪类的理解又有偏差,这里用代码说明一下

代码如下

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        span:first-child{
            color: red;
            background-color: red;
        }
    </style>
</head>
<body>
<div>
    <span>我是一段文本</span>
    <p>这是一段文本<span>我是这段文本之中的span</span><span>我是第二段文本</span></p>
    <p>这是第二段文本</p>
</div>

</body>
</html>

显示效果如下

技术分享

一个常见的错误是将:first-child记为元素的第一个子元素,但事实并非如此

这个伪类是要选择作为作为某一个元素的第一个子元素的元素,例如:在上面的代码中,span:first-child:这个伪类的意思是选择作为某个元素第一个子元素的span元素,

至于是哪个元素没有关系,只要span元素在这个元素中以第一个元素存在的,就会被选择到

在上面的代码中,

有两个span元素,第一个span元素在div元素中作为第一个子元素,能够被选择到

第二个span元素在p元素中作为第一个子元素,也能被选择到了

也就是说,对一个元素应用:first-child伪类,只要这个元素在其父元素中是以第一个子元素的形式存在的,就能够被选择到,而不论这个父元素在是哪个元素

对于伪类的理解 :first-child