纯CSS二级导航是指使用CSS(层叠样式表)来创建一个具有两层结构的导航菜单。这种导航菜单通常包括一个主菜单和一个子菜单,子菜单在鼠标悬停在主菜单项上时显示。
以下是一个简单的水平二级导航的示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>纯CSS二级导航</title>
<style>
body {
font-family: Arial, sans-serif;
}
.nav {
display: flex;
}
.nav > li {
position: relative;
list-style: none;
padding: 10px;
}
.nav > li:hover > ul {
display: block;
}
.nav ul {
display: none;
position: absolute;
top: 100%;
left: 0;
background-color: #fff;
border: 1px solid #ccc;
padding: 0;
margin: 0;
}
.nav ul li {
list-style: none;
padding: 10px;
}
.nav ul li:hover {
background-color: #f0f0f0;
}
</style>
</head>
<body>
<ul class="nav">
<li>菜单1
<ul>
<li>子菜单1-1</li>
<li>子菜单1-2</li>
</ul>
</li>
<li>菜单2
<ul>
<li>子菜单2-1</li>
<li>子菜单2-2</li>
</ul>
</li>
<li>菜单3
<ul>
<li>子菜单3-1</li>
<li>子菜单3-2</li>
</ul>
</li>
</ul>
</body>
</html>
display
属性设置为none
。:hover
伪类正确触发子菜单的显示。position: absolute
和top
、left
属性来调整子菜单的位置。position: relative
属性。-webkit-
、-moz-
)来确保在不同浏览器中的兼容性。通过以上方法,可以解决大多数纯CSS二级导航的常见问题。
领取专属 10元无门槛券
手把手带您无忧上云