三欄布局(雙飛翼布局和圣杯布局)

原文

博客原文

大綱

1泛范、三欄布局的引入
2让虐、基本思路及不同實(shí)現(xiàn)方式的區(qū)別
3、布局實(shí)例
3.1敦跌、圣杯布局
3.2澄干、雙飛翼布局

1逛揩、三欄布局的引入

關(guān)于三欄式布局,常規(guī)情況下麸俘,可以使用float實(shí)現(xiàn)辩稽,也可以使用relative來實(shí)現(xiàn)。
但是从媚,如果要求左右兩層定寬逞泄,中間層的寬度隨瀏覽器窗口寬度變化而變化,這種情況下拜效,就適合使用圣杯和雙飛翼布局喷众。通過對圣杯及雙飛翼布局學(xué)習(xí)之后,我認(rèn)為兩種布局的主旨是在html結(jié)構(gòu)中紧憾,使中間的主體層位于左右兩層的前面到千。
圣杯:指的是一種常用的網(wǎng)頁布局,他可以由現(xiàn)有的技術(shù)(無一沒有缺點(diǎn))來實(shí)現(xiàn)赴穗。所以找到一種最優(yōu)的實(shí)現(xiàn)方法就好像尋找難以捉摸的圣杯一樣憔四。
雙飛翼布局:是一種靈活的布局,始于淘寶UED般眉。如果把三欄布局比作一只大鳥了赵,可以把main看成是鳥的身體,sub和extra則是鳥的翅膀甸赃。這個布局的實(shí)現(xiàn)思路是柿汛,先把最重要的身體部分放好,然后再將翅膀移動到適當(dāng)?shù)牡胤讲憾浴J菍κケ季值囊环N改良络断。
其實(shí),圣杯布局和雙飛翼布局都是很早就出現(xiàn)了鸠窗,只是國外大學(xué)生/淘寶UED將其歸納起來妓羊,系統(tǒng)化了胯究。

任務(wù)效果圖
2稍计、基本思路及不同實(shí)現(xiàn)方式的區(qū)別

2.1、兩種布局的基本構(gòu)思為:首先讓中間層100%寬度占滿同一高度的空間裕循,在左右兩層被擠出中間層所在區(qū)域時臣嚣, 使用margin-left的負(fù)值將左右兩個層拉回與中間層同一高度的空間,接下來調(diào)整左右兩層到指定位置剥哑, 最后使用中間層的margin或padding屬性使中間層的內(nèi)容躲出左右兩層占住的顯示區(qū)硅则。

2.2、兩種布局的主要區(qū)別在于:圣杯布局采用一個父層包含中間株婴、左右三個子層怎虫,設(shè)置父層的padding值騰出左右兩層的顯示區(qū)暑认, 并對左右兩層使用relative和left、right值調(diào)整位置大审;雙飛翼采用中間蘸际、左右三層并列,再在中間層里設(shè)置一個子層徒扶, 設(shè)置中間層子層的margin值騰出左右兩層的顯示區(qū)粮彤,對左右兩層使用margin值即可調(diào)整位置;

3姜骡、布局實(shí)例
3.1导坟、圣杯布局
<html>
<head>
    <title>圣杯布局</title>
    <meta charset="utf-8">
    <style>
        header{
            width: 100%;
            height: 40px;
            background-color: darkseagreen;
        }
        #container{
            height:200px;
            padding: 0px 120px 0 140px;/*騰出寬度,即讓main中的內(nèi)容不會被左右的部分覆蓋*/
            background:green;
        }

        #main{
            height:200px;
            width: 100%;
            position: relative;
            background:orange;
            float:left;
        }
        #left{
            height:200px;
            width: 140px;
            margin-left: -100%;/*將left層拉回main層所在高度區(qū)域*/
            left: -140px;/*調(diào)整位置*/
            position: relative;
            background:blue;
            float:left;
        }
        #right{
            height:200px;
            width: 120px;
            margin-left: -120px;/*將right層拉回main層所在高度區(qū)域*/
            right: -120px;/*調(diào)整位置*/
            position: relative;
            background:yellow;
            float:left;
        }
        footer{
            width: 100%; 
            height: 30px;
            background-color: darkslategray;
        }
    </style>
</head>
<body>
<header>header</header>
<div id="container">
    <div id="main">main</div>
    <div id="left">left</div>
    <div id="right">right</div>
</div>
<footer>footer</footer>
</body>
</html>
3.2、雙飛翼布局
<html>
<head>
    <title>三欄布局</title>
    <meta charset="utf-8">
    <style>
        header{
            width: 100%;
            height: 40px;
            background-color: darkseagreen;
        }
        #main{
            width: 100%;
            height:200px;
            position: relative;
            float:left;
        }
        #main-inner{
            margin:0 120px 0 140px;/*讓main的內(nèi)容不被左右的內(nèi)容覆蓋*/
            background:red;
            height:100%;
        }
        #left{
            width: 140px;
            height:200px;
            margin-left: -100%;/*將left層拉回main層所在高度區(qū)域*/
            background:blue;
            float:left;
        }
        #right{
            width: 120px;
            height:200px;
            margin-left: -120px;/*將right層拉回main層所在高度區(qū)域*/
            background:yellow;
            float:left;
        }
        footer{
            width: 100%; 
            height: 30px;
            background-color: darkslategray;
            clear:both;/*避免因前面的元素浮動而上浮*/
        }
    </style>
</head>
<body>
<header>header</header>

<div id="main">
    <div id="main-inner">min-inner</div>
</div>
<div id="left">left</div>
<div id="right">right</div>

<footer>footer</footer>
</body>
</html>
參考網(wǎng)址

http://ife.baidu.com/note/detail/id/1025

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末圈澈,一起剝皮案震驚了整個濱河市惫周,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌康栈,老刑警劉巖闯两,帶你破解...
    沈念sama閱讀 211,042評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異谅将,居然都是意外死亡漾狼,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評論 2 384
  • 文/潘曉璐 我一進(jìn)店門饥臂,熙熙樓的掌柜王于貴愁眉苦臉地迎上來逊躁,“玉大人,你說我怎么就攤上這事隅熙』海” “怎么了?”我有些...
    開封第一講書人閱讀 156,674評論 0 345
  • 文/不壞的土叔 我叫張陵囚戚,是天一觀的道長酵熙。 經(jīng)常有香客問我,道長驰坊,這世上最難降的妖魔是什么匾二? 我笑而不...
    開封第一講書人閱讀 56,340評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮拳芙,結(jié)果婚禮上察藐,老公的妹妹穿的比我還像新娘。我一直安慰自己舟扎,他們只是感情好分飞,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,404評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著睹限,像睡著了一般譬猫。 火紅的嫁衣襯著肌膚如雪讯檐。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,749評論 1 289
  • 那天染服,我揣著相機(jī)與錄音裂垦,去河邊找鬼。 笑死肌索,一個胖子當(dāng)著我的面吹牛蕉拢,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播诚亚,決...
    沈念sama閱讀 38,902評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼晕换,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了站宗?” 一聲冷哼從身側(cè)響起闸准,我...
    開封第一講書人閱讀 37,662評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎梢灭,沒想到半個月后夷家,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,110評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡敏释,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年库快,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片钥顽。...
    茶點(diǎn)故事閱讀 38,577評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡义屏,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出蜂大,到底是詐尸還是另有隱情闽铐,我是刑警寧澤,帶...
    沈念sama閱讀 34,258評論 4 328
  • 正文 年R本政府宣布奶浦,位于F島的核電站兄墅,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏澳叉。R本人自食惡果不足惜隙咸,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,848評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望耳高。 院中可真熱鬧扎瓶,春花似錦所踊、人聲如沸泌枪。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽碌燕。三九已至误证,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間修壕,已是汗流浹背愈捅。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留慈鸠,地道東北人蓝谨。 一個月前我還...
    沈念sama閱讀 46,271評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像青团,于是被迫代替她去往敵國和親譬巫。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,452評論 2 348