问一个css的问题,position相关
<style>
	#main {
		height: 100px;
		width: 100px;
		overflow: auto;
	}
	#child1 {
		height: 100px;
		width: 50px;
		border: 2px solid red;
	}
	#child2 {
		border: 2px solid green;
		height: 100px;
		width: 50px;
		position: relative;
		top: -100px;
	}
</style>
<div id='main'>
	<div id='child1'>
	</div>
	<div id='child2'>
	</div>
</div>
主div使用了overflow: auto;
子div1很普通
子div2使用relative向上偏移
效果如图1所示

但是当滚动条向下是就会出现大量空白
效果如图2所示

因为这个空白是原来div2的位置,因为向上浮动了,所以留下了空白
请问能去掉空白吗?
限制:不能更改main的尺寸和overflow,不同iframe来替代main
------解决方案--------------------<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
    #main {
        height: 100px;
        width: 100px;
        overflow: auto;
    }
    #child1 {
        height: 100px;
        width: 50px;
        border: 2px solid red;
    }
    #child2 {
        border: 2px solid green;
        height: 100px;
        width: 50px;
        margin-top: -100px;
    }
 
</style>
</head>
<body>
<div id='main'>
    <div id='child1'>
 
    </div>
    <div id='child2'>
 
    </div>
</div>
</body>
</html>
这样试试