溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

bootstrap柵格系統(tǒng)的示例分析

發(fā)布時(shí)間:2021-09-24 14:50:40 來(lái)源:億速云 閱讀:129 作者:小新 欄目:開(kāi)發(fā)技術(shù)

這篇文章將為大家詳細(xì)講解有關(guān)bootstrap柵格系統(tǒng)的示例分析,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

柵格系統(tǒng)簡(jiǎn)介

Bootstrap 提供了一套響應(yīng)式、移動(dòng)設(shè)備優(yōu)先的流式柵格系統(tǒng),隨著屏幕或視口(viewport)尺寸的增加,系統(tǒng)會(huì)自動(dòng)分為最多12列。它包含了易于使用的預(yù)定義類,還有強(qiáng)大的mixin 用于生成更具語(yǔ)義的布局。

柵格系統(tǒng)通過(guò)一系列行(row)與列(column)的組合來(lái)創(chuàng)建頁(yè)面的布局,設(shè)置的內(nèi)容可以放在創(chuàng)建好的布局中。

柵格系統(tǒng)的實(shí)現(xiàn)原理

柵格系統(tǒng)的實(shí)現(xiàn)原理非常簡(jiǎn)單,僅僅是通過(guò)定義容器的大小,平分為 12 份,再調(diào)整內(nèi)外邊距,最后結(jié)合媒體查詢,就制作出了強(qiáng)大的響應(yīng)式的柵格系統(tǒng)。

柵格系統(tǒng)的主要工作原理:

? 一行數(shù)據(jù)(row)必須包含在 .container (固定寬度)或 .container-fluid (100% 寬度)中,以便為其賦予合適的對(duì)齊方式和內(nèi)邊距(padding)。

? 通過(guò) “行(row)” 在水平方向創(chuàng)建一組 “列(column)”。

? 你的具體內(nèi)容應(yīng)當(dāng)放置于 “列(column)” 內(nèi),而且只有 “列(column)” 可以作為行(row)”的直接子元素。

? 內(nèi)置一大堆樣式,可以使用如 .row 和 .col-xs-4(占四列寬度)這樣的樣式(即預(yù)定義的類),來(lái)快速創(chuàng)建柵格布局。Bootstrap 源碼中定義的 mixin 也可以用來(lái)創(chuàng)建語(yǔ)義化的布局。

? 通過(guò)為 “列(column)”設(shè)置 padding 屬性,從而創(chuàng)建列與列之間的間隔(gutter)。通過(guò)為 .row 元素設(shè)置負(fù)值 margin 從而抵消掉為 .container 元素設(shè)置的 padding,也就間接為“行(row)”所包含的“列(column)”抵消掉了padding。

? 柵格系統(tǒng)中的列是通過(guò)指定 1 到 12 的值來(lái)表示其跨越的范圍。例如,三個(gè)等寬的列可以使用三個(gè) .col-xs-4 來(lái)創(chuàng)建。

? 如果一 “行(row)” 中包含的 “列(column)” 大于 12,多余的 “列(column)” 所在的元素將被作為一個(gè)整體另起一行排列。

? 柵格類適用于與屏幕寬度大于或等于分界點(diǎn)大小的設(shè)備 , 并且針對(duì)小屏幕設(shè)備覆蓋柵格類。 因此,在元素上應(yīng)用任何 .col-md-* 柵格類適用于與屏幕寬度大于或等于分界點(diǎn)大小的設(shè)備 , 并且針對(duì)小屏幕設(shè)備覆蓋柵格類。 因此,在元素上應(yīng)用任何 .col-lg-* 不存在, 也影響大屏幕設(shè)備。

柵格系統(tǒng)布局容器

Bootstrap 需要為頁(yè)面內(nèi)容和柵格系統(tǒng)包裹一個(gè) .container 容器。我們提供了兩個(gè)作此用處的類。注意,由于 padding 等屬性的原因,這兩種容器類不能互相嵌套。

.container 類用于固定寬度并支持響應(yīng)式布局的容器

<div class="container">  ...</div>

.container-fluid 類用于 100% 寬度,占據(jù)全部視口(viewport)的容器

<div class="container-fluid">  ...</div>

柵格系統(tǒng)的使用

柵格系統(tǒng)的使用,其實(shí)就是列的各種組合。在基本用法里有四種特性,即列組合、列偏移、列嵌套和列排序。由于不同的屏幕尺寸使用不同的樣式,我們以中等屏幕(md)為例進(jìn)行介紹,其他屏幕用法也是類似。

1、列組合

列組合就是通過(guò)更改數(shù)字來(lái)合并列,類似表格里的 colspan 。列組合的實(shí)現(xiàn)方式很簡(jiǎn)單,只涉及兩個(gè) CSS 特性:左浮動(dòng)和百分比。

說(shuō)明:在使用柵格系統(tǒng)的時(shí)候,只要記住每行的總格數(shù)是 12 個(gè),根據(jù)實(shí)際項(xiàng)目自由組合即可。

        <div class="container">            <div class="row">                <div class="col-md-1">.col-md-1</div>                <div class="col-md-1">.col-md-1</div>                <div class="col-md-1">.col-md-1</div>                <div class="col-md-1">.col-md-1</div>                <div class="col-md-1">.col-md-1</div>                <div class="col-md-1">.col-md-1</div>                <div class="col-md-1">.col-md-1</div>                <div class="col-md-1">.col-md-1</div>                <div class="col-md-1">.col-md-1</div>                <div class="col-md-1">.col-md-1</div>                <div class="col-md-1">.col-md-1</div>                <div class="col-md-1">.col-md-1</div>            </div>            <div class="row">                <div class="col-md-8">.col-md-8</div>                <div class="col-md-4">.col-md-4</div>            </div>            <div class="row">                <div class="col-md-4">.col-md-4</div>                <div class="col-md-4">.col-md-4</div>                <div class="col-md-4">.col-md-4</div>            </div>            <div class="row">                <div class="col-md-6">.col-md-6</div>                <div class="col-md-6">.col-md-6</div>            </div>        </div>

相關(guān)推薦:《bootstrap入門教程》

2、列偏移

有時(shí)候我們不想讓兩個(gè)相鄰的列挨在一起,這時(shí)候利用柵格系統(tǒng)的列偏移(offset)功能來(lái)實(shí)現(xiàn),而不必再定義 margin 值。對(duì)于中等屏幕,可以使用 .col-md-offset-* 形式的樣式將列偏移到右側(cè)。

例如,.col-md-offset-2 的意思是將元素向右移動(dòng)了兩個(gè)列的寬度。

    <!--列偏移-->    <div class="container">            <div class="row">                <div class="col-md-4">.col-md-4</div>                <div class="col-md-4 col-md-offset-4">.col-md-4 .col-md-offset-4</div>            </div>            <div class="row">                <div class="col-md-3 col-md-offset-3">.col-md-3 .col-md-offset-3</div>                <div class="col-md-3 col-md-offset-3">.col-md-3 .col-md-offset-3</div>            </div>            <div class="row">                <div class="col-md-6 col-md-offset-3">.col-md-6 .col-md-offset-3</div>            </div>    </div>

3、列嵌套

柵格系統(tǒng)也支持列嵌套,即在一個(gè)列里再聲明一個(gè)或多個(gè)行(row),但是要注意,內(nèi)部所嵌套的 row 的寬度為 100% 時(shí),就是當(dāng)前外部列的寬度。被嵌套的行(row)所包含的列(column)的個(gè)數(shù)不能超過(guò)12。

        <!--列嵌套-->        <div class="container">            <div class="row">                <div class="col-md-8">                    Level 1:col-md-8                    <!--在第一行里又添加一行-->                    <div class="row">                        <div class="col-md-6">Level 2:col-md-6</div>                        <div class="col-md-6">Level 2:col-md-6</div>                    </div>                    <!--在第一行里又添加一行-->                    <div class="row">                        <div class="col-md-3"> Level 3:col-md-3 </div>                        <div class="col-md-6"> Level 3:col-md-6 </div>                    </div>                </div>                <div class="col-md-4">Level 1:col-md-4</div>            </div>        </div>

說(shuō)明:可以看到,在第一個(gè)列(col-md-8)里面,嵌套了一個(gè)新行(row),然后在新行里,又放置了兩個(gè)等寬的(col-md-6)列,并且兩個(gè) col-md-6 加起來(lái)是12,但是總寬度和外面的 col-md-8 列的寬度一樣,也就是說(shuō)在  row 里的列寬度是按照百分比分配的。在任何一個(gè)嵌套列里,不管寬度是多少,都可以再進(jìn)行 12 等分,并可以進(jìn)一步組合。

4、列排序

列排序就是改變列的方向,也就是改變左右浮動(dòng),并設(shè)置浮動(dòng)的距離。在柵格系統(tǒng)里,可以通過(guò) .col-md-push-* 和 .col-md-pull-* 來(lái)實(shí)現(xiàn)這一目的。

     <!--列排序-->        <div class="container">            <div class="row">              <div class="col-md-9 col-md-push-3">.col-md-9 .col-md-push-3</div>              <div class="col-md-3 col-md-pull-9">.col-md-3 .col-md-pull-9</div>          </div>        </div>

說(shuō)明:默認(rèn)情況下,col-md-9 在左邊,col-md-3 在右邊,如果要互換位置,需要將 col-md-9 列向右移動(dòng)三個(gè)列的距離,也就是推三個(gè)列的 offset,樣式用 col-md-push-3;而 col-md-3 需要向左移動(dòng),也就是拉九個(gè) offset,樣式用 col-md-pull-9。

響應(yīng)式柵格

我們都知道,Bootstrap 可以制作響應(yīng)式頁(yè)面。它能為不同屏幕尺寸提供不同柵格樣式。在前面的例子中,我們一直都在使用中等屏幕(md),既然是響應(yīng)式頁(yè)面,當(dāng)然還應(yīng)該包括超小屏幕(xs)、小型屏幕(sm)、大屏幕(lg)等。

Bootstrap 柵格參數(shù)

說(shuō)明:通過(guò)下表可以詳細(xì)查看 Bootstrap 的柵格系統(tǒng)是如何在多種屏幕設(shè)備上工作的。

關(guān)于“bootstrap柵格系統(tǒng)的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI