CSS布局(五) 网页布局方式

来源:转载

网页实质是块与块之间的位置,块挨着块,块嵌套块,块叠着块。

三种关系:相邻,嵌套,重叠

 

下面介绍网页布局的常用几种方式

 

1.一列布局:

一般都是固定的宽高,设置margin : 0 auto来水平居中,用于界面显著标题的展示等;

 .main{ width: 200px; height: 100px; background-color: grey; margin: 0 auto; }
<div class="main"></div>

2.两列布局:

说起两列布局,最常见的就是使用float来实现。float浮动布局的缺点是浮动后会造成文本环绕等效果,以及需要及时清除浮动。

设置左左浮动,或设置左右浮动(这是需要确定父级元素的宽度)

如何父级元素没有设置高度,则需要设置overflow:hidden来清除浮动产生的影响

对于自己相邻元素清除浮动产生的影响用:clear:both;

 <div class="main"> <div class="left">left</div> <div class="right">right</div> </div>
 .main{ width: 400px; background: red; overflow: hidden; } .left{ background: yellow; float: left; } .right{ background: green; float: left; }

3.三列布局:

两侧定宽中间自适应

首先设置父级元素的宽度,可以左左右设置浮动。然后中间设置margin调整间距。 也可以都设置成左浮动,设置margin,调整间距。同样注意清除浮动的影响!

 <div class="main"> <div class="left">left</div> <div class="middle">middle</div> <div class="right">right</div> </div>
 .main{ width: 100%; background: red; overflow: hidden; } .left{ background: yellow; float: left; width: 100px; } .middle{ background: rosybrown; float: left; width: cacl(100%-200px); } .right{ background: green; float: right; width: 100px%; }

 或着为父级元素设置relative属性,再为子元素设置absolute属性,再分别定位,调间距。

<div class="parent" style="background-color: lightgrey;"> <div class="left" style="background-color: lightblue;"> <p>left</p> </div> <div class="center" style="background-color: pink;"> <p>center</p> <p>center</p> </div> <div class="right" style="background-color: lightgreen;"> <p>right</p> </div> </div>
<style>p{margin: 0;}.parent{position: relative;height:40px;}.left,.right,.center{position: absolute;}.left{left: 0;width:100px;}.right{right: 0;width: 100px;}.center{left: 120px; right: 120px;}</style>

4.混合布局:

在一列布局的基础上,保留top和foot部分,将中间的main部分改造成两列或三列布局,小的模块可以再逐级同理划分。

 

 <div class="top"></div> <div class="main"> <div class="left">left</div> <div class="right">right</div> </div> <div class="footer"></div>
 .top{ height: 100px; background: teal; } .footer{ height: 100px; background: wheat; } .main{ width: 100%; background: red; overflow: hidden; } .left{ background: yellow; float: left; width: 50%; } .right{ background: green; float: right; width: 50%; }

分享给朋友:
您可能感兴趣的文章:
随机阅读: