在IE8下如果父div没有设置border,而在子div里面设置了border的话,如果这时在子div里设置margin-top的话,是不起作用的,代码如下:
<div class="contain">
<div style="subMain"></div>
</div>
css样式:
.contain
{
200px;
height:200px;
margin-top:100px;
background-color:gray;
overflow:hidden;//解决方法一:在父div加这句就可以了
/*border:1px solid red;解决方法二:在父div里面设置边框*/
}
.subMain
{
100px;
height:100px;
margin-top:5px;
background-color:pink
}
在实际应用中,我们经常会用到在一个div里面包含ul和li的布局。如果把ul中的每一个li都margin-bottom的话,那么在IE8/ff下看就会有裂缝(解决:在ul里面加overflow:hidden);如果把ul用margin-bottom的话,那么在ff下也会有裂缝(解决:在div里面加overflow:hidden)
参考网址:http://hjtmx.blog.163.com/blog/static/346767572011111651030517/