Bootstrap 網(wǎng)格系統(tǒng)布局詳解
Bootstrap 提供了一套響應(yīng)式、移動(dòng)設(shè)備優(yōu)先的流式網(wǎng)格系統(tǒng)(Grid System),隨著屏幕或視口(viewport)尺寸的增加,系統(tǒng)會(huì)自動(dòng)分為最多12列。
一、什么是網(wǎng)格(Grid)?
在平面設(shè)計(jì)中,網(wǎng)格是一種由一系列用于組織內(nèi)容的相交的直線(垂直的、水平的)組成的結(jié)構(gòu)(通常是二維的)。它廣泛應(yīng)用于打印設(shè)計(jì)中的設(shè)計(jì)布局和內(nèi)容結(jié)構(gòu)。在網(wǎng)頁設(shè)計(jì)中,它是一種用于快速創(chuàng)建一致的布局和有效地使用 HTML 和 CSS 的方法。
一句話概括:網(wǎng)頁設(shè)計(jì)中的網(wǎng)格用于組織內(nèi)容,讓網(wǎng)站易于瀏覽,并降低用戶端的負(fù)載。
二、什么是Bootstrap網(wǎng)格系統(tǒng)(Grid System)?
Bootstrap 包含了一個(gè) 響應(yīng)式的、移動(dòng)設(shè)備優(yōu)先的、不固定的網(wǎng)格系統(tǒng) ,可以隨著設(shè)備或視口大小的增加而適當(dāng)?shù)財(cái)U(kuò)展到 12 列。它包含了用于簡(jiǎn)單的布局選項(xiàng)的預(yù)定義類,也包含了用于生成更多語義布局的功能強(qiáng)大的混合類。
三、網(wǎng)格系統(tǒng)工作原理
網(wǎng)格系統(tǒng)通過一系列包含內(nèi)容的行和列來創(chuàng)建頁面布局。下面列出了 Bootstrap 網(wǎng)格系統(tǒng)是如何工作的:
•行必須放置在 .container class 內(nèi),以便獲得適當(dāng)?shù)膶?duì)齊(alignment)和內(nèi)邊距(padding)。
•使用行row來創(chuàng)建列的水平組。
•內(nèi)容應(yīng)該放置在列內(nèi), 且唯有列可以是行的直接子元素 。
•預(yù)定義的網(wǎng)格類,比如 .row 和 .col-xs-4 ,可用于快速創(chuàng)建網(wǎng)格布局。LESS 混合類可用于更多語義布局。
•列通過內(nèi)邊距(padding)來創(chuàng)建列內(nèi)容之間的間隙。該內(nèi)邊距是通過 .rows 上的外邊距(margin)取負(fù),表示第一列和最后一列的行偏移。
•網(wǎng)格系統(tǒng)是通過指定您想要橫跨的十二個(gè)可用的列來創(chuàng)建的。例如,要?jiǎng)?chuàng)建三個(gè)相等的列,則使用三個(gè) .col-xs-4。
下面是 Bootstrap 基本的網(wǎng)格結(jié)構(gòu):
<div class="container"> <div class="row"> <div class="col-*-*"></div> <div class="col-*-*"></div> </div> <div class="row">...</div> </div> <div class="container"> ... </div>
注意:列 <div class="col-*-*"></div> 必須放在 <div class="row"> 行元素下,且行元素里邊只能包含列子元素,不能跟其他的子標(biāo)簽元素,否則,布局樣式會(huì)亂掉。
四、布局實(shí)戰(zhàn)
代碼:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Bootstrap 實(shí)例 - 布局偏移列-@corwien</title> <link rel="stylesheet" > <script src="https://cdn.static.runoob.com/libs/jquery/2.1.1/jquery.min.js"></script> <script src="https://cdn.static.runoob.com/libs/bootstrap/3.3.7/js/bootstrap.min.js"></script> </head> <body style="margin:50px;background:gray;"> <div class="container" style="background:white;"> <div class="row" > <div class="col-md-8 col-md-offset-1"> <div style="background:pink; height:50px;">區(qū)塊一 (col-md-8 col-md-offset-1)</div> </div> <div class="col-md-3"> <div style="background:orange; height:50px;">區(qū)塊二 (col-md-3)</div> </div> <div class="col-md-8 col-md-offset-1"> <div style="background:green; height:50px;">區(qū)塊三 (col-md-8 col-md-offset-1)</div> </div> <div class="col-md-4"> <div style="background:red; height:50px;">區(qū)塊四 (col-md-4)</div> </div> <div class="col-md-12"> <div style="background:yellow; height:50px;">區(qū)塊五(col-md-12)</div> </div> <div class="col-md-3"> <div style="background:purple; height:50px;">區(qū)塊六(col-md-3)</div> </div> <div class="col-md-6"> <div style="background:beige; height:50px;">區(qū)塊七(col-md-6)</div> </div> <div class="col-md-3"> <div style="background:olive; height:50px;">區(qū)塊八(col-md-3)</div> </div> </div> </div> </body> </html>
說明:灰色區(qū)域?yàn)閎ody, 白色區(qū)域內(nèi)為container容器。
注意:這里要特別注意區(qū)塊一、區(qū)塊二為在同一行,而區(qū)塊三、和區(qū)塊四在不同行,為什么呢?因?yàn)榱性貫樾袃?nèi)元素,如果一行沒有夠12列,則下邊的區(qū)塊元素會(huì)和它上邊的區(qū)塊列加起來小于或等于12,則會(huì)排在同一行,如果加起來大于12,則會(huì)排在下一列,如區(qū)塊一和區(qū)塊二兩個(gè)列加起來等于12,則剛好能排在同一行,而區(qū)塊三、四兩個(gè)列加起來為13,超過一行最大顯示列數(shù)12,自然就排在另一行了。
以上所述是小編給大家介紹的Bootstrap 網(wǎng)格系統(tǒng)布局,希望對(duì)大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!
相關(guān)文章
JavaScript設(shè)計(jì)模式之單例模式詳解
單例模式(Singleton Pattern)是一種創(chuàng)建型設(shè)計(jì)模式,確保一個(gè)類只有一個(gè)實(shí)例,并提供全局訪問該實(shí)例的方式,這在某些場(chǎng)景下非常有用,例如配置管理類、日志類或數(shù)據(jù)庫連接管理類,需要的朋友可以參考下2024-08-08比較簡(jiǎn)單的一個(gè)符合web標(biāo)準(zhǔn)的JS調(diào)用flash方法
比較簡(jiǎn)單的一個(gè)符合web標(biāo)準(zhǔn)的JS調(diào)用flash方法...2007-11-11自己做的模擬模態(tài)對(duì)話框?qū)崿F(xiàn)代碼
最近做完一個(gè)項(xiàng)目,發(fā)現(xiàn)瀏覽器兼容問題,模態(tài)對(duì)話框只有IE支持,但是IE9又不能支持帶框架的對(duì)話框,那個(gè)對(duì)話框的大小打死都設(shè)置不了,在網(wǎng)上查說因?yàn)楹枚喙δ鼙籌E9屏蔽了,于是自己做了一個(gè)模擬對(duì)話框的東西2012-05-05JavaScript展開運(yùn)算符用法及實(shí)際應(yīng)用詳解
展開運(yùn)算符是JavaScript中的語法糖,用三個(gè)點(diǎn)(...)表示,廣泛應(yīng)用于數(shù)組和對(duì)象的操作,本文介紹了其基本用法,如在數(shù)組和對(duì)象中的應(yīng)用,合并數(shù)組或?qū)ο?更新對(duì)象屬性等,還探討了展開運(yùn)算符的高級(jí)應(yīng)用,需要的朋友可以參考下2024-09-0950行代碼實(shí)現(xiàn)Webpack組件使用次數(shù)統(tǒng)計(jì)
這篇文章主要介紹了50行代碼實(shí)現(xiàn)Webpack組件使用次數(shù)統(tǒng)計(jì),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03echarts自定義tooltip中的內(nèi)容代碼示例
在ECharts中,通過formatter函數(shù)自定義圖例樣式,可以實(shí)現(xiàn)更靈活的圖表展示,滿足特定的視覺需求,這篇文章主要介紹了echarts自定義tooltip中內(nèi)容的相關(guān)資料,需要的朋友可以參考下2024-10-10