【问题标题】:How to add hamburger menu in bootstrap如何在引导程序中添加汉堡菜单
【发布时间】:2014-12-06 16:49:31
【问题描述】:

我需要一些有关引导导航的帮助。我希望通过移动设备上的汉堡包图标来切换它。

这里是codepen:http://codepen.io/sadman/pen/hfGwv(链接无效)

.navbar,
.navbar-inverse {
  border-radius: 0;
  border: none;
  margin-bottom: 0;
  min-height: 80px;
}

.nav li {
  display: inline;
  color: white;
}

.navbar-inverse .navbar-nav>li>a {
  color: #ffffff;
  font-family: Lato;
  font-size: 1.7em;
  font-weight: 300;
  padding: 30px 25px 33px 25px;
}

.navbar-inverse .navbar-nav li a:hover {
  background-color: #444444;
  transition: 0.7s all linear;
  height: 100%;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css">

<nav class="navbar navbar-inverse navbar-static-top" role="navigation">
  <div class="container">
    <ul class="nav navbar-nav">
      <li><a href="index.php">Home</a></li>
      <li><a href="about.php">About</a></li>
      <li><a href="#portfolio">Portfolio</a></li>
      <li><a href="#">Blog</a></li>
      <li><a href="contact.php">Contact</a></li>
    </ul>
  </div>
</nav>

【问题讨论】:

    标签: html twitter-bootstrap navigation hamburger-menu


    【解决方案1】:

    您所要做的就是阅读 getbootstrap.com 上的代码:

    Codepen

    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script>
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css">
    
    <nav class="navbar navbar-inverse navbar-static-top" role="navigation">
      <div class="container">
        <div class="navbar-header">
          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
                        <span class="sr-only">Toggle navigation</span>
                        <span class="icon-bar"></span>
                        <span class="icon-bar"></span>
                        <span class="icon-bar"></span>
                    </button>
        </div>
    
        <!-- Collect the nav links, forms, and other content for toggling -->
        <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
          <ul class="nav navbar-nav">
            <li><a href="index.php">Home</a></li>
            <li><a href="about.php">About</a></li>
            <li><a href="#portfolio">Portfolio</a></li>
            <li><a href="#">Blog</a></li>
            <li><a href="contact.php">Contact</a></li>
          </ul>
        </div>
      </div>
    </nav>

    【讨论】:

    • 非常感谢!我确实在引导站点上看到了代码,但不确定如何实现它。
    • 您是否在bs-example-navbar-collapse-1 上缺少&lt;/div&gt;
    • 在代码笔中单击汉堡按钮时没有任何作用。
    • 已修复。 2014 年 10 月过时的 js 链接
    • 是否需要bs-example-navbar-collapse-1?好像是cut-n-paste,不知道是不是真的有必要,如果是怎么用的。
    【解决方案2】:

    要创建图标,您可以在 Bootstrap 中使用Glyphicon

    <a href="#" class="btn btn-info btn-sm">
        <span class="glyphicon glyphicon-menu-hamburger"></span>
    </a>
    

    然后在css中控制图标的大小:

    .glyphicon-menu-hamburger {
      font-size: npx;
    }
    

    【讨论】:

    • 这不适用于 Bootstrap 4 开箱即用(即不包括字形图标),因为字形图标不再与 Bootstrap 一起打包。
    • 哦,好的。很长时间没有与 Bootstrap 一起工作。我会编辑我的答案。
    • 你可以在没有 glyphicon 的 Bootstrap 4 中做到这一点:getbootstrap.com/docs/4.4/components/navbar/#toggler
    【解决方案3】:

    仅 CSS(无图标集)Codepen

    .nav-link #navBars {
    margin-top: -3px;
    padding: 8px 15px 3px;
    border: 1px solid rgba(0,0,0,.125);
    border-radius: .25rem;
    }
    
    .nav-link #navBars input {
    display: none;
    }
    
    .nav-link #navBars span {
    position: relative;
    z-index: 1;
    display: block;
    margin-bottom: 6px;
    width: 24px;
    height: 2px;
    background-color: rgba(125, 125, 126, 1);
    border-radius: .25rem;
    }
    <link href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" rel="stylesheet"/>
    <nav class="navbar navbar-expand-lg navbar-light bg-light">
       <!-- <a class="navbar-brand" href="#">
          <img src="https://getbootstrap.com/docs/4.0/assets/brand/bootstrap-solid.svg" width="30" height="30" class="d-inline-block align-top" alt="">
          Bootstrap
          </a> -->
       <!-- https://stackoverflow.com/questions/26317679 -->
       <a class="nav-link" href="#">
          <div id="navBars">
             <input type="checkbox" /><span></span>
             <span></span>
             <span></span>
          </div>
       </a>
       <!-- /26317679 -->
       <div class="collapse navbar-collapse" id="navbarNav">
          <ul class="navbar-nav">
             <li class="nav-item active"><a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a></li>
             <li class="nav-item"><a class="nav-link" href="#">Features</a></li>
             <li class="nav-item"><a class="nav-link" href="#">Pricing</a></li>
             <li class="nav-item"><a class="nav-link disabled" href="#">Disabled</a></li>
          </ul>
       </div>
    </nav>

    【讨论】:

    • 汉堡菜单不响应click事件。
    猜你喜欢
    • 2020-03-31
    • 2017-09-03
    • 2021-06-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-31
    • 2021-05-26
    相关资源
    最近更新 更多