您所在的位置:小祥子 » 编程 » JavaScript » 正文

如何实现两个div等高效果

时间:2015-07-10 编辑:我是代码努力 来源:CnBlogs

如何实现两个div等高效果:
在网页实际应用中,可能需要动态的实现两个div的等高效果,当然不仅限于div,例如一个网页分为左右两栏,一栏的高度可能需要根据内容自适应,也就是说高度不是固定的,而另一栏需要和它保持高度一致,那么就需要动态的设置高度。
代码实例如下:

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="author" content="http://www.51texiao.cn/" />
<title>蚂蚁部落</title>
<style type="text/CSS">
#main
{
  width:400px;
  height:600px;
  overflow:hidden;
  margin:0px auto;
}
#left
{
  width:150px;
  height:400px;
  background-color:green;
  float:left;
}
#right
{
  width:150px;
  height:200px;
  background-color:red;
  float:right;
}
</style>
<script type="text/javascript">
window.onload=function()
{
  var left=document.getElementById("left");
  var right=document.getElementById("right");
  right.style.height=left.offsetHeight+"px";
}
</script> 
</head>
<body>
  <div id="main">
    <div id="left"></div>
    <div id="right"></div>
  </div>
</body>
</html>

以上代码可以将右边的div高度跟随左边div的高度变化,下面就简单介绍一下如何实现次效果:
一.实现原理:
那就是获取左边的div的高度,然后再将此高度赋值给右边的div,这样就实现了两个div高度相等的效果。
二.代码注释:
1.window.onload=function(){},为window.onload绑定事件处理函数。
2.var left=document.getElementById("left"),获取左边div对象。
3.var right=document.getElementById("right"),获取右边div对象。
4.right.style.height=left.offsetHeight+"px",这一句是关键,下面分解介绍:
right.style.height可用来获取或者设置相应对象的高度。值是带有px单位的字符串类型。
left.offsetHeight可以获得对象的占用高度,等于padding+border+height属性值之和,返回值是数值类型。

原文地址是:http://www.51texiao.cn/javascriptjiaocheng/2015/0405/134.html

关键词:div 效果