日本一卡精品视频免费丨国产午夜片无码区在线播放丨国产精品成人久久久久久久丨国产亚洲日韩av在线播放不卡丨亚洲日韩av无码

CSS實(shí)現(xiàn)三欄布局的四種方法示例

2017/2/13 8:25:24   閱讀:1840    發(fā)布者:1840

前言

其實(shí)不管是三欄布局還是兩欄布局都是我們在平時(shí)項(xiàng)目里經(jīng)常使用的,
也許你不知道什么事三欄布局什么是兩欄布局但實(shí)際已經(jīng)在用,
或許你知道三欄布局的一種或兩種方法,但實(shí)際操作中也只會(huì)
依賴那某一種方法,本文具體的介紹了三欄布局的四種方法,并介紹了它的使用場景。

所謂三欄布局就是指頁面分為左中右三部分然后對(duì)中間一部分做自適應(yīng)的一種布局方式。

1.絕對(duì)定位法

HTML代碼如下:

<div class="left">Left</div> 
<div class="main">Main</div> 
<div class="right">Right</div>

 

CSS代碼如下:
//簡單的進(jìn)行CSS reset 
body,html{ 
    height:100%; 
    padding: 0px; 
    margin:0px; 
} 
//左右絕對(duì)定位 
.left,.right{ 
    position: absolute; 
    top:0px; 
    background: red; 
    height:100%; 
} 
.left{ 
    left:0; 
    width:100px; 
} 
.right{ 
    right:0px; 
    width:200px; 
} 
//中間使用margin空出左右元素所占據(jù)的空間 
.main{ 
    margin:0px 200px 0px 100px; 
    height:100%; 
    background: blue; 
}

該方法有個(gè)明顯的缺點(diǎn),就是如果中間欄含有最小寬度限制,或是含有寬度
的內(nèi)部元素,當(dāng)瀏覽器寬度小到一定程度,會(huì)發(fā)生層重疊的情況。

2. 圣杯布局

HTML代碼如下:

//注意元素次序 
<div class="main">Main</div> 
<div class="left">Left</div> 
<div class="right">Right</div>

CSS代碼如下:

//習(xí)慣性的CSS reset 
body,html{ 
    height:100%; 
    padding: 0; 
    margin: 0 
} 
//父元素body空出左右欄位 
body { 
    padding-left: 100px; 
    padding-right: 200px; 
} 
//左邊元素更改 
.left { 
    background: red; 
    width: 100px; 
    float: left; 
    margin-left: -100%; 
    position: relative; 
    left: -100px; 
    height: 100%; 
} 
//中間部分 
.main { 
    background: blue; 
    width: 100%; 
    height: 100%; 
    float: left; 
} 
//右邊元素定義 
.right { 
    background: red; 
    width: 200px; 
    height: 100%; 
    float: left; 
    margin-left: -200px; 
    position: relative; 
    right: -200px; 
}

相關(guān)解釋如下:

      (1)中間部分需要根據(jù)瀏覽器寬度的變化而變化,所以要用100%,
這里設(shè)左中右向左浮動(dòng),因?yàn)橹虚g100%,左層和右層根本沒有位置上去

      (2)把左層margin負(fù)100后,發(fā)現(xiàn)left上去了,因?yàn)樨?fù)到出窗口沒位置了,只能往上挪

      (3)按第二步這個(gè)方法,可以得出它只要挪動(dòng)窗口寬度那么寬
就能到最左邊了,利用負(fù)邊距,把左右欄定位

      (4)但由于左右欄遮擋住了中間部分,于是采用相對(duì)定位方法,
各自相對(duì)于自己把自己挪出去,得到最終結(jié)果

3. 雙飛翼布局

HTML代碼如下:

<div class="main"> 
    <div class="inner"> 
        Main 
    </div> 
</div> 
<div class="left">Left</div> 
<div class="right">Right</div>

CSS代碼如下:

//CSS reset 
body,html { 
    height:100%; 
    padding: 0; 
    margin: 0 
} 
body { 
    /*padding-left:100px;*/ 
    /*padding-right:200px;*/ 
} 
.left { 
    background: red; 
    width: 100px; 
    float: left; 
    margin-left: -100%; 
    height: 100%; 
    /*position: relative;*/ 
    /*left:-100px;*/ 
} 
.main { 
    background: blue; 
    width: 100%; 
    float: left; 
    height: 100%; 
} 
.right { 
    background: red; 
    width: 200px; 
    float: left; 
    margin-left: -200px; 
    height: 100%; 
    /*position:relative;*/ 
    /*right:-200px;*/ 
} 
//新增inner元素 
.inner { 
    margin-left: 100px; 
    margin-right: 200px; 
}

圣杯布局實(shí)際看起來是復(fù)雜的后期維護(hù)性也不是很高,在淘寶UED的探討下,
出來了一種新的布局方式就是雙飛翼布局,代碼如上。增加多一個(gè)div就可以
不用相對(duì)布局了,只用到了浮動(dòng)和負(fù)邊距。和圣杯布局差異的地方已經(jīng)被注釋。

4. 浮動(dòng)

HTML代碼如下:

//注意元素次序 
<div class="left">Left</div> 
<div class="right">Right</div> 
<div class="main">Main</div>

CSS代碼如下:

//CSS reset 
body,html { 
    height:100%; 
    padding: 0; 
    margin: 0 
} 
//左欄左浮動(dòng) 
.left { 
    background: red; 
    width: 100px; 
    float: left; 
    height: 100%; 
} 
//中間自適應(yīng) 
.main { 
    background: blue; 
    height: 100%; 
    margin:0px 200px 0px 100px; 
} 
//右欄右浮動(dòng) 
.right { 
    background: red; 
    width: 200px; 
    float: right; 
    height: 100%; 
}

這種方式代碼足夠簡潔與高效,也容易理解

總結(jié)

以上就是這篇文章的全部內(nèi)容了,四種方法其實(shí)只有圣杯布局和雙飛翼布局較難理解,
但實(shí)際上理解了圣杯布局,雙飛翼布局自然就理解了,希望本文的內(nèi)容對(duì)大
家的學(xué)習(xí)或者工作能帶來一定的幫助,如有疑問大家可以多多交流。

主站蜘蛛池模板: 亚洲欧美国产欧美色欲| 偷看农村妇女牲交| 强行糟蹋人妻hd中文| 小12箩利洗澡无码视频网站| 日韩干| 久久久久青草大香综合精品| 国产成人精品视频一区二区不卡 | 国产精品va无码免费| 久久久综合九色综合88| 欧美人做人爱a全程免费| 国产午夜福利在线机视频| 韩国一级淫一片免费放| 小12萝8禁在线喷水观看| 亚色中文成人yase999co| 亚洲日韩久久综合中文字幕| 久久亚洲精品高潮综合色a片| 91成人免费| 国产精品无码aⅴ嫩草| 高潮喷水无码av亚洲| 国产偷亚洲偷欧美偷精品| 曰批免费视频播放免费直播| 欧美牲交videossexeso欧美 | 久久精品手机观看| 国产尤物精品福利视频| 尹人香蕉久久99天天拍| 少妇饥渴偷公乱第32章| 成人小说亚洲一区二区三区| 国产做爰xxxⅹ高潮视频在线| 老司机午夜精品视频资源| 97一区二区三区| 大地资源中文在线观看官网第二页| 亚洲乱码日产精品bd在观看| 精品国产一区二区三区色欲| 国产91在线免费| 色www视频永久免费| 日韩一区精品视频一区二区| 黑人vs日本人ⅹxxxhd| 亚洲色偷精品一区二区三区 |