龙喵专栏 /前端 /内容

CSS3选择非第一个子元素

版权声明:龙喵网!!!网站网址:http://ailongmiao.com

很多时候我们工作项目中需要用CSS选择非第一个子元素,例如下面这样的HTML,希望让两个li之间间隔一定的距离,但又不希望简单的给每个li设置margin-top(会导致最后一个li也有margin-top,可能影响之后元素的排版)。

<ul>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
</ul>

这时如果能排除第一个元素,并给其他元素设置margin-top属性,就能实现比较好的效果了。

可以利用notfirst-child,通过下面的CSS实现。

ul> li:not(:first-child) {
    margin-top:10px;
}

还可以利用兄弟元素选择器+,像这样:

ul>li + li {
    margin-top:10px
}

如果HTML是这样的,应该怎么做呢?

<ul>
    <li></li>
    <p></p>
    <li></li>
    <li></li>
</ul>

其实也很简单,用通配符就可以了:

ul> * :not(:first-child) {
    margin-top:10px
}
版权声明:龙喵网!!!网站网址:http://ailongmiao.com

1.部分文章来自网络,如有侵犯权益,请联络博主,资源失效与内容勘误留言说明.

2.如若转载,请注明出处:http://ailongmiao.com/read/511.html

[ web前端导航 ]:http://ailongmiao.com/web/

评论

继续阅读

  选择打赏方式

打赏

打赏