CSS 定位类类型的最后一个,但不是最后一个子级

标签 css css-selectors

JS Fiddle

在不改变 html 的情况下有没有办法使用 CSS 来定位最后一个 .red 类?

<div class="row">
    <div class="red">Red</div>
    <div class="red">Red</div>
    <div class="red">Target Me With CSS???</div>
    <div class="blue">Blue</div>
    <div class="blue">Blue</div>
    <div class="blue">Blue</div>
</div>

这是我尝试过的:

.row > div{
    display:inline-block;
    padding:10px;
}

.row .red{
    background-color:#770000;    
    color:#fff;
}

.row .red:first-child{
    background-color:#440000;    
    color:#fff;
}

/*have tried :last-of-type too*/
.row .red:last-child{
    background-color:#FF0000;    
}

.row div:last-child{
    background-color:#0000BB;    
}

最佳答案

我不相信有一种方法可以在不使用 JS 的情况下做到这一点。

您可以获得的最接近的目标是使用以下方法定位第三个元素:

.row div:nth-child(3) {
    background: chucknorris;
}

您可以包含一个限定符,仅针对第三个子级(如果它是 .red),如下所示:

.red:nth-child(3) {  
   background: chucknorris; 
}

http://jsfiddle.net/s76J3/3/

关于CSS 定位类类型的最后一个,但不是最后一个子级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20183544/

相关文章:

css - CSS : div. something 或 just .something 有什么更好的

jquery - 为什么 Sizzle 从右到左评估选择器?

html - CSS 选择最后一个跨度元素

css - :first-child with different class names

CSS 选择器 :child(> n)?

css - 如何只使图像可点击而不是整个 div?

javascript - jquery 文件树高亮选中

css - 自动调整标题图片大小以适应浏览器

html - 在 CSS 中设置高度以从页面中间到达视口(viewport)底部

html - 制作.png文件的.ttf文件