📜  引导下拉菜单 - Html (1)

📅  最后修改于: 2023-12-03 15:39:30.706000             🧑  作者: Mango

引导下拉菜单 - HTML

引导下拉菜单是一种常见的页面导航方式,可以在页面中方便地展示多级菜单及其子菜单。在 HTML 中,可以通过 Bootstrap 框架或手写 CSS 实现下拉菜单。

Bootstrap 框架实现下拉菜单

Bootstrap 是一个流行的前端框架,提供了丰富的 UI 组件和样式,轻松快速地开发出精美的网页。下面是一个简单的 Bootstrap 下拉菜单页面示例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <link rel="stylesheet" href="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/4.5.3/css/bootstrap.min.css">
    <title>Bootstrap 下拉菜单</title>
</head>
<body>

<nav class="navbar navbar-expand-lg navbar-light bg-light">
  <a class="navbar-brand" href="#">Logo</a>
  <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="Toggle navigation">
    <span class="navbar-toggler-icon"></span>
  </button>
  <div class="collapse navbar-collapse" id="navbarNavDropdown">
    <ul class="navbar-nav">
      <li class="nav-item active">
        <a class="nav-link" href="#">首页 <span class="sr-only">(current)</span></a>
      </li>
      <li class="nav-item dropdown">
        <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
          产品
        </a>
        <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
          <a class="dropdown-item" href="#">产品 1</a>
          <a class="dropdown-item" href="#">产品 2</a>
          <a class="dropdown-item" href="#">产品 3</a>
        </div>
      </li>
      <li class="nav-item">
        <a class="nav-link" href="#">服务</a>
      </li>
      <li class="nav-item">
        <a class="nav-link" href="#">博客</a>
      </li>
      <li class="nav-item">
        <a class="nav-link" href="#">联系我们</a>
      </li>
    </ul>
  </div>
</nav>

<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.slim.min.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/4.5.3/js/bootstrap.min.js"></script>

</body>
</html>

在上述代码中,我们首先引入了 Bootstrap 样式文件和 jQuery、Popper.js、Bootstrap JavaScript 文件。接着,我们创建了一个导航栏组件,其中包含 "Logo"、“首页”、“产品”、“服务”、“博客”、“联系我们” 五个菜单项。菜单项中,“产品”含有三个子菜单项。

手写 CSS 实现下拉菜单

除了 Bootstrap 框架,我们也可以手写 CSS 实现下拉菜单。下面是一个简单的手写 CSS 下拉菜单页面示例:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>手写 CSS 下拉菜单</title>
  <style type="text/css">
    /* 清除默认样式 */
    * {
      margin: 0;
      padding: 0;
      list-style: none;
      text-decoration: none;
    }
    /* 定义菜单样式 */
    .nav {
      background-color: #f5f5f5;
      border: 1px solid #ccc;
      display: inline-block;
      margin-top: 10px;
      padding: 5px 10px;
      position: relative;
    }
    /* 定义菜单项样式 */
    .nav li {
      display: inline-block;
      position: relative;
    }
    /* 定义子菜单容器样式 */
    .sub-nav {
      background-color: #fff;
      border: 1px solid #ccc;
      display: none;
      position: absolute;
      top: 30px;
      z-index: 1;
    }
    /* 定义子菜单项样式 */
    .sub-nav li {
      display: block;
    }
    /* 鼠标悬停时显示子菜单 */
    .nav li:hover .sub-nav {
      display: block;
    }
  </style>
</head>
<body>

<ul class="nav">
  <li><a href="#">首页</a></li>
  <li>
    <a href="#">产品</a>
    <ul class="sub-nav">
      <li><a href="#">产品 1</a></li>
      <li><a href="#">产品 2</a></li>
      <li><a href="#">产品 3</a></li>
    </ul>
  </li>
  <li><a href="#">服务</a></li>
  <li><a href="#">博客</a></li>
  <li><a href="#">联系我们</a></li>
</ul>

</body>
</html>

在上述代码中,我们手写了简单的 CSS 样式,定义了 ".nav" 菜单容器、".nav li" 菜单项、".sub-nav" 子菜单容器、".sub-nav li" 子菜单项的样式。在菜单项上绑定了鼠标事件,鼠标悬停时显示子菜单。

以上两种方法都是常用的实现下拉菜单的方式,应根据项目需求选择合适的方式。