2014-02-06 3 views
26
  • Bootstrap 3,02

Я хотел бы иметь 2 фиксированных к началу NavBars similair того, как Joomla! 3 реализует свой экран просмотра.несколько фиксированных верхних NavBar заголовки в Twitter Bootstrap 3

Before you scroll

И затем, как только вы перечисляете NavBar # 2 окурки против самого верхнего:

Second Navbar butts up against the first

Я посмотрел на:

но попробовал несколько фрагментов Я не могу заставить это работать. Может ли кто-нибудь помочь с рабочей демонстрацией в jsFiddle?

+0

Можете ли вы опубликовать то, что устали? – Schmalzy

ответ

51

code below является базовым началом с использованием двух navbars и affix.

HTML

<nav class="navbar navbar-default navbar-fixed-top" role="navigation"> 
    <div class="container"> 
    <div class="navbar-header"> 
     <a class="navbar-brand" href="#">Brand</a> 
    </div> 
    <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> 
     <ul class="nav navbar-nav"> 
     <li class="dropdown"> 
      <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></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 class="divider"></li> 
      <li><a href="#">Separated link</a></li> 
      <li class="divider"></li> 
      <li><a href="#">One more separated link</a></li> 
      </ul> 
     </li> 
     <li class="dropdown"> 
      <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></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 class="divider"></li> 
      <li><a href="#">Separated link</a></li> 
      <li class="divider"></li> 
      <li><a href="#">One more separated link</a></li> 
      </ul> 
     </li> 
     </ul> 
    </div> 
    </div><!-- /.container-fluid --> 
</nav> 
<div class="divide-nav"> 
    <div class="container"> 
    <p class="divide-text">Some Text Here</p> 
    </div> 
</div> 
<nav class="navbar navbar-default navbar-lower" role="navigation"> 
    <div class="container"> 
    <div class="collapse navbar-collapse collapse-buttons"> 
     <form class="navbar-form navbar-left" role="search"> 
     <button class="btn btn-success">Button</button> 
     <button class="btn btn-default">Button</button> 
     <button class="btn btn-default">Button</button> 
     <button class="btn btn-default">Button</button> 
     </form> 
    </div> 
    </div> 
</nav> 
<div class="container"> 
    <div class="row"> 
    <div class="filler"></div> 
    </div> 
</div> 

CSS

body{ 
    margin-top: 50px; 
} 

.divide-nav{ 
    height: 50px; 
    background-color: #428bca; 
} 

.divide-text{ 
    color:#fff; 
    line-height: 20px; 
    font-size:20px; 
    padding: 15px 0; 
} 

.affix { 
    top: 50px; 
    width:100%; 
} 

.filler{ 
    min-height: 2000px; 
} 

.navbar-form { 
    padding-left: 0; 
} 

.navbar-collapse{ 
    padding-left:0; 
} 

JavaScript

$('.navbar-lower').affix({ 
    offset: {top: 50} 
}); 
+8

Пожалуйста, подумайте над добавлением содержимого на jsFiddle к вашему ответу, если jsFiddle отключится, этот ответ бесполезен. –

+1

Мне пришлось добавить 'z-index: 1000;' в '.affix', чтобы контент прокручивался под второй навигационной панелью. Кроме этого, все работает нормально. –

+0

Не работает, только верхний заголовок остается. Недействительный ответ. –

0

<html lang="en"><head> 
 
    <meta charset="utf-8"> 
 
    <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
 
    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags --> 
 
    <title>Bootstrap 101 Template</title> 
 

 
    <!-- Bootstrap --> 
 
\t <!-- Latest compiled and minified CSS --> 
 
\t <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> 
 

 
\t <!-- Optional theme --> 
 
\t <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css"> 
 

 
    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries --> 
 
    <!-- WARNING: Respond.js doesn't work if you view the page via file:// --> 
 
    <!--[if lt IE 9]> 
 
     <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script> 
 
     <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> 
 
    <![endif]--> 
 
\t <style>body { padding-top: 70px; }</style> 
 
\t </head> 
 
    <body> 
 
    <nav class="navbar navbar-default navbar-fixed-top"> 
 
    <div class="container"> 
 
    Top Nav 
 
    </div> 
 
</nav> 
 
    <nav class="navbar navbar-default"> 
 
    <div class="container-fluid"> 
 
    <!-- Brand and toggle get grouped for better mobile display --> 
 
    <div class="navbar-header"> 
 
     <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false"> 
 
     <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="#">Brand</a> 
 
    </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 class="active"><a href="#">Link <span class="sr-only">(current)</span></a></li> 
 
     <li><a href="#">Link</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><a href="#">Separated link</a></li> 
 
      <li role="separator" class="divider"></li> 
 
      <li><a href="#">One more separated link</a></li> 
 
      </ul> 
 
     </li> 
 
     </ul> 
 
     <form class="navbar-form navbar-left"> 
 
     <div class="form-group"> 
 
      <input type="text" class="form-control" placeholder="Search"> 
 
     </div> 
 
     <button type="submit" class="btn btn-default">Submit</button> 
 
     </form> 
 
     <ul class="nav navbar-nav navbar-right"> 
 
     <li><a href="#">Link</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><a href="#">Separated link</a></li> 
 
      </ul> 
 
     </li> 
 
     </ul> 
 
    </div><!-- /.navbar-collapse --> 
 
    </div><!-- /.container-fluid --> 
 
</nav> 
 
<img src="Desert.jpg" style="width: 100%; height: auto;"> 
 
    <!-- jQuery (necessary for Bootstrap's JavaScript plugins) --> 
 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> 
 

 
\t <!-- Latest compiled and minified JavaScript --> 
 
\t <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> 
 
    
 
</body></html>
Video link

+0

https://youtu.be/kc4ST9rFxz0 –

0
Try this : 
<div class="navbar navbar-fixed-top"> 
    <nav class="navbar navbar-default> 
     navbar1 
    </nav> 

    <nav class="navbar navbar-default"> 
     navbar2 
    </nav> 
</div> 

Этот код будет работать для u.But когда boostrap4 релиз я думаю, его лучше использовать, что один.

Смежные вопросы