此處與bootstrap3的中文文檔内容相一緻,主要是使得對bootstrap的内容進行一遍複習,以及日後再次查找資料的時候,進行使用
全局CSS樣式:
1.概論
使用bootstrap的過程中,需要将html檔案的基本格式設定未html5的格式。
<!DOCTYPE html>
<html lang="zh-CN">
...
</html>
2.移動裝置優先
bootstrap3關于基于移動裝置的方面已經是融合于架構之内的。也就是說是移動裝置優先的。
<meta name="viewport" content="width=device-width, initial-scale=1">
在移動裝置浏覽器上,通過為視口(viewport)設定 meta 屬性為
user-scalable=no
可以禁用其縮放(zooming)功能。這樣禁用縮放功能後,使用者隻能滾動螢幕,就能讓你的網站看上去更像原生應用的感覺。注意,這種方式我們并不推薦所有網站使用,還是要看你自己的情況而定!
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
3.布局容器
Bootstrap 需要為頁面内容和栅格系統包裹一個
.container
容器。我們提供了兩個作此用處的類。注意,由于
padding
等屬性的原因,這兩種 容器類不能互相嵌套。
.container
類用于固定寬度并支援響應式布局的容器。
<div class="container">
...
</div>
.container-fluid
類用于 100% 寬度,占據全部視口(viewport)的容器。
<div class="container-fluid">
...
</div>
2.栅格系統
Bootstrap 提供了一套響應式、移動裝置優先的流式栅格系統,随着螢幕或視口(viewport)尺寸的增加,系統會自動分為最多12列。它包含了易于使用的預定義類,還有強大的mixin 用于生成更具語義的布局。
1.簡介
栅格系統用于通過一系列的行(row)與列(column)的組合來建立頁面布局,你的内容就可以放入這些建立好的布局中。下面就介紹一下 Bootstrap 栅格系統的工作原理:
- “行(row)”必須包含在
(固定寬度)或.container
(100% 寬度)中,以便為其賦予合适的排列(aligment)和内補(padding)。.container-fluid
- 通過“行(row)”在水準方向建立一組“列(column)”。
- 你的内容應當放置于“列(column)”内,并且,隻有“列(column)”可以作為行(row)”的直接子元素。
- 類似
和.row
這種預定義的類,可以用來快速建立栅格布局。Bootstrap 源碼中定義的 mixin 也可以用來建立語義化的布局。.col-xs-4
- 通過為“列(column)”設定
屬性,進而建立列與列之間的間隔(gutter)。通過為padding
元素設定負值.row
進而抵消掉為margin
元素設定的.container
,也就間接為“行(row)”所包含的“列(column)”抵消掉了padding
。padding
- 負值的 margin就是下面的示例為什麼是向外突出的原因。在栅格列中的内容排成一行。
- 栅格系統中的列是通過指定1到12的值來表示其跨越的範圍。例如,三個等寬的列可以使用三個
來建立。.col-xs-4
- 如果一“行(row)”中包含了的“列(column)”大于 12,多餘的“列(column)”所在的元素将被作為一個整體另起一行排列。
- 栅格類适用于與螢幕寬度大于或等于分界點大小的裝置 , 并且針對小螢幕裝置覆寫栅格類。 是以,在元素上應用任何
栅格類适用于與螢幕寬度大于或等于分界點大小的裝置 , 并且針對小螢幕裝置覆寫栅格類。 是以,在元素上應用任何.col-md-*
不存在, 也影響大螢幕裝置。.col-lg-*
2.栅格參數
超小螢幕 手機 (<768px) | 小螢幕 平闆 (≥768px) | 中等螢幕 桌面顯示器 (≥992px) | 大螢幕 大桌面顯示器 (≥1200px) | |
---|---|---|---|---|
栅格系統行為 | 總是水準排列 | 開始是堆疊在一起的,當大于這些門檻值時将變為水準排列C | ||
最大寬度 | None (自動) | 750px | 970px | 1170px |
類字首 | | | | |
列(column)數 | 12 | |||
最大列(column)寬 | 自動 | ~62px | ~81px | ~97px |
槽(gutter)寬 | 30px (每列左右均有 15px) | |||
可嵌套 | 是 | |||
偏移(Offsets) | 是 | |||
列排序 | 是 |
這裡需要注意的是:類字首,這個嚴格控制了螢幕的大小所使用的布局。
xs sm md lg 這些都是比較重要的
3.執行個體:多餘的列将另起一行
如果在一個
.row
内包含的列(column)大于12個,包含多餘列(column)的元素将作為一個整體單元被另起一行排列。
4.響應式列重置
在某些門檻值時,某些列可能會出現比别的列高的情況。為了克服這一問題,建議聯合使用
.clearfix
和 響應式工具類。
5.列偏移
使用
.col-md-offset-*
類可以将列向右側偏移。這些類實際是通過使用
*
選擇器為目前元素增加了左側的邊距(margin)。例如,
.col-md-offset-4
類将
.col-md-4
元素向右側偏移了4個列(column)的寬度。
6.嵌套類
為了使用内置的栅格系統将内容再次嵌套,可以通過添加一個新的
.row
元素和一系列
.col-sm-*
元素到已經存在的
.col-sm-*
元素内。被嵌套的行(row)所包含的列(column)的個數不能超過12(其實,沒有要求你必須占滿12列)。
7.列排序
通過使用
.col-md-push-*
和
.col-md-pull-*
類就可以很容易的改變列(column)的順序。
8.代碼示範
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<link rel="stylesheet" href="css/bootstrap.min.css" />
<style>
div{
border: 1px solid red;
}
</style>
</head>
<body>
<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>
<br /><br /><br />
<div class="row">
<div class="col-sm-9">
Level 1: .col-sm-9
<div class="row">
<div class="col-xs-8 col-sm-6">
Level 2: .col-xs-8 .col-sm-6
</div>
<div class="col-xs-4 col-sm-6">
Level 2: .col-xs-4 .col-sm-6
</div>
</div>
</div>
</div>
<br /><br /><br />
<div class="row">
<div class="col-xs-6 col-sm-4">
dddddddddddddddds
</div>
<div class="col-xs-6 col-sm-4">
dsssdddddddddddddddds
</div>
<div class="col-xs-6 col-xs-offset-3 col-sm-4 col-sm-offset-0">
ddddddddddddddddds
</div>
</div>
<br /><br /><br />
<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>
<br /><br /><br />
<div class="row">
<div class="col-sm-5 col-md-6">.col-sm-5 .col-md-6</div>
<div class="col-sm-5 col-sm-offset-2 col-md-6 col-md-offset-0">.col-sm-5 .col-sm-offset-2 .col-md-6 .col-md-offset-0</div>
</div>
<div class="row">
<div class="col-sm-6 col-md-5 col-lg-6">.col-sm-6 .col-md-5 .col-lg-6</div>
<div class="col-sm-6 col-md-5 col-md-offset-2 col-lg-6 col-lg-offset-0">.col-sm-6 .col-md-5 .col-md-offset-2 .col-lg-6 .col-lg-offset-0</div>
</div>
<br /><br /><br /><br />
<div class="row">
<div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3 Resize your viewport or check it out on your phone for an example. </div>
<div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
<!-- Add the extra clearfix for only the required viewport -->
<div class="clearfix visible-xs-block"></div>
<div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
<div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
</div>
<br /><br /><br /><br />
<div class="row">
<div class="col-xs-9">.col-xs-9</div>
<div class="col-xs-4">.col-xs-4<br>Since 9 + 4 = 13 > 12, this 4-column-wide div gets wrapped onto a new line as one contiguous unit.</div>
<div class="col-xs-6">.col-xs-6<br>Subsequent columns continue along the new line.</div>
</div>
<br /><br /><br /><br />
<div class="container-fluid">
<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>
<br /><br /><br />
<!-- Stack the columns on mobile by making one full-width and the other half-width -->
<div class="row">
<div class="col-xs-12 col-md-8">.col-xs-12 .col-md-8</div>
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
</div>
<!-- Columns start at 50% wide on mobile and bump up to 33.3% wide on desktop -->
<div class="row">
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
</div>
<!-- Columns are always 50% wide, on mobile and desktop -->
<div class="row">
<div class="col-xs-6">.col-xs-6</div>
<div class="col-xs-6">.col-xs-6</div>
</div>
<br /><br /><br /><br />
<div class="row">
<div class="col-xs-12 col-sm-6 col-md-8">.col-xs-12 .col-sm-6 .col-md-8</div>
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
</div>
<div class="row">
<div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
<div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
<!-- Optional: clear the XS cols if their content doesn't match in height -->
<div class="clearfix visible-xs-block">ssssssssss</div>
<div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
</div>
<script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
</body>
</html>
轉載于:https://www.cnblogs.com/strator/p/7513136.html