2017-06-22 57 views
1

我很好奇,如果有人知道爲什麼語義導航欄<nav>元素被安置在<div class="container">外面?爲什麼將<nav>導航欄元素放置在容器外?

從引導導航欄文檔: https://getbootstrap.com/components/#navbar

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

我的理解(我認爲)是,爲了引導對,呃,引導,一切都必須在一個容器>行>山坳。

現在已經使用了它,我明白有一些警告和「它並不總是這麼簡單」,所以我試圖忠實地執行涉及挖掘我的應用程序的前端的球 - 令人煩躁的工作,同時還了解我在做什麼。

是答案,正如(我猜測)一樣簡單,<nav>是創造生活「外」,由於正常的集裝箱其特殊的使用情況「特殊」元素(特別是在網站/應用範圍的導航的情況下) ?我自己採取

步驟:

  1. 來自10+ 「類似問題」
  2. 花時間getbootstrap.com
  3. 經過W3Schools的
  4. 谷歌搜索"<nav>"
+2

羅 - 容器會添加填充任何一方 - 用'

','
+0

頁面的整個寬度,你可以請一個工作小提琴,所以我們可以仔細看看你的問題 –

+0

@ThisGuyHasTwoThumbs有道理,如果我能弄明白,我會接受這個答案。 – ScorpIan

回答

0

「我理解(我認爲)是,爲了Bootstrap,erm,bootstrap,一切都必須在一個容器> r ow> col「 - 讓bootstrap網格系統工作 - 是的。但是導航通常不會使用網格系統開始;大多數情況下,您有一個獨立於網格的導航,其後是可能使用網格的主頁面內容。 - CBroe 1分鐘前

這回答了我的問題。謝謝。

+1

真正的原因並不是因爲導航不使用網格系統,而是因爲導航欄欄需要爲全角,但其組件與其餘頁面元素對齊,因此位於子容器內。 – slynagh

0

這使navbar能夠拉伸到全寬 - 它內部的.container約束導航元素本身。看看[https://getbootstrap.com/examples/theme/]你會看到黑暗的導航欄是全角。

沒有什麼能夠阻止你製作多個全寬的部分,每個部分都有自己的.container div。例如,參見[https://getbootstrap.com/examples/jumbotron/] - .jumbotron也有一個child.container,但背景延伸至全寬。

而且,存在什麼特別的這意味着它必須坐在容器外部,如本例示出了.navbar元件:[https://getbootstrap.com/examples/carousel/]

所以使用一個容器,你要設置最大寬度,並確保網格系統的工作。