今天在处理页面边距时,又遇到这个问题,float元素在设定margin-bottom时在IE6和IE7下会失效,之前就碰到过,但是用其他的办法调试会就过去了,今天遇到就觉得非得正规整理一下,下面请看实例:
#box{width:600px; background:#E6FECB; border:3px solid #933; overflow:hidden;}
.float_div{float:left; margin:20px; width:100px; height:100px; display:inline; background-color:#CCC;}
</style>
<div id="box">
<div class="float_div"></div>
<div class="float_div"></div>
<div class="float_div"></div>
</div>
其在IE6和IE7下显示效果为:

margin:20px; 只有margin-bottom失效了。
解决办法:只要在浮动的最后一个元素后面加上“<div class="clear"></div>”,如下:
<style type="text/css">
#box{width:600px; background:#E6FECB; border:3px solid #933; overflow:hidden;}
.float_div{float:left; margin:20px; width:100px; height:100px; display:inline; background-color:#CCC;}
.clear{clear:both;}
</style>
<div id="box">
<div class="float_div"></div>
<div class="float_div"></div>
<div class="float_div"></div>
<div class="clear"></div>
</div>

作为网页开发者肯定是经常处理这种情况的,也常在耳边听到清除浮动,上面的方法就是清除浮动,了解了这里产生的原因及解决办法才能真正掌握,不然像以前一样使用别的方法避开此问题,那下次还会遇到,抓住根本就好多了,float元素设定margin-bottom时在IE6和IE7下会失效,清除浮动即可解决,这也是用的比较多的办法!
还有个简单点的解决方法:
IE6/7下margin-bottom无效一般出现在容器里某元素设置后在父容器内无效,这个时候只需要在父容器中加入以下两句css,基本上所有的浏览器都兼容了:
overflow:hidden;zoom:100%;
这个方法不用添加额外的标签,也是很好的解决办法!
转自:http://www.tcreator.info/webSchool/xhtml-css/margin-bottom-failure-in-ie6-and-ie7-under.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异