Css 在任何父LI悬停时显示所有子ULs

Css 在任何父LI悬停时显示所有子ULs,css,menu,html-lists,Css,Menu,Html Lists,有一个嵌套的LI菜单-我想能够做的是当任何父LI悬停在上面时显示所有子ULs。理想情况下,仅使用CSS?但是如果不是CSS中的poss,jQuery是可以的 菜单代码为: <ul> <li><ahref="#">Item 1</a> <ul> <li><ahref="#">Sub Item 1</a></li> <li><ahref="#">Sub Item 2&l

有一个嵌套的LI菜单-我想能够做的是当任何父LI悬停在上面时显示所有子ULs。理想情况下,仅使用CSS?但是如果不是CSS中的poss,jQuery是可以的

菜单代码为:

<ul>
<li><ahref="#">Item 1</a>
<ul>
<li><ahref="#">Sub Item 1</a></li>
<li><ahref="#">Sub Item 2</a></li>
<li><ahref="#">Sub Item 3</a></li>
</ul>
</li>
<li><ahref="#">Item 2</a>
<ul>
<li><ahref="#">Sub Item 1</a></li>
<li><ahref="#">Sub Item 2</a></li>
<li><ahref="#">Sub Item 3</a></li>
</ul>
</li>
</ul>

例如,当项目1悬停在上方时,项目1和项目2的子菜单应显示。。。容易的?我似乎无法解决这个问题(

根据您当前的要求,
  • 的悬停应该显示所有同级
  • 元素的
      子元素。如果没有JavaScript,这是不可能的(有或没有库,因为CSS无法选择以前在DOM中出现的元素,包括祖先元素和以前的同级元素);但是,如果您愿意允许悬停在父元素
      上,则可以使用简单的CSS:

      ul > li {
          display: list-item;
      }
      
      li > ul {
          display: none;
      }
      
      ul:hover > li > ul {
          display: block;
      }
      

      在上述情况下,使用子组合符(
      )意味着这将仅显示
      元素的第一级,如果最后一条规则被修改,则可以显示所有
      子元素:

      ul:hover > li ul {
          display: block;
      }
      

      .

      您现有的(相关的)是什么CSS?不-不是一个重复的问题。这里的区别是我希望所有的子ULs都显示在任何家长的悬停上LI…Jheeze!做得好。我正在删除我的答案并+1'ing。@BeatAlex:谢谢!但是,我不确定这是否比你自己的答案好得多。顺便说一句。我想这在旧IE中不会很好,尽管>不受支持,是吗?那会是什么呢e jQuery更通用的解决方案,以实现相同的最终结果?它在IE 7及更高版本中受支持();老实说,我建议你甚至不要为IE 5.5或6而烦恼;它们的成本比从支持中得到的回报要高。同样,当然,那些浏览器也无法识别
      :将
      悬停在
      以外的任何元素上。这太棒了。谢谢你的回答!