2017-02-27 71 views
0

我正在使用Bootstrap navbar-fixed-top方法創建浮動導航欄。導航欄在769px寬度處消失

我有幾個問題我想不通:

  • 爲什麼我的標誌,我的社交圖標消失,當我減少屏幕寬度769px?
  • 爲什麼我的標誌和社交圖標就在頁面頂部?
  • 我的社交圖標太小,彼此相鄰。我該如何改變這一點?

http://codepen.io/dhruvghulati/pen/qrdNBm

我應該怎麼做有一個持續的導航欄這是更標準?

+0

請花點時間閱讀文檔(http://getbootstrap.com/components/#navbar)。 'collapse'中的所有內容都會崩潰<768px。此外,澄清一個問題的問題。 – ZimSystem

回答

1

.collapse類看起來是這樣的:

.collapse { 
    display: none; 
    visibility: hidden; 
} 

而且有:

@media (min-width: 768px) 
.navbar-collapse.collapse { 
    display: block!important; 
    height: auto!important; 
    padding-bottom: 0; 
    overflow: visible!important; 
    visibility: visible!important; 
} 

這意味着.collapse將不會顯示,直到屏幕是768px寬。

而且有(用於標識):

@media (min-width: 768px) 
.navbar-left { 
    float: left!important; 
} 

這使得左標誌浮子由於屏幕是768px寬度,存在一種用於.navbar-right同級其用於社交圖標容器。

+0

瞭解,這使得總體感覺!你會在這種情況下建議什麼?還有,圖標被聚集到頂部和在一起呢? –

+0

默認情況下,當屏幕小於768px時,bootstrap會顯示菜單按鈕,但您似乎刪除了該功能,如果要顯示與您的小屏幕相同的導航欄,請移除該.collapse類,以免隱藏默認情況下,將這些.navbar-left .navbar-ritht類從@media最小寬度條件中移出。它仍然需要一些觸摸,但它們應該是可見的,並且徽標將位於左側,圖標將位於右側。 –

+0

我希望整個事情保持固定,因爲我向下移動頁面以便始終可見。我用了@H。艾倫下面說。我該怎麼做呢? –

-1

我認爲它是因爲您使用使用position: relative;代替

+0

對不起,你可以更具體嗎?我在哪裏使用'position:absolute'?它不在我的codepen CSS中。 –

+0

他需要一個靜態的導航欄,這就是爲什麼它是絕對的。 –

0

你或許應該訪問官方Bootstrap docs,以獲取有關導航欄的更多信息position:absolute;嘗試。我將以此爲模板爲您導航欄,並從那裏:

<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 --> 

從本質上講,引導替換在該屏幕尺寸的漢堡包按鈕,您的導航鏈接。此外,你應該給徽標適當的類(從上面的代碼),以確保它始終可見。要將導航欄粘貼到頁面的頂部,只需將navbar-fixed-top類添加到導航標記。開標籤現在應該如下所示:<nav class="navbar navbar-default navbar-fixed-top">

+0

什麼是特別引起3問題引用?我不需要很多的功能,例如切換你在答案中給出的內容。 –

+0

我在回答的最後解決了兩個問題。此外,我明白你不需要代碼中的所有東西,但這是官方Bootstrap文檔中給出的模板。您需要正確使用導航欄才能使其符合您的要求。 –

+0

你說得對,我試過了,它在一定程度上完成了這項工作。我希望整個事情保持固定,因爲我向下移動頁面以便始終可見。我該怎麼做呢? –