CSS二级横向菜单栏是一种常见的网页导航结构,它允许用户通过一级菜单项展开二级子菜单项。这种设计可以提高网站的导航效率和用户体验。
:hover)来实现菜单的展开和收起。以下是一个简单的纯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;
}
.menu {
display: flex;
list-style: none;
padding: 0;
margin: 0;
}
.menu li {
position: relative;
}
.menu a {
display: block;
padding: 10px 20px;
text-decoration: none;
color: #333;
}
.menu li:hover > ul {
display: block;
}
.menu ul {
display: none;
position: absolute;
top: 100%;
left: 0;
background-color: #fff;
border: 1px solid #ccc;
list-style: none;
padding: 0;
margin: 0;
min-width: 150px;
}
.menu ul li {
width: 100%;
}
.menu ul a {
padding: 10px 20px;
}
</style>
</head>
<body>
<ul class="menu">
<li><a href="#">首页</a></li>
<li>
<a href="#">产品</a>
<ul>
<li><a href="#">产品1</a></li>
<li><a href="#">产品2</a></li>
<li><a href="#">产品3</a></li>
</ul>
</li>
<li>
<a href="#">服务</a>
<ul>
<li><a href="#">服务1</a></li>
<li><a href="#">服务2</a></li>
</ul>
</li>
<li><a href="#">关于我们</a></li>
</ul>
</body>
</html>display属性设置为none,并且在父菜单项悬停时设置为block。position: absolute来定位子菜单,并设置top和left属性使其相对于父菜单项对齐。position: relative,以便子菜单能够正确地相对于父菜单项定位。margin或padding导致间隙,可以通过CSS重置这些值。display: flex来消除列表项之间的间隙。通过以上方法,可以有效地解决CSS二级横向菜单栏中常见的问题。
没有搜到相关的沙龙