将样式应用于包含嵌套列表的列表项

时间:2012-03-19 21:39:01

标签: html css

我有一个类似于:

的列表
<li>List Item 1</li>
<li>List Item 2
    <ul>
        <li>Sub List Item 1</li>
    </ul>
 </li>
 <li>List Item 3</li>

我想将包含嵌套列表的所有列表项设置为粗体,并将其余列表保持正常:

  • 列出项目1
  • 列出第2项
    • 子清单项目1
  • 列出项目3

这是我可以用CSS做的事吗?

2 个答案:

答案 0 :(得分:3)

我假设你不想手动为有孩子的列表项添加课程:

<li class="nestedlist">

正确?您希望自动检测它吗?

遗憾的是,无法根据子项更改CSS中父元素的样式。不过,你可以用快速的JS做到这一点。

这是一篇有趣的文章,关于为什么他们不会允许我们这样做...虽然我不相信! http://css-tricks.com/parent-selectors-in-css/

答案 1 :(得分:1)

你可以使用jQuery .children()函数来完成它。

这样的事情:

$('li').each(function(){
    if ($(this).children().length > 0){
        $(this).css('font-weight','bold');  
    }
});

你需要设置你的css,这样孩子李也不会大胆。或者你可以添加额外的jQuery来防止它。