当前位置:首页 > CSS

css制作导航菜单

2026-04-02 05:02:46CSS

水平导航菜单

使用 display: inline-blockflexbox 实现水平排列的导航菜单。

<nav class="horizontal-menu">
  <ul>
    <li><a href="#">首页</a></li>
    <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;
  background-color: #333;
}

.horizontal-menu li {
  display: inline-block;
}

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

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

垂直导航菜单

通过设置 display: block 创建垂直排列的导航菜单。

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

.vertical-menu li a {
  display: block;
  color: #000;
  padding: 8px 16px;
  text-decoration: none;
}

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

下拉菜单导航

结合 :hover 伪类和绝对定位实现下拉菜单效果。

<nav class="dropdown-menu">
  <ul>
    <li><a href="#">首页</a></li>
    <li class="dropdown">
      <a href="#">产品</a>
      <div class="dropdown-content">
        <a href="#">产品1</a>
        <a href="#">产品2</a>
        <a href="#">产品3</a>
      </div>
    </li>
    <li><a href="#">服务</a></li>
  </ul>
</nav>
.dropdown-menu ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background-color: #333;
}

.dropdown-menu li {
  float: left;
}

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

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

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

.dropdown-content a {
  color: black;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
  text-align: left;
}

.dropdown-content a:hover {
  background-color: #ddd;
}

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

响应式导航菜单

使用媒体查询和 flexbox 创建适应不同屏幕尺寸的导航菜单。

css制作导航菜单

<nav class="responsive-menu">
  <div class="menu-icon">☰</div>
  <ul>
    <li><a href="#">首页</a></li>
    <li><a href="#">产品</a></li>
    <li><a href="#">服务</a></li>
    <li><a href="#">关于我们</a></li>
  </ul>
</nav>
.responsive-menu {
  background-color: #333;
  display: flex;
  flex-direction: column;
}

.responsive-menu ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
}

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

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

.menu-icon {
  display: none;
  color: white;
  font-size: 24px;
  padding: 14px 16px;
  cursor: pointer;
}

@media screen and (min-width: 768px) {
  .responsive-menu ul {
    flex-direction: row;
  }

  .menu-icon {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .responsive-menu ul {
    display: none;
  }

  .menu-icon {
    display: block;
  }

  .responsive-menu.active ul {
    display: flex;
  }
}
document.querySelector('.menu-icon').addEventListener('click', function() {
  document.querySelector('.responsive-menu').classList.toggle('active');
});

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

相关文章

怎么制作css表格

怎么制作css表格

使用HTML和CSS创建表格 HTML提供<table>标签用于创建表格结构,CSS用于控制样式。以下是一个基础示例: <table class="styled-table">…

css制作春季踏青

css制作春季踏青

使用CSS制作春季踏青主题效果 背景设计 通过渐变背景模拟春日天空,使用柔和的色调如浅蓝、淡绿和粉色。可以添加云朵或小鸟的剪影作为装饰元素。 body { background: linear-…

css怎么制作时钟

css怎么制作时钟

使用CSS制作时钟 通过CSS和少量JavaScript可以创建一个动态时钟。以下是实现方法: HTML结构 <div class="clock"> <div cla…

css制作滑动切换

css制作滑动切换

使用CSS实现滑动切换效果 方法一:使用CSS Transition和Transform 通过transition和transform属性实现平滑的滑动动画效果。 .slider-container…

css制作扑克牌

css制作扑克牌

使用CSS制作扑克牌 扑克牌的样式可以通过CSS的border-radius、box-shadow和transform等属性实现。以下是一个简单的扑克牌设计示例: <div class="po…

css制作图标

css制作图标

使用CSS制作图标的方法 使用伪元素和边框 通过CSS的伪元素和边框属性可以创建简单的几何形状图标。例如,制作一个三角形图标: .triangle { width: 0; heigh…