如何通过CSS获取页面上特定id的最后一个ul:last-child属性?

时间:2013-11-27 15:59:34

标签: css

我的页面生成两个具有相同ID的UL,我想通过CSS删除最后一个(显示:无)。我正在尝试:最后一个孩子的财产,但没有运气。我要么让它们都消失,要么都不消失。

示例:

<div id="content">

<ul id="some-ul">
<li>...</li>
<li>...</li>
</ul>

<ul id="some-ul">
<li>...</li>
<li>...</li>
</ul>

</div>

我想将display:none仅应用于#content中的最后一个ul#some-ul。

2 个答案:

答案 0 :(得分:3)

可以这样做:

#content ul:last-child {
   display:none;
}

请注意,只有IE9 +支持last-child。正如@Jop所提到的,你应该在最后一个子元素上设置一个类来解决旧版IE的问题。

jsFiddle here.

此外,请记住,ID 始终应该是唯一的。

答案 1 :(得分:0)

完全通用的方法,它不依赖于任何类或ID

div ul:last-of-type li:last-child {
    display:none;
}

所以基本上,div是包含列表项的父项 - 如果需要,它可以有一个类或ID。

在其中,你有你的ul标签 - 最后一个类型的魔法,找到父div中的最后一个ul。然后你只需使用li上的最后一个孩子。

这是小提琴: http://jsfiddle.net/Kx8SN/