• 当前位置:首页 > CSS

    css 制作菜单

    2026-01-28 03:31:50CSS

    使用CSS制作菜单

    水平菜单

    水平菜单通常用于导航栏,可以通过浮动或Flexbox实现。

    <ul class="horizontal-menu">
      <li><a href="#">首页</a></li>
      <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;
      overflow: hidden;
      background-color: #333;
    }
    
    .horizontal-menu li {
      float: left;
    }
    
    .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;
    }

    垂直菜单

    垂直菜单适合侧边栏导航,可以通过块级元素特性实现。

    css 制作菜单

    <ul class="vertical-menu">
      <li><a href="#">首页</a></li>
      <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 li a {
      display: block;
      color: #000;
      padding: 8px 16px;
      text-decoration: none;
    }
    
    .vertical-menu li a:hover {
      background-color: #555;
      color: white;
    }

    下拉菜单

    下拉菜单需要结合CSS和少量JavaScript实现交互效果。

    <div class="dropdown">
      <button class="dropbtn">下拉菜单</button>
      <div class="dropdown-content">
        <a href="#">链接1</a>
        <a href="#">链接2</a>
        <a href="#">链接3</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 0px rgba(0,0,0,0.2);
      z-index: 1;
    }
    
    .dropdown-content a {
      color: black;
      padding: 12px 16px;
      text-decoration: none;
      display: block;
    }
    
    .dropdown-content a:hover {
      background-color: #f1f1f1;
    }
    
    .dropdown:hover .dropdown-content {
      display: block;
    }

    响应式菜单

    响应式菜单在小屏幕上会转换为汉堡菜单。

    css 制作菜单

    <div class="topnav" id="myTopnav">
      <a href="#" class="active">首页</a>
      <a href="#">产品</a>
      <a href="#">服务</a>
      <a href="#">关于</a>
      <a href="javascript:void(0);" class="icon" onclick="toggleMenu()">☰</a>
    </div>
    .topnav {
      overflow: hidden;
      background-color: #333;
    }
    
    .topnav a {
      float: left;
      display: block;
      color: #f2f2f2;
      text-align: center;
      padding: 14px 16px;
      text-decoration: none;
      font-size: 17px;
    }
    
    .topnav a:hover {
      background-color: #ddd;
      color: black;
    }
    
    .topnav a.active {
      background-color: #04AA6D;
      color: white;
    }
    
    .topnav .icon {
      display: none;
    }
    
    @media screen and (max-width: 600px) {
      .topnav a:not(:first-child) {display: none;}
      .topnav a.icon {
        float: right;
        display: block;
      }
    }
    
    @media screen and (max-width: 600px) {
      .topnav.responsive {position: relative;}
      .topnav.responsive .icon {
        position: absolute;
        right: 0;
        top: 0;
      }
      .topnav.responsive a {
        float: none;
        display: block;
        text-align: left;
      }
    }
    function toggleMenu() {
      var x = document.getElementById("myTopnav");
      if (x.className === "topnav") {
        x.className += " responsive";
      } else {
        x.className = "topnav";
      }
    }

    圆角菜单

    为菜单项添加圆角效果增强视觉吸引力。

    .rounded-menu li a {
      border-radius: 5px;
      margin: 5px;
    }

    固定菜单

    固定在页面顶部或底部的菜单。

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

    这些CSS技术可以单独使用或组合使用,根据具体需求创建各种风格的菜单。现代CSS技术如Flexbox和Grid可以进一步简化布局,而CSS变量可以方便地统一管理样式。

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

    相关文章

    制作css

    制作css

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

    css制作简历

    css制作简历

    使用CSS制作简历的步骤 设计简历结构 使用HTML创建简历的基本结构,包括个人信息、教育背景、工作经历、技能等部分。确保每个部分都有清晰的标题和内容区域。 基础样式设置 通过CSS设置全局样式,包…

    css立体相册制作

    css立体相册制作

    制作CSS立体相册 使用CSS3的3D变换和过渡效果可以创建一个立体相册。以下是一个基本的实现方法。 HTML结构 <div class="photo-album"> <di…

    css 制作购物网站

    css 制作购物网站

    布局设计 使用CSS Grid或Flexbox创建响应式布局。Grid适合整体页面结构,Flexbox适合局部组件排列。定义网格模板区域,如头部、导航、商品展示区、侧边栏和页脚。 .containe…

    css如何制作响应网页

    css如何制作响应网页

    响应式网页设计基础 使用CSS制作响应式网页的核心是通过媒体查询(Media Queries)和弹性布局(Flexbox/Grid)实现。媒体查询允许根据设备特性(如屏幕宽度)应用不同的样式规则。…

    vue 菜单实现

    vue 菜单实现

    Vue 菜单实现方法 基于路由的动态菜单 在 Vue 项目中,可以利用 Vue Router 实现动态菜单。首先定义路由配置,包含菜单所需的元信息(如标题、图标等)。 const routes =…