第3節(jié) Bootstrap5的斷點(diǎn)與容器
響應(yīng)式網(wǎng)站設(shè)計(jì)中的Bootstrap5的斷點(diǎn)與容器的使用
1、Bootstrap5的斷點(diǎn)
1.1 移動(dòng)優(yōu)先
說到移動(dòng)優(yōu)先,先要提一下響應(yīng)式設(shè)計(jì),響應(yīng)式界面就是設(shè)計(jì)一個(gè)頁面能夠適應(yīng)不同的設(shè)備,響應(yīng)式設(shè)計(jì)利用媒體查詢等技術(shù)實(shí)現(xiàn)不同設(shè)備/窗口下的樣式適配,也就是說它會根據(jù)你使用的不同設(shè)備展示不同的頁面排版給用戶。
這個(gè)實(shí)現(xiàn)起來就是根據(jù)html5有個(gè)媒體查詢技術(shù),可以獲取屏幕寬度,然后利用css,在不同的寬度下使用不同的css效果即可。
而移動(dòng)優(yōu)先就是先開發(fā)出一個(gè)適合移動(dòng)客戶端的界面,然后在此基礎(chǔ)上再去根據(jù)pc端的情況適配相應(yīng)的樣式,與之相反的設(shè)計(jì)思路就是PC優(yōu)先,選用何種方式根據(jù)你的習(xí)慣和哪種用戶占得比例多來考慮。現(xiàn)在一般都提倡移動(dòng)優(yōu)先。
1.2 Bootstrap的斷點(diǎn)
所謂的斷點(diǎn),就是指的臨界點(diǎn)。 這個(gè)表格及內(nèi)容一定要記住,另外特別是那個(gè)類中綴,經(jīng)常會用到。 這個(gè)在下一節(jié)布局中會詳細(xì)演示,在此只需多看幾遍即可,記不住也沒關(guān)系,到時(shí)候不是可以過來查嘛。
| 斷點(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 |
從上面表格可以看出,通過5個(gè)斷點(diǎn),將屏幕分成6種大小型號,在這里讀者只需要先了解一下即可,在第三節(jié)柵格系統(tǒng)的時(shí)候會進(jìn)一步介紹。
2、容器(Containers)
2.1 容器就是用來盛東西的
容器是Bootstrap中最基本的布局元素,在使用默認(rèn)網(wǎng)格系統(tǒng)設(shè)計(jì)響應(yīng)式網(wǎng)站時(shí)是必需的,容器的最大寬度能夠根據(jù)瀏覽器的寬度變化而改變。容器的使用非常簡單,直接將容器標(biāo)簽放在body內(nèi)層即可,通常來說,一個(gè)頁面只需要一個(gè)容器標(biāo)簽,將其他所有可視內(nèi)容包裹進(jìn)去即可,但在本文演示中,為了對比不同容器的效果,所以在一個(gè)頁面放置了多個(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)相對應(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 簡單舉例
對于2.2的表格,部分朋友可能看的不是很明白,我簡單舉幾個(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)
容器寬度是跳變的,是不平滑的,在每兩個(gè)斷點(diǎn)之間的區(qū)間上寬度是相同的
容器在斷點(diǎn)前是無邊距的,在斷點(diǎn)后是有邊距的,768px的屏幕,容器寬度是720px。
默認(rèn)容器(container)與小容器(container-sm)目前來看是等效的,但不排除下一步會有更改。
2.4 容器隨瀏覽器寬度變化演示代碼
下面是在不同瀏覽器寬度下的演示代碼,以及GIF效果圖,如果看不明白的話可以自己下載代碼研究一下,style部分是我為了設(shè)置容器背景顏色和各個(gè)容器設(shè)置間隔,以方便區(qū)分和查看而寫的,與容器本身無關(guān)。
2.4.1 演示動(dòng)畫
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>