css - 为具有子元素的 <li> 设置样式

标签 css css-selectors html-lists

我正在尝试创建一个带有下拉子菜单功能的顶部菜单。 我想定位具有附加子菜单(子元素)的列表项。这样我就可以使用不同的颜色列表样式等来设计它们。

HTML:

<nav>
    <ul><div id="logo">
            <img src="images/design/logo.png" alt="Logo for responsive template" />
        </div>
        <li>Home</li>
        <li>Parrent Link
            <ul>
                <li>Child Link</li>
                <li>Child Link</li>
                <li>Parrent Link
                    <ul>
                        <li>Child Link</li>
                        <li>Child Link</li>
                        <li>Child Link</li>
                        <li>Child Link</li>
                        <li>Child Link</li>
                    </ul>
                </li>
            </ul>
        </li>
        <li>About</li>
        <li>Gallery</li>
        <li>Contact</li>
    </ul>
</nav>

因此每个父链接都有与其他链接不同的样式。

最佳答案

您可以使用 JQuery 来实现: example

$(function(){
    $('li').each(function(){   
        var parent = $(this).parent().parent();
        if(parent.is('li')){
            parent.addClass("colored");
        } 
    })
});

此解决方案假设您的 HTML 有效并且您使用 <ul><li>正确。

关于css - 为具有子元素的 <li> 设置样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21094304/

相关文章:

css-selectors - 用于包含短语的多个标签的 JSoup 选择器

jQuery 均匀高度 float LI

CSS:基于它们出现的顺序而不是基于类的样式列表项?

html - 在 IE7 中将 float 添加到灵活宽度的无序列表

javascript - 使用纯 javascript 将效果应用于特定的 lis

css - viewport-fit=cover 是否不再适用于 iOS Safari?

javascript - 自动化和简化跨浏览器支持

javascript - 使用 JS 设置 HTML 和 BODY CSS

css - 在短代码中加载特定的 css 文件 - wordpress

css - 第一个 child 在 tbody 中不起作用?