首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何实现不同类的CSS多级下拉菜单?

如何实现不同类的CSS多级下拉菜单?
EN

Stack Overflow用户
提问于 2011-10-30 08:16:08
回答 1查看 468关注 0票数 2

我正尝试用CSS实现一个多级的下拉导航菜单,但有一个小部分我似乎无法正常工作。

应该发生的情况是:

1)当鼠标悬停在菜单项上时,应使用不同的图像突出显示该菜单项(这很好用)。2)当鼠标悬停在子菜单项上时,父菜单项应突出显示。

Point2可以很好地工作,直到我在父菜单项上有一个类.bottom (这个类用于图像的细微差别)。如果父菜单项具有.bottom类,则不会发生高亮显示。

可以在此处查看演示:http://jsfiddle.net/cZFtW/2/

演示显示,当鼠标悬停在Menu 1> Sub Menu 3> Sub Sub Menu X上时,Sub Menu 3高亮显示。但是,将鼠标悬停在菜单2>子菜单3>子菜单X上时,不会高亮显示。

有人能看到我错过了什么吗?顺便说一句,这里没有不使用Javascript的真正理由,如果可能的话,我只是更喜欢用CSS来处理(只需要支持IE7+)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-10-31 03:53:29

TL;DR;版本:this fiddle显示了答案。

我明白你说的了。我非常确定,你需要回答的样式,除了底部的那一个,对所有人都有效,纯粹是偶然出现的。(我必须说,这是一个很好的选择)。我几乎可以肯定这一点,因为您的代码和文件名都缺乏任何形式的一致性。有重复的代码,有多余的代码,还有缺失的图像。

因此,我重写了您的标记和样式表,并如上所述地解决了这个问题。

现在,它是如何工作的呢?

诀窍是将背景图像附加到列表项中的元素。在本例中,我选择了锚元素,因为这是最有可能的。第一步是在悬停锚点时改变背景图像,这是基本的。

第二步是将鼠标悬停在子菜单上时再次更改背景。在这一点上,锚元素不再悬停,但是列表项被悬停。因此,您仍然可以更改锚点元素的背景。

注意:在我的解决方案中,与您所希望的有一点不同:当您悬停箭头时,如果列表项已经更改而不是直到光标悬停在子菜单上,则会显示背景。如果你想防止这种情况,那么你必须为每个子菜单添加额外的元素,就像你自己做的那样。但我觉得这也很不错。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7942542

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档