css last-child不起作用

css last-child不起作用

css last-child不起作用是因为选择器写错了,例如p:last-child用于选择属于其父元素最后一个子元素中所有的p元素。当最后一个元素不是p元素,就无法选中,改成p:last-of-type即可。

(推荐学习:CSS视频教程

代码示例:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>伪类选择器</title>
    <style type="text/css">
        .div-01:last-child{
            color: red;
        }
    </style>
</head>
<body>
    <div class="div-01">
        <p class="p-01">
            123
        </p>
    </div>
    <div class="div-01">
        <p class="p-01">
            345
        </p>
    </div>
    <div class="div-01">
        <p class="p-01">
            456
        </p>
    </div>
    <p>
        567
    </p>
    <p>
        678
    </p>
</body>
</html>

原本觉着,选择器会选中

<div class="div-01">
   <p class="p-01">
      456
   </p>
</div>

可结果出乎意料,我们重新理解一下last-child选择器,在CSS标准中的含义

:last-child p:last-child 选择属于其父元素最后一个子元素每个 <p> 元素。

选择其父元素最后一个子元素,每个<p>元素,根据这段话我们能否发现:div-01对应父元素是body,而body最后一个子元素是

<p>
   苦
</p>

而我的选择器是:

.div-01:last-child

p对应的类与选择器不匹配,自然就选择不上了。

改用last-of-type即可。:last-of-type表示其父元素下的最后一个指定类型的元素。

更多CSS相关技术文章,请访问CSS3答疑栏目进行学习!

以上就是css last-child不起作用的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » CSS3 答疑