IE下设置float后margin加倍问题
在进行页面布局时,经常会用到float,但使用了float后,在IE下margin会出现加倍的问题,我一直是用hack的方法,但最近做个页面时,发现用hack了,样子和在FF下,还是不一样,于是就网上查找了下,加个display:inline;就可以解决了,这样IE和FF下就都一样了。
举例:
CSS,如果这里不使用display:inline: 在IE下会出现加倍问题
1 .div_float{float:left;width:180px;height:100px;margin:10px;display:inline;border:1px solid #c0de98;}
HTML
1 <div style="width:200px;height:200px;border:1px solid #8BC104;">
2 <div class="div_float"></div>
3 </div>
2 <div class="div_float"></div>
3 </div>
在这里顺便再说个IE和FF下的不同,以上面代码为例,当使用了float,而且父div没有指定高度,在FF下,父div在子div的上方,而不是IE里那样子div在父div内,解决办法,加个div然后用clear:both就OK了
1 <div style="width:200px;border:1px solid #8BC104;">
2 <div class="div_float"></div>
3 <div style="clear:both;"></div>
4 </div>
2 <div class="div_float"></div>
3 <div style="clear:both;"></div>
4 </div>