如何创建:移动导航菜单

学习如何使用 CSS 和 JavaScript 为智能手机/平板电脑创建顶部导航菜单。

移动导航栏

垂直(推荐):

亲自试一试

水平:

亲自试一试

创建移动导航菜单

第一步 - 添加 HTML:

<!-- 加载图标库以在小屏幕上显示汉堡菜单(三横杠) -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">

<!-- Top Navigation Menu -->
<div class="topnav">
  <a href="#home" class="active">Logo</a>
  <!-- Navigation links (hidden by default) -->
  <div id="myLinks">
    <a href="#news">News</a>
    <a href="#contact">Contact</a>
    <a href="#about">About</a>
  </div>
  <!-- "Hamburger menu" / "Bar icon" to toggle the navigation links -->
  <a href="javascript:void(0);" class="icon" onclick="myFunction()">
    <i class="fa fa-bars"></i>
  </a>
</div>

第二步 - 添加 CSS:

/* 设置导航菜单的样式 */
.topnav {
  overflow: hidden;
  background-color: #333;
  position: relative;
}

/* 隐藏导航菜单内的链接(徽标/主页除外) */
.topnav #myLinks {
  display: none;
}

/* 为导航菜单链接设置样式 */
.topnav a {
  color: white;
  padding: 14px 16px;
  text-decoration: none;
  font-size: 17px;
  display: block;
}

/* 设置汉堡菜单的样式 */
.topnav a.icon {
  background: black;
  display: block;
  position: absolute;
  right: 0;
  top: 0;
}

/* 鼠标悬停时添加灰色背景颜色 */
.topnav a:hover {
  background-color: #ddd;
  color: black;
}

/* 设置活动链接(或主页/徽标)的样式 */
.active {
  background-color: #04AA6D;
  color: white;
}

第三步 - 添加 JavaScript:

/* 当用户点击汉堡菜单/横杠图标时,切换导航菜单链接的显示与隐藏状态 */
function myFunction() {
  var x = document.getElementById("myLinks");
  if (x.style.display === "block") {
    x.style.display = "none";
  } else {
    x.style.display = "block";
  }
}

亲自试一试

相关页面

教程:CSS 导航栏

教程:如何创建响应式顶部导航栏