BOOTSTRAP4的栅格系统详解
簡(jiǎn)介
Bootstrap 提供了一套響應(yīng)式、移動(dòng)設(shè)備優(yōu)先的流式網(wǎng)格系統(tǒng),隨著屏幕或視口(viewport)尺寸的增加,系統(tǒng)會(huì)自動(dòng)分為最多 12 列。
網(wǎng)格類(lèi)
Bootstrap 4 網(wǎng)格系統(tǒng)有以下 5 個(gè)類(lèi):
.col- 針對(duì)所有設(shè)備
.col-sm- 平板 - 屏幕寬度等于或大于 576px
.col-md- 桌面顯示器 - 屏幕寬度等于或大于 768px
.col-lg- 大桌面顯示器 - 屏幕寬度等于或大于 992px
.col-xl- 超大桌面顯示器 - 屏幕寬度等于或大于 1200px
列與列間隔30px
布局
定義了幾個(gè)類(lèi)型的布局容器,會(huì)在相應(yīng)設(shè)備上進(jìn)行響應(yīng),如.container-md容易,在屏寬<768時(shí)會(huì)滿(mǎn)屏不留margin和panding。
網(wǎng)格系統(tǒng)規(guī)則
Bootstrap4 網(wǎng)格系統(tǒng)規(guī)則:
網(wǎng)格每一行需要放在設(shè)置了 .container (固定寬度) 或 .container-fluid (全屏寬度) 類(lèi)的容器中,這樣就可以自動(dòng)設(shè)置一些外邊距與內(nèi)邊距。
使用行來(lái)創(chuàng)建水平的列組。
內(nèi)容需要放置在列中,并且只有列可以是行的直接子節(jié)點(diǎn)。
預(yù)定義的類(lèi)如 .row 和 .col-sm-4 可用于快速制作網(wǎng)格布局。
列通過(guò)填充創(chuàng)建列內(nèi)容之間的間隙。 這個(gè)間隙是通過(guò) .rows 類(lèi)上的負(fù)邊距設(shè)置第一行和最后一列的偏移。
網(wǎng)格列是通過(guò)跨越指定的 12 個(gè)列來(lái)創(chuàng)建。例如,設(shè)置三個(gè)相等的列,需要使用用三個(gè).col-sm-4 來(lái)設(shè)置。
Bootstrap 3 和 Bootstrap 4 最大的區(qū)別在于 Bootstrap 4 現(xiàn)在使用 flexbox(彈性盒子) 而不是浮動(dòng)。 Flexbox 的一大優(yōu)勢(shì)是,沒(méi)有指定寬度的網(wǎng)格列將自動(dòng)設(shè)置為等寬與等高列 。
下表總結(jié)了 Bootstrap 網(wǎng)格系統(tǒng)如何在不同設(shè)備上工作的:
套用格式
必須套在container-fluid >row 中或container>row中
等寬列
等寬響應(yīng)式列
即屏幕寬度小于sm尺寸 576px 時(shí),每列都是全寬,大于576px時(shí),四列均分屏寬
多屏響應(yīng)式列
<div class="row"><div class="col-sm-3 col-md-6"> col-sm-3 col-md-6 </div><div class="col-sm-9 col-md-6"> col-sm-9 col-md-6 </div></div>桌面設(shè)備的顯示器>md768px上兩個(gè)列的寬度各占 50%,如果在平板端>sm576且<md768則左邊的寬度為 25%,右邊的寬度為 75%, 在移動(dòng)手機(jī)等小型設(shè)備上會(huì)堆疊全寬顯示。
強(qiáng)制換行或間隔
<div class="col">col</div><div class="w-100"></div><div class="col">col</div>w-25 w-50等可以分別嵌入一個(gè)25%和50%的空白區(qū)域,w-100強(qiáng)制塊換行
指定其中一列寬度
<div class="col"> 1 of 3 </div><div class="col-6"> 2 of 3 (wider) </div><div class="col"> 3 of 3 </div>第二個(gè)div占一半寬度,另外兩個(gè)左右均分余下寬度
隨內(nèi)容的可變寬度
<div class="row justify-content-md-center"><div class="col col-lg-2"> 1 of 3 </div><div class="col-md-auto"> Variable width content </div><div class="col col-lg-2"> 3 of 3 </div> </div>
row的 justify-content-md-center可以讓塊居中
屏寬>lg960時(shí),左右兩列各占2柵格,中間列由文字內(nèi)容決定寬度
屏寬>md720且<lg960時(shí),左右失限填滿(mǎn)左右空間,中間由文字內(nèi)容決定寬度
屏寬<md720時(shí),三列失限占全寬,成為三行
行列限定
<div class="container"><div class="row row-cols-2"><div class="col">Column</div><div class="col">Column</div><div class="col">Column</div><div class="col">Column</div></div> </div>row-cols-2指定本row每行只能包括兩個(gè)col。每個(gè)col也可以指定寬度,但總寬大于12時(shí)仍然會(huì)換行溢出。
垂直位置
<div class="row align-items-start"> <div class="row align-items-center"> <div class="row align-items-end"> ...... <div class="col align-self-start"> <div class="col align-self-center"> <div class="col align-self-center">使行內(nèi)的col塊在行中垂直位置定位。align-self控制col本身,align-items控制內(nèi)部col
水平位置
<div class="row justify-content-start"> 內(nèi)部col靠左 <div class="row justify-content-center">內(nèi)部col居中 <div class="row justify-content-end">內(nèi)部col靠右 <div class="row justify-content-around">內(nèi)部col均分列,最邊緣的col左右有空隙 <div class="row justify-content-between">內(nèi)部col均分列,最邊緣的col左右緊貼外邊緣
列重新排序
order-1的列會(huì)放在order-12前面
偏移
<div class="col-md-4">.col-md-4</div> <div class="col-md-4 offset-md-4">.col-md-4 .offset-md-4</div>兩個(gè)塊中間會(huì)有一個(gè)col-md-4尺寸的空白,即第二個(gè)col左側(cè)多了一個(gè)同等尺寸的margin-left
margin utilities
可以使用margin utilities 例如.mr-auto將同級(jí)列強(qiáng)制彼此分開(kāi)。
嵌套
技巧
水平堆疊的技巧
為了節(jié)省空間使用一組.col-sm-*類(lèi),可以創(chuàng)建一個(gè)基本的網(wǎng)格系統(tǒng),該系統(tǒng)屏寬<SM時(shí)變?yōu)樗健F渌鼤r(shí)候按列寬排列
總結(jié)
以上是生活随笔為你收集整理的BOOTSTRAP4的栅格系统详解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 一款集成化红队渗透工具箱
- 下一篇: 跟siki学院教程学习愤怒的小鸟案例存储