这是列表和元素:
<ul>
<li>
<a href="#">Home</a>
</li>
<li>
<a href="#">Forums</a>
<ul>
<li>
<a href="#">Baseball</a>
<ul>
<li>
<a href="#">Trading</a>
</li>
<li>
<a href="#">Personal Collections</a>
</li>
<li>
<a href="#">Box Breaks</a>
</li>
</ul>
</li>
<li>
<a href="#">Basketball</a>
<ul>
<li>
<a href="#">Trading</a>
</li>
<li>
<a href="#">Personal Collections</a>
</li>
<li>
<a href="#">Box Breaks</a>
</li>
</ul>
</li>
<li>
<a href="#">Football</a>
<ul>
<li>
<a href="#">Trading</a>
</li>
<li>
<a href="#">Personal Collections</a>
</li>
<li>
<a href="#">Box Breaks</a>
</li>
</ul>
</li>
<li>
<a href="#">Hockey</a>
<ul>
<li>
<a href="#">Trading</a>
</li>
<li>
<a href="#">Personal Collections</a>
</li>
<li>
<a href="#">Box Breaks</a>
</li>
</ul>
</li>
</ul>
</li>
</ul>
这是 CSS:
ul
{
margin: 0;
padding: 0;
list-style: none;
width: 100px;
border-bottom: 1px solid #ccc;
}
a
{
color: #777;
}
a:hover
{
background-color: #fff;
}
ul li
{
position: relative;
}
li ul
{
display: inline;
position: absolute;
left: 99px;
top: 0;
display: none;
}
li ul li ul
{
width: 150px;
}
ul li a
{
display: block;
text-decoration: none;
background: #bad8f8;
padding: 2px 0 2px 10px;
border: 1px solid #ccc;
border-bottom: 0;
}
li:hover > ul
{
display: block;
}
我想要发生的是,当我将鼠标悬停在论坛上时,它突出显示为白色。然后,如果我查看 Basketball,Forum 和 Basketball 会突出显示为白色。 children 也是如此。我希望能够显示一条路径,这样当他们越过某物时,定位应该能够告诉他们他们正在访问哪一个,我希望突出显示清楚。任何帮助,将不胜感激。哦,如果可能,请不要使用 Javascript。谢谢。
这是我将鼠标悬停在最后一个 child 上方时的样子:
而红色圆圈的我也想突出显示为白色。
更新
这是我将不得不接受的。现在它很丑陋,但这是我能想到的最好的。
最佳答案
在 CSS 中,当您向下导航嵌套的 ul 列表时,保持父级处于“选中”状态可能是不可能的。我不认为 CSS 选择器能够提升树。不过,使用 javascript 应该不难。这是一个引用:
Complex CSS selector for parent of active child
鲍勃
关于HTML 和 CSS 多层下拉菜单,需要悬停着色方面的帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4760314/