響應(yīng)式 Web 設(shè)計(jì) – 網(wǎng)格視圖
響應(yīng)式 Web 設(shè)計(jì) -網(wǎng)格視圖
什么是網(wǎng)格視圖?
很多網(wǎng)頁(yè)都是基于網(wǎng)格設(shè)計(jì)的,這說(shuō)明網(wǎng)頁(yè)是按列來(lái)布局的。
使用網(wǎng)格視圖有助于我們?cè)O(shè)計(jì)網(wǎng)頁(yè)。這讓我們向網(wǎng)頁(yè)添加元素變的更簡(jiǎn)單。
響應(yīng)式網(wǎng)格視圖通常是 12 列,寬度為100%,在瀏覽器窗口大小調(diào)整時(shí)會(huì)自動(dòng)伸縮。
響應(yīng)式網(wǎng)格視圖
創(chuàng)建響應(yīng)式網(wǎng)格視圖
接下來(lái)我們來(lái)創(chuàng)建一個(gè)響應(yīng)式網(wǎng)格視圖。
首先確保所有的 HTML 元素都有box-sizing屬性且設(shè)置為border-box。
確保邊距和邊框包含在元素的寬度和高度間。
添加如下代碼:
* { box-sizing: border-box; }
* { box-sizing: border-box; }
查看更多 box-sizing 內(nèi)容請(qǐng)點(diǎn)擊:CSS3 box-sizing 屬性 。
以下實(shí)例演示了簡(jiǎn)單的響應(yīng)式網(wǎng)頁(yè),包含兩列:
實(shí)例
width:25%;
float:left;}
.main{
width:75%;
float:left;}
以上實(shí)例包含兩列。
12 列的網(wǎng)格系統(tǒng)可以更好的控制響應(yīng)式網(wǎng)頁(yè)。
首先我們可以計(jì)算每列的百分比: 100% / 12 列 = 8.33%。
在每列中指定 class,class="col-"用于定義每列有幾個(gè) span :
CSS:
.col-2{width:16.66%;}
.col-3{width:25%;}
.col-4{width:33.33%;}
.col-5{width:41.66%;}
.col-6{width:50%;}
.col-7{width:58.33%;}
.col-8{width:66.66%;}
.col-9{width:75%;}
.col-10{width:83.33%;}
.col-11{width:91.66%;}
.col-12{width:100%;}
所有的列向左浮動(dòng),間距(padding) 為 15px:
CSS:
float:left;
padding:15px;
border:1px solid red;}
每一行使用 <div> 包裹。所有列數(shù)加起來(lái)應(yīng)為 12:
<divclass="col-3">...</div>
<divclass="col-9">...</div>
</div>
列中行為左浮動(dòng),并添加清除浮動(dòng):
CSS:
content:"";
clear:both;
display:block;}
我們可以添加一些樣式和顏色,讓其更好看:
實(shí)例
background-color:#9933cc;
color:#ffffff;
padding:15px;}
.menu li{
padding:8px;
margin-bottom:7px;
background-color :#33b5e5;
color:#ffffff;
box-shadow:0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);}
.menu li:hover{
background-color:#0099cc;}