当前位置:首页 > CSS

css 菜单制作

2026-02-13 04:57:52CSS

水平导航菜单制作

使用 display: inline-blockflexbox 实现水平菜单:

.nav-menu {
  list-style: none;
  padding: 0;
  margin: 0;
  background: #333;
}
.nav-menu li {
  display: inline-block; /* 或使用 flexbox */
  margin-right: 15px;
}
.nav-menu a {
  color: white;
  text-decoration: none;
  padding: 10px 15px;
  display: block;
}
.nav-menu a:hover {
  background: #555;
}

垂直下拉菜单

通过 position: absolute 实现下拉效果:

.dropdown {
  position: relative;
  display: inline-block;
}
.dropdown-content {
  display: none;
  position: absolute;
  background: #f9f9f9;
  min-width: 160px;
  box-shadow: 0 8px 16px rgba(0,0,0,0.2);
}
.dropdown:hover .dropdown-content {
  display: block;
}

响应式菜单(移动端适配)

使用媒体查询和汉堡图标切换:

.mobile-menu-btn {
  display: none;
  cursor: pointer;
}
@media (max-width: 768px) {
  .mobile-menu-btn {
    display: block;
  }
  .nav-menu {
    display: none;
    width: 100%;
  }
  .nav-menu.active {
    display: block;
  }
  .nav-menu li {
    display: block;
    margin-right: 0;
  }
}

动画效果增强

添加过渡动画提升交互体验:

.nav-menu a {
  transition: background 0.3s ease;
}
.dropdown-content {
  opacity: 0;
  transition: opacity 0.3s ease;
}
.dropdown:hover .dropdown-content {
  opacity: 1;
}

关键注意事项

  • 确保菜单项通过语义化 HTML 结构实现(如 <nav> + <ul>/<li>)。
  • 移动端需考虑触摸目标尺寸(建议最小 48x48px)。
  • 使用 aria-expandedaria-label 提升无障碍访问性。

示例完整 HTML 结构:

css 菜单制作

<nav>
  <button class="mobile-menu-btn">☰</button>
  <ul class="nav-menu">
    <li><a href="#">首页</a></li>
    <li class="dropdown">
      <a href="#">产品</a>
      <div class="dropdown-content">
        <a href="#">选项1</a>
        <a href="#">选项2</a>
      </div>
    </li>
  </ul>
</nav>

标签: 菜单css
分享给朋友:

相关文章

css怎么制作三角形

css怎么制作三角形

使用边框制作三角形 通过设置元素的边框宽度和颜色,可以创建不同方向的三角形。将元素的宽度和高度设为0,利用边框的透明属性实现。 .triangle-up { width: 0; height…

制作css选择器

制作css选择器

CSS选择器基础语法 CSS选择器用于定位HTML文档中的元素,以便为其应用样式。常见的基础选择器包括: 元素选择器:直接使用HTML标签名(如p、div) 类选择器:以.开头(如.header)…

css制作流程图

css制作流程图

使用CSS制作流程图的方法 基础布局结构 采用HTML的<div>元素构建流程节点,结合CSS的flexbox或grid布局实现整体排列。节点间用伪元素或独立元素(如<span>…

css制作许愿墙六块

css制作许愿墙六块

CSS 制作许愿墙六块布局 使用 CSS 创建一个六块许愿墙布局可以通过多种方式实现,以下是两种常见的方法:使用 CSS Grid 或 Flexbox。以下代码示例展示了如何实现这两种布局。 方…

vue 菜单实现

vue 菜单实现

Vue 菜单实现方法 基于路由的动态菜单 在 Vue 项目中,可以利用 Vue Router 实现动态菜单。首先定义路由配置,包含菜单所需的元信息(如标题、图标等)。 const routes =…

css样式制作

css样式制作

CSS样式制作基础 CSS(层叠样式表)用于控制网页的视觉呈现。通过CSS可以定义字体、颜色、布局等样式。 选择器与属性 /* 标签选择器 */ p { color: blue; font…