实现三栏布局的这三种方式,面试笔试重点,一定掌握

本文介绍了实现三栏布局的三种常见方法:1) 圣杯布局和双飞翼布局,利用绝对定位实现,需要注意定位时的top值处理;2) 绝对定位方法,通过左右div的绝对定位来创建布局,但可能导致其他内容受影响;3) 自身浮动法,左右元素浮动,中间元素使用margin定位,布局稳定但受限于元素顺序。
摘要由CSDN通过智能技术生成

1.圣杯布局和双飞翼布局

绝对定位方法

左右div设置为绝对定位;左div设置为 left: 0px;右div设置为 right: 0px;

如:

	<!DOCTYPE html>
	<html lang="en">
	    <head>
	        <meta charset="UTF-8">
	        <title>Title</title>
	    </head>
	    <style>
	        html,body{
	            margin: 0px;
	            width: 100%;
	        }
	        h3{
	            height: 100px;
	            margin: 20px 0 0;
	        }
	        #left,#right{
	            width: 200px;
	            height: 200px;
	            background-color: #ffe6b8;
	            position: absolute;
	            top: 120px;
	        }
	        #left{
	            left: 0px;
	        }
	        #right{
	            right: 0px;
	        }
	        #center{
	            margin: 2px 210px;
	            background-color: #eee;
	            height: 200px;
	        }
	    </style>
	<body>
	    <h3>实现三列宽度自适应布局</h3>
	    <div id="left">我是左边</div>
	    <div id="right">我是右边</div>
	    <div id="center">我是中间</div>
	</body>
	</html>

该布局的不足:因为是绝对定位,如果页面上有其他的内容,top的值要小心处理,最好给CSS样式进行一个初始化。

3.使用自身浮动法

自身浮动法的原理就是使用对左右使用分别使用float:left和float:right,float使左右两个元素脱离文档流,中间元素正常在正常文档流中,使用margin指定左右外边距对其进行一个定位。

如下:

	<!DOCTYPE html>
	<html lang="en">
	    <head>
	        <meta charset="UTF-8">
	        <title>Title</title>
	    </head>
	    <style>
	        html,body{
	            margin: 0px;
	            width: 100%;
	        }
	        h3{
	            height: 100px;
	            margin: 20px 0 0;
	        }
	        #left,#right{
	            width: 200px;
	            height: 200px;
	            background-color: #ffe6b8;
	        }
	        #left{
	            float: left;
	        }
	        #right{
	            float: right;
	        }
	        #center{
	            margin: 2px 210px;
	            background-color: #eee;
	            height: 200px;
	        }
	    </style>
	<body>
	    <h3>实现三列宽度自适应布局</h3>
	    <div id="left">我是左边</div>
	    <div id="right">我是右边</div>
	    <div id="center">我是中间</div>
	</body>
	</html>

该布局法的好处是受外界影响小,但是不足是 三个元素的顺序,center一定要放在最后,这是和绝对定位不一样的地方,center占据文档流位置,所以一定要放在最后,左右两个元素位置没有关系。当浏览器窗口很小的时候,右边元素会被击倒下一行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值