Div布局实现Div等高的方法

本文介绍了使用CSS和JavaScript实现元素等高的两种方法:一种是利用CSS的边框和浮动属性来模拟子元素背景,另一种是借助JavaScript动态调整多个并排元素的高度以达到视觉上的一致。

一、用CSS实现

 

1、通过父Div的边框模拟子Div的背景实现。

 

<%--设置父Div的右边框宽度等于右边Div的宽度--%> <div style="border-right: solid 180px gray;background:black; color: white;"> <div style="width: 180px; float: right; position: relative; right: -180px;"> 右边的 </div> 左边的 <br /> <br /> <br /> <br /> <br /> <br /> <br /> <br /> <br /> <br /> <br /> <br /> <div style="clear: both; height: 0; overflow: hidden;"> </div> </div>


2、隐藏容器溢出”、“正内补丁”和“负外补丁”结合的方法实现。

 

<style type="text/css"> * { margin:0px; padding:0px; } body { width:900px; height:auto; margin:0px auto; font-size:12px; font-family:Arial; } #header { width:900px; height:100px; background-color:gray; } #content { width:880px; overflow:hidden; padding:3px 10px 0px 10px; margin:0px 0px 3px 0px; } #content-left { width:280px; float:left; background-color:gray; } #content-right { width:590px; float:left; margin-left:5px; background-color:green; } #content-left,#content-right { margin-bottom:-10000px; padding-bottom:10000px; } #footer { width:900px; height:60px; background-color:orange; } </style>

 

 

<div id="header"></div> <div id="content"> <div id="content-left"> <p> left</p> <p> left</p> <p> left</p> <p> left</p> <p> left</p> <p> left</p> <p> left</p> <p> left</p> <p> left</p> <p> left</p> <p> left</p> <p> left</p> <p> left</p> <p> left</p> </div> <div id="content-right"> right</div> </div> <div id="footer"></div>


二、javascript实现

 

<style type="text/css"> #a,#b,#c,#d { width: 185px; float:left; border: 1px solid #96C2F1; margin-right:5px; } </style> <script type="text/javascript"> <!-- function autoHeight() { if (arguments.length > 1) { var x = arguments.length; var elements=[]; for (i=0; i<x; i++) { elements.push(document.getElementById(arguments[i]).scrollHeight); } var max = elements[0]; for(i=0; i<x; i++) { if(max < elements[i]) { max = elements[i]; } } for (i=0; i<x; i++) { document.getElementById(arguments[i]).style.height = max+"px"; } } } //--> </script>

 

<div id="wrap"> <div id="a"> a<br /> a<br /> a<br /> a</div> <div id="b"> a<br /> a<br /> a<br /> a<br /> a</div> <div id="c"> a<br /> a<br /> a<br /> a<br /> a<br /> a<br /> a<br /> a<br /> a<br /> a<br /> a<br /> a<br /> a</div> <div id="d"> a<br /> a</div> <div style="clear: both;"> </div> </div> <script type="text/javascript"> <!-- window.onload = function() { alert("请先留意没有等高的显示情况/n确定后自动等高处理!"); autoHeight("a","b","c","d"); } //--> </script>

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值