成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

CSS三欄布局的四種方法

RobinQu / 3136人閱讀

摘要:浮動代碼如下注意元素次序代碼如下左欄左浮動中間自適應(yīng)右欄右浮動這種方式代碼足夠簡潔與高效,也容易理解后記四種方法其實只有圣杯布局和雙飛翼布局較難理解,但實際上理解了圣杯布局,雙飛翼布局自然就理解了。

前言

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

原文地址:CSS三欄布局的四種方法

知乎專欄&&簡書專題:前端進擊者(知乎)&&前端進擊者(簡書)

博主博客地址:Damonare的個人博客

年華一去不復(fù)返,事業(yè)放棄再難成。

正文

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

1.絕對定位法

HTML代碼如下:

Left
Main
Right

CSS代碼如下:

//簡單的進行CSS reset
body,html{
    height:100%;
    padding: 0px;
    margin:0px;
}
//左右絕對定位
.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 100px 200px 0px;
    height:100%;
    background: blue;
}

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

2. 圣杯布局

HTML代碼如下:

//注意元素次序
Main
Left
Right

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è)左中右向左浮動,因為中間100%,左層和右層根本沒有位置上去

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

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

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

雙飛翼布局

HTML代碼如下:

Main
Left
Right

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;
}

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

4. 浮動

HTML代碼如下:

//注意元素次序
Left
Right
Main

CSS代碼如下:

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

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

后記

四種方法其實只有圣杯布局和雙飛翼布局較難理解,但實際上理解了圣杯布局,雙飛翼布局自然就理解了。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/115401.html

相關(guān)文章

  • 幾種常見的CSS布局

    摘要:本文概要本文將介紹如下幾種常見的布局其中實現(xiàn)三欄布局有多種方式,本文著重介紹圣杯布局和雙飛翼布局。借助等高布局正負可解決,下文會介紹雙飛翼布局特點同樣也是三欄布局,在圣杯布局基礎(chǔ)上進一步優(yōu)化,解決了圣杯布局錯亂問題,實現(xiàn)了內(nèi)容與布局的分離。 本文概要 本文將介紹如下幾種常見的布局: showImg(https://segmentfault.com/img/remote/14600000...

    FuisonDesign 評論0 收藏0
  • 幾種常見的CSS布局

    摘要:本文概要本文將介紹如下幾種常見的布局其中實現(xiàn)三欄布局有多種方式,本文著重介紹圣杯布局和雙飛翼布局。借助等高布局正負可解決,下文會介紹雙飛翼布局特點同樣也是三欄布局,在圣杯布局基礎(chǔ)上進一步優(yōu)化,解決了圣杯布局錯亂問題,實現(xiàn)了內(nèi)容與布局的分離。 本文概要 本文將介紹如下幾種常見的布局: showImg(https://segmentfault.com/img/remote/14600000...

    andot 評論0 收藏0
  • 幾種常見的CSS布局

    摘要:本文概要本文將介紹如下幾種常見的布局其中實現(xiàn)三欄布局有多種方式,本文著重介紹圣杯布局和雙飛翼布局。借助等高布局正負可解決,下文會介紹雙飛翼布局特點同樣也是三欄布局,在圣杯布局基礎(chǔ)上進一步優(yōu)化,解決了圣杯布局錯亂問題,實現(xiàn)了內(nèi)容與布局的分離。 本文概要 本文將介紹如下幾種常見的布局: showImg(https://segmentfault.com/img/remote/14600000...

    荊兆峰 評論0 收藏0
  • css - 收藏集 - 掘金

    摘要:絕對底部前端掘金來自國外的設(shè)計達人,純,可以實現(xiàn)當正文內(nèi)容很少時,底部位于窗口最下面。有效解決圖片使用單位邊角缺失的問題前端掘金起因在移動端使用布局時圖片也需要用單位。 CSS 絕對底部 - 前端 - 掘金來自國外的設(shè)計達人,純CSS,可以實現(xiàn): 當正文內(nèi)容很少時,底部位于窗口最下面。當改變窗口高度時,不會出現(xiàn)重疊問題。甚至,創(chuàng)造該CSS的人還專門成立一個網(wǎng)站介紹這個CSS底部布局方案...

    phpmatt 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<