css导航栏下拉菜单
时间: 2023-07-25 20:04:59 浏览: 108
导航栏下拉菜单
4星 · 用户满意度95%
可以通过CSS实现下拉菜单,以下是一个简单的示例:
HTML代码:
```
<nav>
<ul>
<li><a href="#">菜单1</a></li>
<li><a href="#">菜单2</a>
<ul>
<li><a href="#">子菜单1</a></li>
<li><a href="#">子菜单2</a></li>
</ul>
</li>
<li><a href="#">菜单3</a></li>
</ul>
</nav>
```
CSS代码:
```
nav ul {
margin: 0;
padding: 0;
list-style: none;
background-color: #333;
}
nav li {
display: inline-block;
position: relative;
margin-right: 20px;
}
nav a {
display: block;
color: #fff;
text-decoration: none;
padding: 10px;
}
nav ul ul {
display: none;
position: absolute;
top: 100%;
left: 0;
background-color: #333;
}
nav ul li:hover > ul {
display:inherit;
}
nav ul ul li {
width: 200px;
float: none;
display: list-item;
position: relative;
}
nav ul ul ul li {
position: relative;
top:-60px;
left:200px;
}
nav a:hover, nav ul ul ul a {
background-color:#202020;
}
nav ul ul li:hover > ul {
display:inherit;
}
```
注释:
- `nav ul`,设置主菜单样式,将列表样式去掉,设置背景色;
- `nav li`,设置每个菜单项的样式,将其设为行内元素,并设置相对定位;
- `nav a`,设置菜单链接的样式,设为块级元素,设置文字颜色、去掉下划线、设置内边距;
- `nav ul ul`,设置子菜单的样式,将其设为绝对定位,距离父菜单项顶部距离为100%,距离父菜单项左侧距离为0,设置背景色;
- `nav ul li:hover > ul`,当鼠标悬停在主菜单上时,显示其下面的子菜单;
- `nav ul ul li`,设置子菜单的每个列表项的样式,将其设为块级元素,取消浮动,设置相对定位,方便设置子菜单的子菜单;
- `nav ul ul ul li`,设置子菜单的子菜单列表项样式,设置相对定位,将其位置调整到右上方;
- `nav a:hover, nav ul ul ul a`,当鼠标悬停在菜单链接上时,设置背景色;
- `nav ul ul li:hover > ul`,当鼠标悬停在子菜单上时,显示其下面的子菜单。
阅读全文