css 语言 CSS 制作可折叠的导航菜单示例

CSS阿木 发布于 2025-06-18 5 次阅读


CSS 制作可折叠的导航菜单示例

在网页设计中,导航菜单是用户与网站交互的重要部分。一个设计良好的导航菜单不仅能够提升用户体验,还能使网站结构更加清晰。本文将围绕CSS技术,展示如何制作一个可折叠的导航菜单。通过学习本文,你将了解到CSS的伪类、媒体查询以及一些常用的技巧。

1. 基础HTML结构

我们需要构建一个基础的HTML结构。以下是一个简单的导航菜单示例:

html

<!DOCTYPE html>


<html lang="zh-CN">


<head>


<meta charset="UTF-8">


<title>可折叠导航菜单</title>


<link rel="stylesheet" href="style.css">


</head>


<body>


<nav>


<ul class="menu">


<li><a href="">首页</a></li>


<li>


<a href="">关于我们</a>


<ul class="submenu">


<li><a href="">公司简介</a></li>


<li><a href="">团队介绍</a></li>


<li><a href="">联系方式</a></li>


</ul>


</li>


<li><a href="">产品中心</a></li>


<li><a href="">新闻动态</a></li>


<li><a href="">联系我们</a></li>


</ul>


</nav>


</body>


</html>


2. CSS样式设计

接下来,我们将使用CSS来设计这个导航菜单。以下是一个简单的CSS样式:

css

/ 清除列表默认样式 /


.menu, .submenu {


list-style: none;


padding: 0;


margin: 0;


}

/ 设置导航菜单的样式 /


.menu {


background-color: 333;


overflow: hidden;


}

.menu li {


float: left;


}

.menu li a {


display: block;


color: white;


text-align: center;


padding: 14px 16px;


text-decoration: none;


}

/ 设置子菜单的样式 /


.submenu {


display: none;


position: absolute;


background-color: f9f9f9;


min-width: 160px;


box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);


z-index: 1;


}

.submenu li a {


color: black;


padding: 12px 16px;


text-decoration: none;


display: block;


text-align: left;


}

/ 鼠标悬停时显示子菜单 /


.menu li:hover .submenu {


display: block;


}

/ 媒体查询,适应不同屏幕尺寸 /


@media screen and (max-width: 600px) {


.menu li {


float: none;


}

.menu li a {


text-align: left;


}

.submenu {


position: relative;


}


}


3. 代码解析

在上面的CSS代码中,我们使用了以下技术:

- 伪类: `.menu li:hover .submenu` 用于在鼠标悬停在菜单项上时显示子菜单。

- 媒体查询: `@media screen and (max-width: 600px)` 用于在屏幕宽度小于600px时,使导航菜单适应移动设备。

- 定位: `.submenu` 使用了绝对定位,使其相对于父元素 `.menu li` 显示。

4. 总结

通过本文的学习,我们使用CSS技术制作了一个可折叠的导航菜单。这个菜单不仅美观,而且具有良好的用户体验。在实际开发中,你可以根据需求对样式进行调整,以适应不同的网页设计。

希望本文能帮助你更好地掌握CSS技术,为你的网页设计增添更多亮点。