如何选择元素中除最后一个孩子之外的全部孩子?

我如何使用CSS3选择器选择除最后一个孩子之外的全部孩子? css

例如,仅获取最后一个孩子将是div:nth-last-child(1)浏览器


#1楼

Nick Craver的解决方案有效,但您也能够使用如下方法: ide

:nth-last-child(n+2) { /* Your code here */ }

CSS Tricks的Chris Coyier为此作了一个不错的:nth测试人员测试


#2楼

您能够对:last-child伪类使用否认伪类:not() 。 正在被引入CSS选择器3级,它不适用于IE8或更低版本: spa

:not(:last-child) { /* styles */ }

#3楼

当IE9出现时,它将变得更加容易。 可是,在不少时候,您能够将问题切换到要求:first-child的样式,并设置元素的另外一面(IE7 +)的样式。 code


#4楼

简单点:

您能够将样式应用于全部div,而后使用:last-child从新初始化最后一个样式: get

例如在CSS中io

.yourclass{
    border: 1px solid blue;
}
.yourclass:last-child{
    border: 0;
}

或在SCSS中ast

.yourclass{
    border: 1px solid rgba(255, 255, 255, 1);
    &:last-child{
        border: 0;
    }
}
  • 易于阅读/记住
  • 快速执行
  • 浏览器兼容 (IE9 +,由于它仍然是CSS3)

#5楼

从最后查找元素,使用 class

<style>
ul li:nth-last-of-type(3n){ color:#a94442}  /**/
</style>
相关文章
相关标签/搜索