只有IE8 FF 才会上下边距重叠,IE6 IE7 则不会,是吗??
<!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>  
<style>  
#my {width:400px; height:400px; border:1px solid #000;}  
#my1{width:200px; height:200px; margin:20px;background-color:#eee}  
#my2{width:100px; height:100px; margin:10px;background-color:red}  
</style>  
</head>  
<body>  
<div id="my">  
<div id="my1">  
	<div id="my2"> </div>  
</div>  
</div>  
</body>  
</html>  
------解决方案--------------------今天才看到这个问题,这是个比较典型的边界叠加兼容性的例子,也是因为盒模型解析差异造成的。
IE8我没有测试,但是在FF下,当给外层DIV设置1px以上的border后,一切问题将不复存在。
<style>  
#my {width:400px; height:400px; border:1px solid #000;}  
#my1{width:200px; height:200px; margin:20px; border:1px solid #000; background-color:#eee}  
#my2{width:100px; height:100px; margin:10px; border:1px solid #000; background-color:red}  
</style>
此外,还有一种有趣的现象,也是解决FF下边界叠加问题的办法,即设置内外层DIV的border为0的同时,给外层DIV加上overflow:hidden,如下:
<style>  
#my {width:400px; height:400px; border:1px solid #000;}  
#my1{width:200px; height:200px; margin:20px; border:0; background-color:#eee; overflow:hidden}  
#my2{width:100px; height:100px; margin:10px; border:0; background-color:red}  
</style>