Bulma导航栏有两行

时间:2017-11-21 17:50:19

标签: css css-frameworks bulma

在bulma.io中重建这个的最佳方法是什么?包括责任感,汉堡包等。

<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script>
<nav class="navbar navbar-fixed-top">

    <div class="container">

        <div class="row navbar-first-row">

            <button type="button" class="navbar-toggle collapsed" data-toggle="collapse"
                    data-target="#navbar-main-collapse">
                <span class="glyphicon glyphicon-menu-hamburger"></span>
                <span class="sr-only">Toggle navigation</span>
            </button>

            <div class="navbar-right navbar-text hidden-xs">
                Logo
            </div>

            <h1 class="h4 navbar-text">Really long application title</h1>

        </div>

        <div class="row navbar-second-row">

            <div class="navbar-right navbar-text hidden-xs">Logged User</div>

            <div class="collapse navbar-collapse" id="navbar-main-collapse">
                <ul class="nav navbar-nav">
                    <li class="active"><a href="#">Item 1</a></li>
                    <li><a href="#">Item 2</a></li>
                    <li><a href="#">Item 2</a></li>
                    <li><a href="#">Item 2</a></li>
                    <li><a href="#">Item 3</a></li>
                </ul>
            </div>

        </div>

    </div>

</nav>

--- tl; dr ---

我最近搬到了前端的Vue.js,这涉及到我工作流程的大量变化。我也在考虑尝试从Bootstrap3切换到更干净的东西并尝试使用Bulma。这是非常愉快的经历,直到我想做一些与众不同的事情。在我的情况下,它是两行导航栏。经过一个小时的尝试后,我迅速切换回Bs3。

使用bootstrap的主要优点是成千上万想要实现各种疯狂的怪人已经问了几十个愚蠢的问题。他们中的大多数都得到了患者社区的回答,现在可供公众使用。不幸的是,布尔玛还没有这个。

我觉得至少有70%的程序员现在都意味着google-around stackoverflow无论如何。能够快速研究该主题是至关重要的。我没有时间为自己探索一切,我有一个家庭可以喂养,我的客户也不会对我使用的框架感到厌烦。但至少我决定问。可能有人将来会面临类似的挑战。欢呼声。

1 个答案:

答案 0 :(得分:5)

有很多方法可以做到这一点。这是一种方法:

按照documentation中的说明创建菜单 然后...

<强> HTML

  1. 将“应用标题”添加为navbar-brand的第一个孩子。
  2. is-hidden-touch修饰符添加到包含徽标的navbar-item。这将隐藏在移动设备和平板电脑设备上。
  3. 可以将“登录用户”内容添加到navbar-end
  4. <强> CSS

    1. 我们需要navbar-brand占据自己的'行'。为此,请将其宽度更新为100%。
    2. 然后,将justify-content属性添加到navbar-brand以均匀分隔其内容。
    3. 要确保navbar-menu移至新的'行',您必须将flex-wrap属性添加到navbar
    4. fiddle

      .navbar-brand {
        width: 100%;
      }
      
      .navbar {
        flex-wrap: wrap;
      }
      
      .navbar-brand {
        justify-content: space-between;
      }
      <link href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.6.1/css/bulma.min.css" rel="stylesheet"/>
      <nav class="navbar" role="navigation" aria-label="main navigation">
        <div class="navbar-brand">
          <a class="navbar-item">Really Long Application Title</a>
          <a class="navbar-item is-hidden-touch">
            <img src="https://bulma.io/images/bulma-logo.png" alt="Bulma" width="112" height="28">
          </a>
          <button class="button navbar-burger" data-target="navMenu">
            <span></span>
            <span></span>
            <span></span>
          </button>
        </div>
        <div class="navbar-menu" id="navMenu">
          <div class="navbar-start">
            <a class="navbar-item">Item 1</a>
            <a class="navbar-item">Item 2</a>
            <a class="navbar-item">Item 3</a>
            <a class="navbar-item">Item 4</a>
            <a class="navbar-item">Item 5</a>
          </div>
          <div class="navbar-end">
            <a class="navbar-item">Logged in</a>
          </div>
        </div>
      </nav>