問答
1. 負邊距在讓元素產(chǎn)生偏移時和position: relative有什么區(qū)別?
答:
2. 使用負 margin 形成三欄布局有什么條件?
答:
3. 圣杯布局的原理是怎樣的? 簡述實現(xiàn)圣杯布局的步驟
答:
- 通過負邊距與父容器的
padding值來實現(xiàn)左右欄固定與中間主內(nèi)容自適應的布局
- HTML結(jié)構(gòu)
<!--html結(jié)構(gòu)-->
<div class="container">
<!--優(yōu)先渲染主內(nèi)容區(qū)-->
<div class="main"></div>
<div class="side-L"></div>
<div class="side-R"></div>
</div>
- CSS設置,
main side-L side-R設置浮動,container 清除浮動設置padding值,side-L設置負邊距100%移動到內(nèi)容區(qū)的左邊,side-R設置負邊距為自身的寬度,偏移到主內(nèi)容區(qū)的右邊。
/*css結(jié)構(gòu)*/
.container{
padding: 0 200px 0 200px; /*給左右邊欄預留出200px的寬度*/
}
.side-L,.main,.side-R{
float: left; /*實現(xiàn)三欄布局的要求*/
}
.side-L{
margin-left:-100%; /*移動父元素的100%的寬度*/
}
.side-R{
width: 200px;
margin-left: -200px; /*移動到主內(nèi)容區(qū)域的右方*/
}
DEMO
- CSS設置
.side-L .side-R 的position:relative屬性,.side-L 的 left: -200px,.side-R的left:200px,就可以實現(xiàn)左右兩欄固定,中間主要部分自適應的圣杯布局。
DEMO
4. 雙飛翼布局的原理? 實現(xiàn)步驟?
答:
- 和圣杯布局相像,在主內(nèi)容區(qū)添加一個包裹層浮動,然后內(nèi)容區(qū)設置外邊距即可,左右欄不必添加
position屬性設置。
<!--html結(jié)構(gòu)-->
<div class="container">
<!--優(yōu)先渲染主內(nèi)容區(qū)-->
<div class="m-wrapper">
<div class="main"></div>
</div>
<div class="side-L"></div>
<div class="side-R"></div>
</div>
- 設置
.main的外邊距值實現(xiàn)雙飛翼布局
DEMO
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。