一尘不染

在CSS中将:last-child与:not(.class)选择器组合

css

是否可以选择最后一个没有课程属性的孩子?像这样:

<tr> ... </tr>
<tr> ... </tr>
<tr> ... </tr>
<tr class="table_vert_controls"> ... </tr>

在这种情况下,我想选择第三行。

我尝试了以下操作,但无效:

tr:not(.table_vert_controls):last-child

提前致谢。


阅读 1083

收藏
2020-05-16

共1个答案

一尘不染

不单单是CSS选择器,也不是,就像:last-child专门针对 最后一个child一样 ,并且没有类似的:last-of- class伪类。请参阅我对这个相关问题的回答。

截至2015年底,对于选择器4的扩展,实现已开始慢慢进行:nth-child():nth-last- child()并允许您将任意选择器作为参数传递(有关更多信息,请参见链接答案的更新)。然后,您将能够编写以下内容:

tr:nth-last-child(1 of :not(.table_vert_controls))

尽管最近已经开始实现该实现,但要获得广泛的支持还需要至少几年的时间(截至2018年4月,即第一个发布的浏览器两年半之后,Safari仍然是唯一拥有此功能的浏览器。这样做)。同时,您还必须使用其他方法,例如在所讨论的类之前的其他类或jQuery选择器:

$('tr:not(.table_vert_controls):last')
2020-05-16