【问题标题】:Nav Bar not being displayed as block导航栏未显示为块
【发布时间】:2015-10-23 19:24:25
【问题描述】:

由于某种原因,我使用引导主题的导航栏没有显示为块。我正在为我的 index.html 页面使用轮播模板,并希望在我的其余页面上使用相同的主题,只是没有轮播。但是,当我取出旋转木马时,我的第二个 div 位于我的导航栏下方。

这是我的导航栏的代码:

<div class="navbar-wrapper">
  <div class="container">

    <nav class="navbar navbar-inverse navbar-static-top">
      <div class="container">
        <div class="navbar-header">
          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </button>
          <a class="navbar-brand" href="index.html">Ecstatic Entertainment SK</a>
        </div>
        <div id="navbar" class="navbar-collapse collapse">
          <ul class="nav navbar-nav">
            <li><a href="index.html">Home</a></li>
            <li class="active"><a href="">What We Offer</a></li>
            <li><a href="#contact">Build Your Event</a></li>
            <li><a href="#contact">Contact</a></li>
            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a>
              <ul class="dropdown-menu">
                <li><a href="#">Action</a></li>
                <li><a href="#">Another action</a></li>
                <li><a href="#">Something else here</a></li>
                <li role="separator" class="divider"></li>
                <li class="dropdown-header">Nav header</li>
                <li><a href="#">Separated link</a></li>
                <li><a href="#">One more separated link</a></li>
              </ul>
            </li>
          </ul>
        </div>
      </div>
    </nav>

  </div>
</div>

还有一个指向我的小提琴的链接,我的 CSS 位于 bootstrap css 之上:

https://jsfiddle.net/czz2Lm1n/

【问题讨论】:

    标签: html css twitter-bootstrap


    【解决方案1】:

    您的导航栏 div (.navbar-wrapper) 实际上是一个块元素,但它也是绝对定位的。

    因此,它已从 normal flow 中删除,其他 div 忽略它。因此,您的内容(“第二个 div”)已向上移动到主体边缘,因为它没有看到任何其他框来阻止它。

    在您的代码中,一种快速的解决方案是更改类的位置属性值:

    原创

    .navbar-wrapper{position:absolute;top:0;right:0;left:0;z-index:20}
    

    修改

    .navbar-wrapper{position:relative;top:0;right:0;left:0;z-index:20}
    

    这行得通。这是你的小提琴,修改后:https://jsfiddle.net/czz2Lm1n/3/

    现在您可以在.navbar-wrapper 的所有子元素上使用position:absolute,它们将相对于包含块.navbar-wrapper 定位。

    如果您想了解更多关于 position 属性的信息,这里有一篇好文章: https://developer.mozilla.org/en-US/docs/Web/CSS/position

    希望这会有所帮助。祝你好运!

    【讨论】:

    • 完美!谢谢一百万,职位是我绝对需要复习的。我会检查那个链接。再次感谢!
    【解决方案2】:

    删除导航栏包装器和容器。

    <nav class="navbar navbar-inverse navbar-static-top">
              <div class="container">
                <div class="navbar-header">
                  <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
                    <span class="sr-only">Toggle navigation</span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                  </button>
                  <a class="navbar-brand" href="index.html">Ecstatic Entertainment SK</a>
                </div>
                <div id="navbar" class="navbar-collapse collapse">
                  <ul class="nav navbar-nav">
                    <li><a href="index.html">Home</a></li>
                    <li class="active"><a href="">What We Offer</a></li>
                    <li><a href="#contact">Build Your Event</a></li>
                    <li><a href="#contact">Contact</a></li>
                    <li class="dropdown">
                      <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a>
                      <ul class="dropdown-menu">
                        <li><a href="#">Action</a></li>
                        <li><a href="#">Another action</a></li>
                        <li><a href="#">Something else here</a></li>
                        <li role="separator" class="divider"></li>
                        <li class="dropdown-header">Nav header</li>
                        <li><a href="#">Separated link</a></li>
                        <li><a href="#">One more separated link</a></li>
                      </ul>
                    </li>
                  </ul>
                </div>
              </div>
            </nav>
    

    这里是小提琴:https://jsfiddle.net/czz2Lm1n/2/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-01-18
      • 2021-08-27
      • 2017-09-28
      • 2018-12-13
      • 2022-10-23
      • 2019-01-11
      • 1970-01-01
      相关资源
      最近更新 更多