P粉842215006 2023-08-02 20:04:07 0 1 179
我正在设计导航条,但是我的鼠标悬停不起作用。当我悬停在“man”项目在我的下拉菜单,它的悬停样式,不工作,不显示样式在检查。有什么问题吗?这是我的HTML代码:
/* Navbar container */ body { margin: 0; padding: 0; box-sizing: border-box; } li { text-decoration: none; } .nav-container { direction: rtl; text-align: right } .navbar { overflow: hidden; background-color: #333; font-family: Arial; } /* Links inside the navbar */ .navbar a { float: right; font-size: 16px; color: white; text-align: center; padding: 14px 16px; text-decoration: none; } /* The dropdown container */ .dropdown { float: right; overflow: hidden; } /* Dropdown button */ .dropdown .dropbtn { font-size: 16px; border: none; outline: none; color: white; padding: 14px 16px; background-color: inherit; font: inherit; /* Important for vertical align on mobile phones */ margin: 0; /* Important for vertical align on mobile phones */ } /* Dropdown content (hidden by default) */ .dropdown-content { display: none; position: absolute; background-color: #f9f9f9; width: 100%; left: 0; box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2); z-index: 1; } .dropdown:hover .dropdown-content { display: block; } .megamenu-container { background-color: aqua; width: 100%; } .megmenu { width: 100%; } .megamenu-title { width: 20%; background-color: blue; display: inline-block; padding: 5px 15px; vertical-align: top; } .megamenu-subitems-default { width: 70%; background-color: blueviolet; display: inline-block; padding: 15px; } .megamenu-item { float: unset !important; padding: 0 !important; } .man:hover .megamenu-subitems-default { visibility: hidden; } #subitems { display: inline-block; visibility: hidden; background-color: yellowgreen; width: 70%; } .man:hover #subitems { visibility: visible; } .test { color: yellow; } .man:hover .test { color: wheat; }
Document
当我悬停在“man”项目在我的下拉菜单,它的悬停样式不工作,不显示样式在Inspect
P粉226413256 采纳为最佳 2023-08-03 18:28:06 1楼
在您的CSS文件中,您有这个规则:
然而,#subitems不是.man的后代。您需要将#subitems放置在与.man相同的层级上,或者作为它的后代。
这个CSS规则指定了当.hover在具有类.man的祖先之一上悬停时,具有id为#subitems的元素将变为可见;但是,在您的HTML中,.man是一个只有一个子元素.megamenu-item的div。
为了隐藏默认的子项div,请尝试替换这个选择器:
with:
对于每个菜单项的子项,我建议您要么为每个子项div提供一个唯一的ID并使用JavaScript控制它们的可见性,要么更改您的布局,使.megamenu-subitems div与li元素处于同一级别,并使用兄弟选择器,或者将它们作为li元素的后代。
赞 +0 添加回复