当前位置:首页 > 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创建缩放或位移动画,提升交互体验。

css制作菜单

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

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

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

相关文章

怎么制作css

怎么制作css

创建CSS文件 新建一个文本文件,将文件扩展名改为.css。例如styles.css。确保文件名简洁且能反映其用途。 编写CSS基础结构 CSS由选择器和声明块组成。选择器用于指定要样式化的HTML…

淘宝css导航栏制作

淘宝css导航栏制作

淘宝CSS导航栏制作方法 使用HTML和CSS可以轻松制作类似淘宝的导航栏。以下是一个常见的实现方式: HTML结构 <div class="nav-container"> <…

css制作圆形

css制作圆形

使用 border-radius 属性 通过设置 border-radius 为 50%,可以将元素变为圆形。元素的宽度和高度需相同,否则会呈现椭圆形。 .circle { widt…

用css制作导航条

用css制作导航条

水平导航条制作 使用display: inline-block或flexbox实现水平导航 为<ul>和<li>设置样式消除默认列表样式 添加padding和margin控制间…

css如何制作三角形

css如何制作三角形

使用 border 属性制作三角形 通过设置元素的 border 属性,利用边框的透明特性可以创建三角形。将一个元素的宽度和高度设为 0,然后通过设置不同方向的边框宽度和颜色来实现。 .triang…

css制作角标

css制作角标

使用伪元素创建角标 通过CSS的伪元素(如::before或::after)可以轻松实现角标效果。以下是一个示例代码: .element { position: relative; disp…