当前位置:首页 > CSS

css制作菜单

2026-03-31 19:26:57CSS

水平菜单制作

使用display: inline-blockflex布局实现水平排列的菜单项。设置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 {
  list-style: none;
  display: flex;
  gap: 20px;
  padding: 0;
}
.horizontal-menu a {
  text-decoration: none;
  color: #333;
}

垂直菜单制作

通过display: block让菜单项垂直堆叠。可添加borderbackground增强视觉层次。

<ul class="vertical-menu">
  <li><a href="#">首页</a></li>
  <li><a href="#">产品</a></li>
  <li><a href="#">服务</a></li>
</ul>
.vertical-menu {
  list-style: none;
  padding: 0;
  width: 200px;
}
.vertical-menu li {
  border-bottom: 1px solid #eee;
}
.vertical-menu a {
  display: block;
  padding: 10px;
  text-decoration: none;
}

下拉菜单实现

结合:hover伪类和绝对定位实现下拉效果。父级需设置position: relative

<ul class="dropdown-menu">
  <li>
    <a href="#">产品</a>
    <ul class="submenu">
      <li><a href="#">子项1</a></li>
      <li><a href="#">子项2</a></li>
    </ul>
  </li>
</ul>
.dropdown-menu {
  position: relative;
}
.submenu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
}
.dropdown-menu li:hover .submenu {
  display: block;
}

响应式菜单

使用媒体查询和汉堡图标实现移动端适配。通过JavaScript切换类名控制显示/隐藏。

<button class="menu-toggle">☰</button>
<ul class="responsive-menu">
  <li><a href="#">首页</a></li>
  <li><a href="#">产品</a></li>
</ul>
.responsive-menu {
  display: flex;
}
.menu-toggle {
  display: none;
}
@media (max-width: 768px) {
  .responsive-menu {
    display: none;
    flex-direction: column;
  }
  .menu-toggle {
    display: block;
  }
  .responsive-menu.active {
    display: flex;
  }
}

动画效果增强

通过transition属性添加平滑的悬停效果。可配合transform实现缩放或位移。

.menu-item {
  transition: all 0.3s ease;
}
.menu-item:hover {
  background-color: #f0f0f0;
  transform: translateY(-2px);
}

图标菜单整合

使用Font Awesome或SVG图标与文本混合排列。通过flex布局对齐图标和文字。

css制作菜单

<ul class="icon-menu">
  <li>
    <a href="#">
      <svg width="20" height="20"><!-- 图标代码 --></svg>
      <span>首页</span>
    </a>
  </li>
</ul>
.icon-menu a {
  display: flex;
  align-items: center;
  gap: 8px;
}

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

相关文章

css制作春联

css制作春联

使用CSS制作春联的方法 基础布局与样式 春联通常由一对垂直排列的红色对联和顶部的横批组成。使用CSS的flexbox布局可以轻松实现这种结构。创建一个父容器,内部包含三个子元素:横批、上联和下联。…

vue实现下拉菜单

vue实现下拉菜单

实现下拉菜单的基本结构 使用 Vue 的 v-show 或 v-if 控制下拉菜单的显示与隐藏。通过点击按钮或父元素触发下拉状态切换。 <template> <div cl…

vue菜单实现

vue菜单实现

实现Vue菜单的基本方法 使用Vue.js创建菜单可以通过多种方式实现,包括使用原生Vue组件、第三方UI库或自定义解决方案。以下是几种常见的实现方法: 使用原生Vue组件 创建基本的菜单结构可以使…

css制作六边形

css制作六边形

使用 CSS 制作六边形 方法一:使用 clip-path 属性 通过 clip-path 直接定义六边形的路径,简单高效且支持动画效果。 .hexagon { width: 100px;…

css网页制作教程下载

css网页制作教程下载

免费CSS网页制作教程下载资源 W3Schools提供完整的CSS教程,包含基础到高级内容,支持在线学习和实践。官网提供PDF版本下载,适合离线学习。网址:www.w3schools.com/css…

纯css制作下拉菜单

纯css制作下拉菜单

使用纯CSS制作下拉菜单 HTML结构需要嵌套列表,外层为触发元素,内层为下拉内容。以下是一个基础结构示例: <div class="dropdown"> <button cl…