javascript - 悬停时同时显示下拉菜单
问题描述
我使用 Bigcommerce 模具。当我悬停时,两个下拉菜单都会显示。
我的目标是将鼠标悬停在一个链接上,只会弹出一个下拉菜单。
<div class="nav-links">
<div class="nav-container">
{{#each categories}}
<a href="{{url}}">{{name}} <i class="fas fa-sort-down "></i></a>
<div class="nav-content">
{{#each children}}
{{#if categories "==" is_active}}
<ul class="nav-list">
<li><a id="dropdown-links" href="{{url}}">{{name}}</a></li>
</ul>
{{/if}}
{{/each}}
</div>
{{/each}}
</div>
</div>][2]][2]
我正在使用 Bigcommerce,当我显示类别的子类别(子类别)并使用 css 使其下拉时,子类别或下拉菜单会同时显示。在图片中,您可以看到我将鼠标悬停在 CASES 上,但它显示了 SKINS 的下拉菜单。
这是CSS:
.nav-list
{
display: none;
list-style: none;
z-index: 99999 !important;
}
.nav-content {
position: absolute;
background-color: #f8f8f8;
right: 10px;
}
.nav-container:hover .nav-list
{
display: block;
}
解决方案
您将鼠标悬停在 上nav-container
,因此display: block;
将应用于nav-list
该容器下的任何内容。在这种情况下,所有nav-list
s 都在 下nav-container
,因此它们都会显示。
从您的结构来看,您似乎必须将:hover
选择器应用于链接本身,并将样式应用于其相邻的兄弟nav-content
。像这样:
a:hover + .nav-content {
display: block;
}
推荐阅读
- android - 多数据源android的分页库DataSource.Factory
- c# - c# local 无法打开登录请求的数据库。登录失败。用户 MicrosoftAccount\(电子邮件)登录失败
- c# - 使用 Geocode.Core 在 WPF C# 应用程序中获取当前位置
- elasticsearch - ElasticSearch 使用动态映射将字符串转换为数字
- flutter - chart_flutter ^0.6.0 版本解决失败
- python - Python:UnicodeEncodeError:'ascii'编解码器无法编码字符
- linux - 从串行终端读取时确定 \r 伪影的原因?
- python - 如何使用字典作为输入进行多线程处理?
- haskell - 类/实例类型检查规则学习资源
- jenkins - Jenkins:让 email-ext 与令牌宏插件一起使用