当前位置:首页 > CSS

css菜单制作

2026-02-12 11:38:24CSS

CSS 菜单制作方法

水平导航菜单

使用 display: inline-blockflexbox 创建水平菜单。HTML 结构为无序列表,CSS 设置列表项横向排列。

<ul class="horizontal-menu">
  <li><a href="#">首页</a></li>
  <li><a href="#">产品</a></li>
  <li><a href="#">服务</a></li>
</ul>
.horizontal-menu {
  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 实现垂直布局。

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

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

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

下拉菜单

结合伪类 :hover 和绝对定位实现下拉效果。需要嵌套 HTML 结构。

css菜单制作

<div class="dropdown">
  <button class="dropbtn">下拉菜单</button>
  <div class="dropdown-content">
    <a href="#">选项1</a>
    <a href="#">选项2</a>
  </div>
</div>
.dropdown {
  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:hover .dropdown-content {
  display: block;
}

响应式菜单

使用媒体查询和 JavaScript 实现移动端适配。常见方案包括汉堡菜单。

<nav class="responsive-nav">
  <a href="#" class="active">首页</a>
  <a href="#">链接1</a>
  <a href="#">链接2</a>
  <a href="javascript:void(0);" class="icon" onclick="toggleMenu()">☰</a>
</nav>
.responsive-nav a {
  float: left;
  display: block;
  text-align: center;
  padding: 15px;
  text-decoration: none;
}

@media screen and (max-width: 600px) {
  .responsive-nav a:not(:first-child) {display: none;}
  .responsive-nav a.icon {
    float: right;
    display: block;
  }
}

@media screen and (max-width: 600px) {
  .responsive-nav.responsive {position: relative;}
  .responsive-nav.responsive a.icon {
    position: absolute;
    right: 0;
    top: 0;
  }
  .responsive-nav.responsive a {
    float: none;
    display: block;
    text-align: left;
  }
}
function toggleMenu() {
  const nav = document.querySelector(".responsive-nav");
  nav.classList.toggle("responsive");
}

动画效果菜单

通过 CSS 过渡或动画属性增强交互体验。例如淡入或滑动效果。

css菜单制作

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

.animated-menu a:hover {
  transform: translateY(-5px);
  opacity: 0.8;
}

固定定位菜单

使用 position: fixed 实现滚动时保持可见的菜单栏。

.fixed-menu {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1000;
}

圆角与阴影

通过 border-radiusbox-shadow 提升视觉效果。

.styled-menu {
  border-radius: 10px;
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

图标菜单

结合 Font Awesome 或 SVG 图标创建图文并茂的导航。

<a href="#"><i class="fas fa-home"></i> 首页</a>
.fas {
  margin-right: 8px;
}

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

相关文章

vue实现左右菜单联动实现

vue实现左右菜单联动实现

Vue 实现左右菜单联动 使用事件总线通信 在 Vue 中可以通过事件总线实现左右菜单的通信。创建一个中央事件总线实例,让左右菜单通过事件监听和触发实现联动。 // eventBus.js imp…

css网页制作教程

css网页制作教程

CSS网页制作教程 CSS(层叠样式表)是用于控制网页外观和布局的核心技术。以下是CSS网页制作的关键步骤和技巧: 基础语法与引入方式 CSS规则由选择器和声明块组成: 选择器 { 属性:…

制作css

制作css

CSS基础语法 CSS规则由选择器和声明块组成。选择器指向需要设置样式的HTML元素,声明块包含一个或多个用分号分隔的声明。每个声明由属性和值组成,用冒号分隔。 选择器 { 属性: 值; 属…

css制作教程

css制作教程

CSS 基础概念 CSS(层叠样式表)用于控制网页的视觉表现,包括布局、颜色、字体等。它与HTML结合使用,HTML负责结构,CSS负责样式。 基本语法结构 CSS规则由选择器和声明块组成: 选择…

css制作二级菜单

css制作二级菜单

使用纯CSS制作二级菜单 通过CSS的:hover伪类和子选择器实现二级菜单的显示与隐藏。以下是一个典型的结构和样式示例: HTML结构 <nav class="menu"> &l…

css 制作字体

css 制作字体

使用CSS自定义字体 在CSS中,可以通过@font-face规则引入自定义字体,并使用font-family属性应用这些字体。 @font-face { font-family: 'MyCus…