更新時間:2021-11-26 10:38:29 來源:動力節(jié)點 瀏覽1073次
公共樣式部分
html * {
margin: 0;
padding: 0;
}
.layout {
margin-bottom: 20px;
}
.layout article {
width: 100%;
}
.layout article > div {
min-height: 100px;
}
.layout article .left {
width: 300px;
background: red;
}
.layout article .center {
background: orange;
}
.layout article .right {
width: 300px;
background: blue;
}
float布局
<!-- 浮動布局 -->
<section class="layout float">
<style>
.layout.float .left {
float: left;
}
.layout.float .right {
float: right;
}
</style>
<article class="left-center-right">
<div class="left"></div>
<div class="right"></div>
<div class="center">
<h2>這是float布局</h2>
<p>這是一段文字</p>
<p>這是一段文字</p>
</div>
</article>
</section>
absolute布局
<!-- 定位布局 -->
<section class="layout absolute">
<style>
.layout.absolute .left-center-right > div {
position: absolute;
}
.layout.absolute .left {
left: 0;
}
.layout.absolute .center {
left: 300px;
right: 300px;
}
.layout.absolute .right {
right: 0;
}
</style>
<article class="left-center-right">
<div class="left"></div>
<div class="center">
<h2>這是absolute布局</h2>
<p>這是一段文字</p>
<p>這是一段文字</p>
</div>
<div class="right"></div>
</article>
</section>
flex布局
<!-- flex布局 -->
<section class="layout flex">
<style>
.layout.flex {
margin-top: 140px;
}
.layout.flex .left-center-right{
display: flex;
}
.layout.flex .center {
flex: 1;
}
</style>
<article class="left-center-right">
<div class="left"></div>
<div class="center">
<h2>這是flex布局</h2>
<p>這是一段文字</p>
<p>這是一段文字</p>
</div>
<div class="right"></div>
</article>
</section>
table布局
<!-- table布局 -->
<section class="layout table">
<style>
.layout.table .left-center-right {
display: table;
height: 100px;
}
.layout.table .left-center-right > div{
display: table-cell;
}
</style>
<article class="left-center-right">
<div class="left"></div>
<div class="center">
<h2>這是table布局</h2>
<p>這是一段文字</p>
<p>這是一段文字</p>
</div>
<div class="right"></div>
</article>
</section>
grid布局
<!-- grid布局 -->
<section class="layout grid">
<style>
.layout.grid .left-center-right {
display: grid;
grid-template-columns: 300px auto 300px;
}
</style>
<article class="left-center-right">
<div class="left"></div>
<div class="center">
<h2>這是grid布局</h2>
<p>這是一段文字</p>
<p>這是一段文字</p>
</div>
<div class="right"></div>
</article>
</section>
1.float布局的兼容性比較好。浮動元素父元素還存在高度塌陷問題,解決方法: 父元素生成一個BFC。
2.absolute布局的有點是簡單直接,兼容性好。缺點,脫離了文檔流。
3.flex布局的優(yōu)點,布局簡單、靈活,移動端友好;缺點是ie8以下不兼容。
4.table布局的優(yōu)點是兼容性好,有時候布局相對簡單。缺點是它是對TABLE標簽的不正規(guī)使用,一直以來被大家所詬病。當(dāng)需要內(nèi)容高度不一致時并不適應(yīng)。
5.grid布局優(yōu)點,是第一個基于二維方向的布局模塊。它是第一個基于網(wǎng)格的原生布局系統(tǒng)。缺點是對低版本瀏覽器兼容性不好。
通過上述介紹相信大家對CSS網(wǎng)頁布局已經(jīng)有所了解,大家要是想了解更多相關(guān)知識,可以關(guān)注一下動力節(jié)點的Java在線學(xué)習(xí),里面的課程全面細致,從入門到精通,相信對大家的學(xué)習(xí)會有所幫助。