3

高さ 100% に設定されたイントロの後に、ナビゲーション バーを上部に固定しようとしていますが、これを行うための最良の方法がわかりません。

コード:

CSS
html, body{ height: 100%; min-height: 100%;} 
.intro {height: 100%;text-align: center;}

HTML
<div class="intro">
  <div class="container">
    <h1>Lorem Ipsum</h1>
  </div>
</div>

<nav>
  <div class="container">
    <div class="navbar-header" data-spy="affix">
      <button type="button" class="navbar-toggle"  data-toggle="collapse" data-target=".navbar-collapse">
        <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="#">Test Navbar</a>
    </div>
    <div class="collapse navbar-collapse">
      <ul class="nav navbar-nav">
        <li class="active"><a href="#">Home</a></li>
        <li><a href="#about">About</a></li>
        <li><a href="#contact">Contact</a></li>
      </ul>
    </div><!--/.nav-collapse -->
  </div>
</nav>

編集: Bootstrap 3.0 を使用しています。

4

2 に答える 2

4

jQuery関数を使用して高さを計算できます#intro

$('nav').affix({
      offset: {
        top: $('.intro').height()
      }
}); 

同様の方法で動作するデモを次に示します。

http://bootply.com/106399

于 2014-01-16T23:09:45.590 に答える
1

nav要素に idを与えます:

<nav id="derp">
  <div class="container">

次に、その要素のオフセットを取得します。

$('nav').affix({
      offset: {
        top: $('nav#derp').offset().top
      }
}); 

.introこれは、前の要素 (たとえば、の高さ)に依存するよりも優れたアプローチです。

于 2014-02-22T09:25:36.493 に答える