第3節(jié) Bootstrap5的斷點(diǎn)與容器
響應(yīng)式網(wǎng)站設(shè)計(jì)中的Bootstrap5的斷點(diǎn)與容器的使用
1、Bootstrap5的斷點(diǎn)
1.1 移動(dòng)優(yōu)先
說(shuō)到移動(dòng)優(yōu)先,先要提一下響應(yīng)式設(shè)計(jì),響應(yīng)式界面就是設(shè)計(jì)一個(gè)頁(yè)面能夠適應(yīng)不同的設(shè)備,響應(yīng)式設(shè)計(jì)利用媒體查詢等技術(shù)實(shí)現(xiàn)不同設(shè)備/窗口下的樣式適配,也就是說(shuō)它會(huì)根據(jù)你使用的不同設(shè)備展示不同的頁(yè)面排版給用戶。
這個(gè)實(shí)現(xiàn)起來(lái)就是根據(jù)html5有個(gè)媒體查詢技術(shù),可以獲取屏幕寬度,然后利用css,在不同的寬度下使用不同的css效果即可。
而移動(dòng)優(yōu)先就是先開(kāi)發(fā)出一個(gè)適合移動(dòng)客戶端的界面,然后在此基礎(chǔ)上再去根據(jù)pc端的情況適配相應(yīng)的樣式,與之相反的設(shè)計(jì)思路就是PC優(yōu)先,選用何種方式根據(jù)你的習(xí)慣和哪種用戶占得比例多來(lái)考慮。現(xiàn)在一般都提倡移動(dòng)優(yōu)先。
1.2 Bootstrap的斷點(diǎn)
所謂的斷點(diǎn),就是指的臨界點(diǎn)。 這個(gè)表格及內(nèi)容一定要記住,另外特別是那個(gè)類中綴,經(jīng)常會(huì)用到。 這個(gè)在下一節(jié)布局中會(huì)詳細(xì)演示,在此只需多看幾遍即可,記不住也沒(méi)關(guān)系,到時(shí)候不是可以過(guò)來(lái)查嘛。
斷點(diǎn)類型 | 類中綴 | 分辨率 |
---|---|---|
X-Small(超小,一般是手機(jī)) | None | <576px |
Small(小,平板或者老筆記本) | sm | ≥576px |
Medium(中,窄屏電腦) | md | ≥768px |
Large(大,寬屏電腦) | lg | ≥992px |
Extra large(超大,寬屏電腦) | xl | ≥1200px |
Extra extra large(特大,高清電腦或廣告設(shè)備) | xxl | ≥1400px |
從上面表格可以看出,通過(guò)5個(gè)斷點(diǎn),將屏幕分成6種大小型號(hào),在這里讀者只需要先了解一下即可,在第三節(jié)柵格系統(tǒng)的時(shí)候會(huì)進(jìn)一步介紹。
2、容器(Containers)
2.1 容器就是用來(lái)盛東西的
容器是Bootstrap中最基本的布局元素,在使用默認(rèn)網(wǎng)格系統(tǒng)設(shè)計(jì)響應(yīng)式網(wǎng)站時(shí)是必需的,容器的最大寬度能夠根據(jù)瀏覽器的寬度變化而改變。容器的使用非常簡(jiǎn)單,直接將容器標(biāo)簽放在body內(nèi)層即可,通常來(lái)說(shuō),一個(gè)頁(yè)面只需要一個(gè)容器標(biāo)簽,將其他所有可視內(nèi)容包裹進(jìn)去即可,但在本文演示中,為了對(duì)比不同容器的效果,所以在一個(gè)頁(yè)面放置了多個(gè)容器。
2.2 Bootstrap容器的分類
Bootstrap的容器默認(rèn)分三種:
.container, 默認(rèn)容器,其寬度為在每個(gè)響應(yīng)斷點(diǎn)處之前,都是前一個(gè)斷點(diǎn)的最大寬度。
.container-fluid, 流式容器,始終占瀏覽器寬度的100%。
.container-{breakpoint}, 斷點(diǎn)容器,在到達(dá)該斷點(diǎn)前,其寬度始終占瀏覽器寬度的100%,在到達(dá)斷電后,其寬度始終為斷點(diǎn)最大寬度。其中斷點(diǎn)值與前面介紹的斷點(diǎn)相對(duì)應(yīng)。
以下表格展示了不同分辨率下的容器寬度。
Extra small <576px | Small ≥576px | Medium ≥768px | Large ≥992px | X-Large ≥1200px | XX-Large ≥1400px | |
---|---|---|---|---|---|---|
.container | 100% | 540px | 720px | 960px | 1140px | 1320px |
.container-sm | 100% | 540px | 720px | 960px | 1140px | 1320px |
.container-md | 100% | 100% | 720px | 960px | 1140px | 1320px |
.container-lg | 100% | 100% | 100% | 960px | 1140px | 1320px |
.container-xl | 100% | 100% | 100% | 100% | 1140px | 1320px |
.container-xxl | 100% | 100% | 100% | 100% | 100% | 1320px |
.container-fluid | 100% | 100% | 100% | 100% | 100% | 100% |
2.3 容器隨瀏覽器寬度變化解析
2.3.1 簡(jiǎn)單舉例
對(duì)于2.2的表格,部分朋友可能看的不是很明白,我簡(jiǎn)單舉幾個(gè)例子:
以container-md為例,當(dāng)屏幕寬度在小于768px的時(shí)候,容器寬度占屏幕寬度的100%,當(dāng)屏幕寬度大于768px且小于992px的時(shí)候,容器寬度始終是720px;而當(dāng)屏幕寬度在大于992px且小于1200px的時(shí)候,容器寬度始終是960px,依次類推,其他斷點(diǎn)容器和默認(rèn)容器也是一樣。
2.3.2 Bootstrap容器(不含流式容器)的幾個(gè)特點(diǎn)
容器寬度是跳變的,是不平滑的,在每?jī)蓚€(gè)斷點(diǎn)之間的區(qū)間上寬度是相同的
容器在斷點(diǎn)前是無(wú)邊距的,在斷點(diǎn)后是有邊距的,768px的屏幕,容器寬度是720px。
默認(rèn)容器(container)與小容器(container-sm)目前來(lái)看是等效的,但不排除下一步會(huì)有更改。
2.4 容器隨瀏覽器寬度變化演示代碼
下面是在不同瀏覽器寬度下的演示代碼,以及GIF效果圖,如果看不明白的話可以自己下載代碼研究一下,style部分是我為了設(shè)置容器背景顏色和各個(gè)容器設(shè)置間隔,以方便區(qū)分和查看而寫(xiě)的,與容器本身無(wú)關(guān)。
2.4.1 演示動(dòng)畫(huà)
2.4.2 演示源碼
<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="keywords" content=""> <meta name="description" content=""> <link href="bootstrap5/bootstrap.min.css" rel="stylesheet"> <title>不同寬度下容器寬度演示</title> <style> div{background-color: rgba(0, 0, 255, 0.178);padding: 10px;margin: 10px;} </style> </head> <body> <div> 默認(rèn)容器 </div> <div>container-sm 100% wide until small breakpoint</div> <div>container-md 100% wide until medium breakpoint</div> <div>container-lg 100% wide until large breakpoint</div> <div>container-xl 100% wide until extra large breakpoint</div> <div>container-xxl 100% wide until extra extra large breakpoint</div> <div> 流式容器 </div> <script src="bootstrap5/bootstrap.bundle.min.js" ></script> </body> </html>