日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
圣杯布局和雙飛翼布局,你更喜歡那個(gè)布局?

作用

圣杯布局

HTML 結(jié)構(gòu)如此:

創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比葉縣網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式葉縣網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋葉縣地區(qū)。費(fèi)用合理售后完善,十多年實(shí)體公司更值得信賴。


組成頭部


中間部分自適應(yīng)

左邊欄固定寬度

右邊欄不顧寬度


組成尾部

CSS 樣式如此:

 body {
min-width: 700px;
}

header,
footer {
background: grey;
border: 1px solid #333;
text-align: center;
}

.left,
.middle,
.right {
position: relative;
float: left;
min-height: 130px;
}

.container {
padding: 0 220px 0 200px;
overflow: hidden;
}

.middle {
width: 100%;
background: red;
}

.left {
margin-left: -100%;
left: -200px;
width: 200px;
background: green;
}

.right {
margin-left: -220px;
right: -220px;
width: 220px;
background: blue
}

footer {
clear: both;
}

效果如此:

圣杯布局

代碼說(shuō)明:

  • 首先在容器 container 中給予 padding:0 220px 0 200px ,這一步是為了給兩邊固定寬預(yù)留位置。
  • 中間(middle)元素設(shè)置 width: 100%,它自然就自適應(yīng)了。
  • 設(shè)置左邊(left)元素 position: relative, left: -200px。這樣做是讓它做到左邊的固定位置,做到此時(shí),效果如下 。 圣杯布局接著用margin-left: -100%,讓其回到與中間部分一樣高的位置,這就是圣杯布局的關(guān)鍵margin-left:-100% 。 表示向左移動(dòng)整個(gè)屏幕的距離因?yàn)槿齻€(gè)元素都加了浮動(dòng),所以配合 margin-left: -100% 左邊容器就能與中間部分同高。
  • 同理,設(shè)置右邊(right)元素position: relative, right:-220px, margin-left: -220px 注意,這里的 margin-left 是 220px。為什么這個(gè)是220px,和它自身寬度一致注意 ,自身 margin-left 為負(fù)時(shí),就往左移動(dòng),等它等于自身高度時(shí)就“升格”到上一層,當(dāng)它等于 -100% 時(shí),這個(gè) 100% 表示的是中間部分的寬度,所以就固定在左邊了。

雙飛翼布局

有人說(shuō)“雙飛翼布局是玉伯大大提出來(lái)的,始于淘寶UED”,其效果和圣杯布局一樣,只是它把三欄布局比作一只鳥(niǎo),中間內(nèi)容部分分為三部分,左翅膀、中間、右翅膀。其技術(shù)關(guān)鍵在于它還有一層 div。

HTML 結(jié)構(gòu)如此:


組成頭部



中間部分自適

左邊欄固定寬度

右邊欄固定寬度



組成尾部

CSS 結(jié)構(gòu)如此:

body {
min-width: 700px;
}

header,
footer {
background: grey;
border: 1px solid #333;
text-align: center;
}

.left,
.right,
.main {
float: left;
min-height: 130px;
}


.main {
width: 100%;
background: red;
}

.main-inner {
margin: 0 220px 0 200px;
min-height: 130px;
}

.left {
margin-left: -100%;
width: 200px;
background: green;
}

.right {
margin-left: -220px;
width: 220px;
background: blue
}

footer {
clear: both;
}

效果如圣杯布局一致,不重復(fù)展示,它代碼的關(guān)鍵在于先構(gòu)建中間部分展示出,再通過(guò) margin-left 完成浮動(dòng)流。

思考:為什么會(huì)考三欄布局?

以前的布局難點(diǎn)就是三欄布局,而且三欄布局還能引出 BFC,BFC 的作用之一就是自適應(yīng)布局。而現(xiàn)在 flex: 1就能解決自適應(yīng)布局的問(wèn)題,所以這類考題已經(jīng)不多見(jiàn)了。

總結(jié)

以前一直擔(dān)心考這類破問(wèn)題,因?yàn)橥耆珱](méi)準(zhǔn)備過(guò)。除了一次考左邊固定寬,右邊自適應(yīng)外,就沒(méi)考過(guò) CSS 布局方面的問(wèn)題,大概是因?yàn)橐呀?jīng)過(guò)時(shí)了。

三欄布局兩種解決方法:

  • 圣杯布局 浮動(dòng) + margin-left + 自身相對(duì)定位。
  • 雙飛翼布局 浮動(dòng) + margin-left + 中間部分再包裹一層。

相同點(diǎn):浮動(dòng) 、margin-left

  • margin-left: -100% :左邊上升。
  • margin-left: -220px:右邊上升。

線上demo:

  • 圣杯布局。
  • 雙飛翼布局。

參考資料

  • CSS 布局,float+margin負(fù)值實(shí)現(xiàn)圣杯布局
  • CSS布局 -- 圣杯布局 & 雙飛翼布局

文章標(biāo)題:圣杯布局和雙飛翼布局,你更喜歡那個(gè)布局?
文章分享:http://www.dlmjj.cn/article/cciecse.html