关于CSS伪类选择器

时间:2022-08-24 21:16:42

#CSS伪类选择器

##使用css伪类选择器需要注意的

使用css的伪类选择器来选择某元素时,需要特别注意 :first-child 和 :nth-child(n) 等时,
网页渲染是从语句的后面开始读取的,也就是说,类似 p:first-child 这样的伪类选择器,指的是“某元素的以p元素作为第一子项的那项”,而不是“p元素的第一个子项”.

原因是因为,其实这里在p:之前,省略了 xxx & nbsp; 这几个字符,导致很容易产生误解。

e.g.

    div p:first-child{color:red;}

    <div>

        <h1>111</h1>

        <p>222</p>

        <p>333</p>

    </div>

这里的222字符不会变红,因为它不是div元素的以p元素为第一子项的那个元素,在这个例子中,div 元素以p元素作为第一子项是不成立的,没有任何一个元素符合这个条件,h1元素也不会响应color:red.

##用css伪类选择器去除带有边框的最后一个元素的办法

如果在设计一个导航栏时,每个元素之间有竖线相隔,通过伪类选择器可以很简洁地去除最后一个li元素的右边框线。

    li{
border-right:1px red solid;
}
ul li:last-child{
border-right:none;
}

即可去除最右边的也就是最后一个li的有边框线,而不用额外给最后一个li取名。