当前位置:首页 > CSS

css 菜单制作

2026-03-11 17:32:12CSS

水平导航菜单制作

使用 display: inline-blockflexbox 创建水平菜单。设置列表项横向排列,添加悬停效果增强交互性。

<nav class="horizontal-menu">
  <ul>
    <li><a href="#">首页</a></li>
    <li><a href="#">产品</a></li>
    <li><a href="#">服务</a></li>
  </ul>
</nav>
.horizontal-menu ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
}

.horizontal-menu li {
  margin-right: 15px;
}

.horizontal-menu a {
  display: block;
  padding: 10px 15px;
  text-decoration: none;
  color: #333;
  background: #f0f0f0;
}

.horizontal-menu a:hover {
  background: #ddd;
}

垂直下拉菜单实现

通过 position: absolute 隐藏子菜单,父元素悬停时显示。使用 CSS 过渡效果平滑展开。

<nav class="dropdown-menu">
  <ul>
    <li><a href="#">主菜单1</a>
      <ul class="submenu">
        <li><a href="#">子项1</a></li>
        <li><a href="#">子项2</a></li>
      </ul>
    </li>
    <li><a href="#">主菜单2</a></li>
  </ul>
</nav>
.dropdown-menu ul {
  list-style: none;
  padding: 0;
}

.dropdown-menu > ul > li {
  position: relative;
  display: inline-block;
}

.submenu {
  position: absolute;
  top: 100%;
  left: 0;
  width: 200px;
  opacity: 0;
  transition: opacity 0.3s;
}

.dropdown-menu li:hover .submenu {
  opacity: 1;
}

响应式汉堡菜单

使用媒体查询和复选框技术实现移动端折叠菜单。通过 transform 创建动画效果。

<input type="checkbox" id="menu-toggle">
<label for="menu-toggle" class="hamburger">☰</label>
<nav class="mobile-menu">
  <ul>
    <li><a href="#">首页</a></li>
    <li><a href="#">关于</a></li>
  </ul>
</nav>
#menu-toggle {
  display: none;
}

.hamburger {
  font-size: 24px;
  cursor: pointer;
  display: none;
}

.mobile-menu {
  transition: transform 0.3s;
}

@media (max-width: 768px) {
  .hamburger {
    display: block;
  }

  .mobile-menu {
    position: fixed;
    top: 50px;
    left: 0;
    width: 100%;
    transform: translateX(-100%);
  }

  #menu-toggle:checked ~ .mobile-menu {
    transform: translateX(0);
  }
}

菜单样式增强技巧

添加圆角边框和阴影提升视觉效果。使用 CSS 变量统一主题颜色,便于维护。

css 菜单制作

:root {
  --menu-bg: #2c3e50;
  --menu-text: #ecf0f1;
}

.enhanced-menu a {
  padding: 12px 20px;
  border-radius: 4px;
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
  background: var(--menu-bg);
  color: var(--menu-text);
  transition: all 0.3s;
}

.enhanced-menu a:hover {
  background: #34495e;
  transform: translateY(-2px);
}

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

相关文章

div和css制作

div和css制作

使用 div 和 CSS 制作网页布局 HTML 结构 通过 div 标签划分页面区域,例如头部、主体、侧边栏和页脚: <div class="container"> <…

用css制作下拉菜单

用css制作下拉菜单

使用纯CSS制作下拉菜单 HTML结构 基础的下拉菜单需要嵌套的HTML结构,通常使用<ul>和<li>标签实现层级关系: <div class="dropdown"&…

vue实现菜单

vue实现菜单

使用 Vue 实现菜单 Vue 可以轻松实现动态菜单,通常结合路由和组件化思想。以下是一个基于 Vue 3 和 Vue Router 的菜单实现方案: 基础菜单结构 在 Vue 中,菜单通常是一个递…

css网页制作教程

css网页制作教程

CSS网页制作基础教程 CSS(层叠样式表)用于控制网页的视觉表现,与HTML结合使用。以下为关键知识点和操作方法: HTML与CSS关联方式 内联样式:直接在HTML标签中使用style…

网页制作 css

网页制作 css

CSS 基础语法 CSS(层叠样式表)用于控制网页的样式和布局。基本语法由选择器和声明块组成。选择器指向需要样式化的HTML元素,声明块包含一个或多个用分号分隔的声明,每个声明由属性和值组成。 选择…

vue实现左右菜单

vue实现左右菜单

实现左右菜单的基本思路 使用Vue实现左右菜单通常需要两个主要组件:左侧的导航菜单和右侧的内容区域。左侧菜单负责导航功能,右侧区域根据菜单选择动态展示对应内容。 创建基本组件结构 在Vue项目中创建…