2013-04-11 51 views
2

嵌套的最佳使用方式是什麼?內排Bootstrap - 嵌套的最佳實踐 - 行和跨度

多個跨度 - 動態內容

每12
  • 一行列?
  • 或者,對於任意列數的一行?

樣品情況下,n°1 - 哪一個是最好的&爲什麼呢? :

<div class="row"> 
    <span class="span6"></span> 
    <span class="span6"></span> 
    <span class="span6"></span> 
    <span class="span6"></span> 
</div> 

或者

<div class="row"> 
    <div class="span6"></div> 
    <div class="span6"></div> 
</div> 
<div class="row"> 
    <div class="span6"></div> 
    <div class="span6"></div> 
</div> 

樣品情況下,n°2 - 更水平來組織內容。

此處使用div「my_margin」在左邊添加一些邊距&右邊 - 您必須在其周圍有「first_row」。

因此,它是:行 - > span10,誤差1 - >列 - > SPANS

<div id="first_row" class="row"> 
    <div id="my_margin" class="span10 offset1"> 
     <div class="row"> 
      <div class="span6"></div> 
      <div class="span6"></div> 
      <div class="span6"></div> 
      <div class="span6"></div> 
     </div> 
    </div> 
</div> 

或者,

你不應該使用span10,OFFSET1但直接保證金;

在這種情況下,您必須爲每個@Media_size創建規則以使其響應。

<div style="margin-right:XYpx; margin-left:XYpx" class="row"> 
    <div class="span6"></div> 
    <div class="span6"></div> 
    <div class="span6"></div> 
    <div class="span6"></div> 
</div> 

或者 - 跨度是「應該」是使用你的主要內容,然後你只用CSS玩。所以,這樣的事情:

<div row> 
    <div class="span6"> 
     http://jsfiddle.net/JkPhw/ 
    <div class="span6"> 
    <div class="span6"> 
     http://jsfiddle.net/JkPhw/ 
    <div class="span6"> 
</div> 
+0

當您向網格行添加左/右邊距時,您不會遇到問題嗎?或者你在使用流體網格嗎? – Simon 2013-04-11 08:58:28

+0

是的,這有點棘手;目前我使用樣本2中的第一個解決方案;但我不確定這是你應該使用Bootstrap跨度的方式。在某些情況下,我最終以行 - > span - > row - > span - > row - > span - > row ...這似乎太多了,但這正是我所需要的。我不知道引導程序跨度是否原本應該用於組織頁面上的「主」框,然後您只需使用普通的CSS來執行您想要的操作。 – Slake 2013-04-11 09:11:56

回答

1

要區分N°1:

這取決於,如果您有例如九個玩笑其中3個玩笑填充線名單,我會做它有一個行:

<ul class="row"> 
    <li class="span4"></li> 
    <li class="span4"></li> 
    <li class="span4"></li> 
    <!-- six more --> 
</ul> 

如果您使用的網格布點形式,我會做一排的每個標籤輸入對:

<!-- one label-input pair does not fill the whole content width --> 
<form> 
    <div class="row"> 
     <label class="span3"></label> 
     <input class="span5" /> 
    </div> 
    <div class="row"> 
     <label class="span3"></label> 
     <input class="span5" /> 
    </div> 
    <!-- and so on --> 
</form> 

我認爲你不應該創建一個網格並把你的內容放在不同的網格單元中來佈局它,但是建立語義上正確的標記並應用網格來佈置內容(微小的差異)。

PS:記住box-sizing

爲N°2:

我不太明白我的意思那裏,如果你使用的網格,你不應該左/右利潤率適用於它。網格取決於它的水平邊界,以便正常工作...如果你必須改變這個以匹配你的前端和設計,那麼它可能不再在網格中。

更新:儘管如果你有更小的內容,我肯定會使用你的第一個例子。但使用正確的網格跨度寬度:

<article class="row"> 
    <header class="span12"></header> 
    <div class="span10 offset1"> 
     <div class="row"> 
      <div class="span5"></div> 
      <div class="span5"></div> 
     </div> 
    </div> 
</article> 
+0

更多有關n°2在'my case'中的信息 - > frenchdelicious.com/tmp.jpg – Slake 2013-04-11 10:38:45

+1

哦,那太棒了,在10行中有6個跨度:D。這實際上不再在你的網格中,只有當你有一個流體網格時它纔會「工作」,因爲這些跨度可以在你給它們的任何行內進行調整。但請記住,由於利潤率的百分比,跨度之間的空間要比頁面其餘部分略小...... – Simon 2013-04-11 11:33:17

+0

我明白你的意思了,但是我應該擺脫那些跨度和排列「通過純CSS」? – Slake 2013-04-18 05:22:38