top
Loading...
Bootstrap4 網格系統

Bootstrap4 網格系統

Bootstrap 提供了一套響應式、移動設備優先的流式網格系統,隨著屏幕或視口(viewport)尺寸的增加,系統會自動分為最多 12 列。

我們也可以根據自己的需要,定義列數:

1 1 1 1 1 1 1 1 1 1 1 1
4 4 4
4 8
6 6
12

Bootstrap 4 的網格系統是響應式的,列會根據屏幕大小自動重新排列。


網格類

Bootstrap 4 網格系統有以下 5 個類:

  • .col- 針對所有設備
  • .col-sm- 平板 - 屏幕寬度等於或大於 576px
  • .col-md- 桌面顯示器 - 屏幕寬度等於或大於 768px)
  • .col-lg- 大桌面顯示器 - 屏幕寬度等於或大於 992px)
  • .col-xl- 超大桌面顯示器 - 屏幕寬度等於或大於 1200px)

網格系統規則

Bootstrap4 網格系統規則:

  • 網格每一行需要放在設置了 .container (固定寬度) 或 .container-fluid (全屏寬度) 類的容器中,這樣就可以自動設置一些外邊距與內邊距。
  • 使用行來創建水平的列組。
  • 內容需要放置在列中,併且只有列可以是行的直接子節點。
  • 預定義的類如 .row.col-sm-4 可用於快速製作網格布局。
  • 列通過填充創建列內容之間的間隙。 這個間隙是通過 .rows 類上的負邊距設置第一行和最後一列的偏移。
  • 網格列是通過跨越指定的 12 個列來創建。 例如,設置三個相等的列,需要使用用三個.col-sm-4 來設置。
  • Bootstrap 3 和 Bootstrap 4 最大的區別在於 Bootstrap 4 現在使用 flexbox(彈性盒子) 而不是浮動。 Flexbox 的一大優勢是,沒有指定寬度的網格列將自動設置為等寬與等高列 。 如果您想了解有關Flexbox的更多信息,可以閱讀我們的CSS Flexbox教程。

下表總結了 Bootstrap 網格系統如何在不同設備上工作的:

超小設備
<576px
平板
≥576px
桌面顯示器
≥768px
大桌面顯示器
≥992px
超大桌面顯示器
≥1200px
容器最大寬度 None (auto) 540px 720px 960px 1140px
類前綴 .col- .col-sm- .col-md- .col-lg- .col-xl-
列數量和 12
間隙寬度 30px (一個列的每邊分別 15px)
可嵌套 Yes
列排序 Yes

以下各個類可以一起使用,從而創建更靈活的頁面布局。


Bootstrap 4 網格的基本結構

以下代碼為 Bootstrap 4 網格的基本結構:

Bootstrap4 網格基本結構

<!-- 第一個例子:控製列的寬度及在不同的設備上如何顯示 --> <div class="row"> <div class="col-*-*"></div> </div> <div class="row"> <div class="col-*-*"></div> <div class="col-*-*"></div> <div class="col-*-*"></div> </div> <!-- 第二個例子:或讓 Bootstrap 者自動處理布局 --> <div class="row"> <div class="col"></div> <div class="col"></div> <div class="col"></div> </div>

第一個例子:創建一行(<div class="row">)。然後, 添加是需要的列( .col-*-* 類中設置)。 第一個星號 (*) 表示響應的設備: sm, md, lg 或 xl, 第二個星號 (*) 表示一個數字, 同一行的數字相加為 12。

第二個例子: 不在每個 col 上添加數字,讓 bootstrap 自動處理布局,同一行的每個列寬度相等: 兩個 "col" ,每個就為 50% 的寬度。三個 "col"每個就為 33.33% 的寬度,四個 "col"每個就為 25% 的寬度,以此類推。同樣,你可以使用 .col-sm|md|lg|xl 來設置列的響應規則。

接下來我們可以看看實例。

創建相等寬度的列,Bootstrap 自動布局

實例

<div class="row"> <div class="col">.col</div> <div class="col">.col</div> <div class="col">.col</div> </div>

嘗試一下 »

等寬響應式列

以下實例演示了如何在平板及更大屏幕上創建等寬度的響應式列。 在移動設備上,即屏幕寬度小於 576px 時,四個列將會上下堆叠排版:

實例

<div class="col-sm-3">.col-sm-3</div> <div class="col-sm-3">.col-sm-3</div> <div class="col-sm-3">.col-sm-3</div> <div class="col-sm-3">.col-sm-3</div>

嘗試一下 »

不等寬響應式列

以下實例演示了在平板及更大屏幕上創建不等寬度的響應式列。 在移動設備上,即屏幕寬度小於 576px 時,四個列將會上下堆叠排版:

實例

<div class="row"> <div class="col-sm-4">.col-sm-4</div> <div class="col-sm-8">.col-sm-8</div> </div>

嘗試一下 »

平板和桌面端

以下實例演示了在桌面設備的顯示器上兩個列的寬度各佔 50%,如果在平板端則左邊的寬度為 25%,右邊的寬度為 75%, 在移動手機等小型設備上會堆叠顯示。

實例

<div class="container-fluid"> <div class="row"> <div class="col-sm-3 col-md-6"> <p>RUNOOB</p> </div> <div class="col-sm-9 col-md-6"> <p>教程</p> </div> </div> </div>

嘗試一下 »

平板、桌面、大桌面顯示器、超大桌面顯示器

以下實例在平板、桌面、大桌面顯示器、超大桌面顯示器的寬度比例為分別為:25%/75%、50%/50%、33.33%/66.67%、16.67/83.33%, 在移動手機等小型設備上會堆叠顯示。

實例

<div class="container-fluid"> <div class="row"> <div class="col-sm-3 col-md-6 col-lg-4 col-xl-2"> <p>RUNOOB</p> </div> <div class="col-sm-9 col-md-6 col-lg-8 col-xl-10"> <p>教程</p> </div> </div> </div>

嘗試一下 »

偏移列

偏移列通過 offset-*-* 類來設置。第一個星號( * )可以是 sm、md、lg、xl,表示屏幕設備類型,第二個星號( * )可以是 111 的數字。

為了在大屏幕顯示器上使用偏移,請使用 .offset-md-* 類。這些類會把一個列的左外邊距(margin)增加 * 列,其中 * 範圍是從 111

例如:.offset-md-4 是把.col-md-4 往右移了四列格。

實例

<div class="row"> <div class="col-md-4">.col-md-4</div> <div class="col-md-4 offset-md-4">.col-md-4 .offset-md-4</div> </div> <div class="row"> <div class="col-md-3 offset-md-3">.col-md-3 .offset-md-3</div> <div class="col-md-3 offset-md-3">.col-md-3 .offset-md-3</div> </div> <div class="row"> <div class="col-md-6 offset-md-3">.col-md-6 .offset-md-3</div> </div>

嘗試一下 »
北斗有巢氏 有巢氏北斗