下拉菜单中的无限级别

时间:2013-11-19 16:10:26

标签: jquery html css drop-down-menu

我有一个生成的无序列表,其中包含我要在下拉菜单中创建的列表。

问题在于我不知道会有多少级别,我只希望一次显示一个级别。

到目前为止,我得到了这个:


HTML:

<ul class="nav">
    <li>
        <a href="#">link1</a>
    </li>
    <li>
        <a href="#">link2</a>
        <ul>
            <li>
                <a href="#">link2.1</a>
                <ul>
                    <li>
                       <a href="#">link2.1</a>
                    </li>
                </ul>
            </li>
        </ul>
    </li>
</ul>

CSS:

.nav ul {
}
.nav li ul {
    display: none;
}
.nav ul li a {
    display: block;
}
.nav li:hover ul { 
    display: block; 
}

然而,此代码显示悬停在顶部时的所有子ul。而我想要的只是展示下一个级别,并隐藏在该级别下的子级别。等等。但仍然显示水平。

1 个答案:

答案 0 :(得分:5)

<强> jsFiddle DEMO

.nav ul {
}
.nav li ul {
    display: none;
}
.nav ul li a {
    display: block;
}
.nav li:hover>ul { //change here
    display: block; 
}

不显示ul的所有hover子女,而只展示直接子女。