【发布时间】:2023-01-09 15:46:03
【问题描述】:
我使用 CSS 创建了一个下拉列表。当悬停导航栏的元素时,会弹出下拉菜单。代码中没有错误。但是,我需要有关导航栏样式的帮助。我希望子菜单中的所有元素都在同一行,即,我希望下拉菜单的元素处于同一位置,同时根据悬停在导航栏中的元素更改信息。参考可以在 lululemon 网站上下拉。
nav {
display: inline-flex;
width: 100%;
}
.nav-list {
display: flex;
width: 100%;
margin-top: .7rem;
padding-left: 1.1rem;
}
.nav-list li {
position: relative;
}
.nav-list>li>a {
color: black;
display: block;
font-size: 1rem;
padding: 1.3rem 1rem;
text-transform: uppercase;
transition: color 300ms;
}
.sub-menu a {
position: relative;
top: 2rem;
color: #ffffff;
font-size: 1.1rem;
font-weight: 200;
padding: 0 40px 0 40px;
}
.sub-menu {
display: flex;
position: absolute;
box-sizing: border-box;
background-color: black;
visibility: hidden;
box-sizing: border-box;
width: 50rem;
height: 15rem;
}
.nav-list li:hover>.sub-menu {
top: 3.85em;
visibility: visible;
opacity: 1;
}
<nav>
<ul class="nav-list">
<li>
<a href="">Men</a>
<ul class="sub-menu">
<li>
<a href="#">Mens shirts</a>
</li>
<li>
<a href="#">Mens Shorts</a>
</li>
<li>
<a href="#">Mens Accessories</a>
</li>
</ul>
</li>
<li>
<a href="%">Women</a>
<ul class="sub-menu">
<li>
<a href="#">Womens shirts</a>
</li>
<li>
<a href="#">Womens Shorts</a>
</li>
<li>
<a href="#">Womens Accessories </a>
</li>
</ul>
</nav>
【问题讨论】: