当前位置:首页 > CSS

css制作菜单

2026-01-08 11:48:58CSS

水平菜单制作

使用display: inline-blockflexbox布局创建水平菜单。设置list-style: none移除默认列表样式,添加paddingmargin调整间距。

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

.horizontal-menu li a {
  display: block;
  color: white;
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
}

.horizontal-menu li a:hover {
  background-color: #111;
}

垂直菜单制作

通过display: block实现垂直布局。使用width控制菜单宽度,border添加分隔线增强视觉效果。

<ul class="vertical-menu">
  <li><a href="#">首页</a></li>
  <li><a href="#">产品</a></li>
  <li><a href="#">联系我们</a></li>
</ul>
.vertical-menu {
  width: 200px;
  list-style: none;
  background-color: #f1f1f1;
  padding: 0;
}

.vertical-menu li a {
  display: block;
  color: black;
  padding: 12px;
  text-decoration: none;
  border-bottom: 1px solid #ddd;
}

.vertical-menu li a:hover {
  background-color: #555;
  color: white;
}

下拉菜单实现

结合:hover伪类和绝对定位创建下拉效果。父菜单项设置position: relative,子菜单使用position: absolute定位。

<ul class="dropdown-menu">
  <li><a href="#">主菜单</a>
    <ul class="dropdown-content">
      <li><a href="#">子项1</a></li>
      <li><a href="#">子项2</a></li>
    </ul>
  </li>
</ul>
.dropdown-menu {
  position: relative;
  display: inline-block;
}

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

.dropdown-menu:hover .dropdown-content {
  display: block;
}

响应式菜单设计

使用媒体查询实现移动端适配。默认隐藏菜单项,通过JavaScript或CSS复选框技术切换显示状态。

<nav class="responsive-menu">
  <input type="checkbox" id="menu-toggle">
  <label for="menu-toggle">☰ 菜单</label>
  <ul>
    <li><a href="#">首页</a></li>
    <li><a href="#">关于我们</a></li>
  </ul>
</nav>
.responsive-menu ul {
  display: none;
  list-style: none;
}

#menu-toggle:checked ~ ul {
  display: block;
}

@media (min-width: 768px) {
  .responsive-menu label {
    display: none;
  }
  .responsive-menu ul {
    display: flex;
  }
}

菜单动画效果

添加transition属性实现平滑悬停效果。使用transform创建缩放或位移动画,提升交互体验。

.animated-menu li a {
  transition: all 0.3s ease;
}

.animated-menu li a:hover {
  transform: scale(1.1);
  background-color: #4CAF50;
}

css制作菜单

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

相关文章

vue实现菜单调用

vue实现菜单调用

Vue 实现动态菜单的常见方法 基于路由配置生成菜单 Vue Router 的路由配置可以天然转化为菜单结构,适合权限与路由绑定的系统: // router/index.js const route…

vue无限菜单怎么实现

vue无限菜单怎么实现

实现 Vue 无限菜单的方法 递归组件实现嵌套菜单 使用 Vue 的递归组件特性可以轻松实现无限级嵌套菜单。通过组件调用自身的方式处理嵌套数据。 <template> <ul…

vue 实现菜单

vue 实现菜单

Vue 实现菜单的方法 使用 Vue 实现菜单可以通过多种方式,以下是几种常见的方法: 使用 Vue Router 实现动态路由菜单 通过 Vue Router 可以动态生成菜单,根据路由配置自动…

vue 菜单实现

vue 菜单实现

Vue 菜单实现方法 在Vue中实现菜单功能可以通过多种方式完成,以下是几种常见的实现方法: 使用v-for动态生成菜单 通过数据驱动的方式动态渲染菜单项,适合菜单内容可能变化的场景: <t…

vue菜单tab实现

vue菜单tab实现

实现Vue菜单Tab的步骤 在Vue中实现菜单Tab功能,可以通过动态组件或条件渲染来实现。以下是几种常见的方法: 使用动态组件 动态组件允许根据当前选中的Tab动态切换显示内容。定义一个组件数组…

css制作

css制作

CSS 基础语法 CSS(层叠样式表)用于控制网页的样式和布局。其基本语法由选择器和声明块组成。选择器指定要样式化的HTML元素,声明块包含一个或多个属性-值对,用花括号 {} 包裹。 select…