您现在的位置是:网站首页> 编程资料编程资料
IE6,IE7浏览器下 margin 无效的解决方法 _CSS教程_CSS_网页制作_
2023-10-30
170人已围观
简介 前几天做一个页面的时候遇到了这个问题。我设置div的margin-top IE6下居然无效;后来搞了好半天没弄出来。
只能设置父元素的padding-top;来达到效果。看下面的演示代码;
今天有时间,所以特意做了一个测试。
test-2


呵呵,我标题没错吧。果然IE6,IE7的margin:10px; 失效了。
解决办法
.test-1{border-color:#000;width:100%; height:auto !important;height:1%; zoom:1;}
使用:width:100%;或者 height:auto !important;height:1%; 或者zoom:1; 都可以解决上面的问题。(3选1,不要全部写进去。)
根据自己的具体情况来选择一种即可!
今天有时间,所以特意做了一个测试。
复制代码
代码如下:test-2


呵呵,我标题没错吧。果然IE6,IE7的margin:10px; 失效了。
解决办法
复制代码
代码如下:.test-1{border-color:#000;width:100%; height:auto !important;height:1%; zoom:1;}
使用:width:100%;或者 height:auto !important;height:1%; 或者zoom:1; 都可以解决上面的问题。(3选1,不要全部写进去。)
根据自己的具体情况来选择一种即可!
问题根源
当然知道了解决办法还不够,我们必须知道什么情况会引发上面的BUG,zoom:1;这东西貌似经常使用。于是我去查询了一下关于zoom的一些信息。
发现他会触发IE的 haslayout ; haslayout来解决一些常见的IE BUG;(建议不太明白 haslayout 的同学点击连接去读一下。haslayout 不神秘。)
在InternetExplorer中,一个元素要么自己对自身的内容进行计算大小和组织,要么依赖于父元素来计算尺寸和组织内容
上面这句加粗的话很重要哦。
上面的例子 test-1 没有触发 haslayout 他不能负责对自己和可能的子孙元素进行尺寸计算和定位;所以子元素的margin失效。
当然 激活 haslayout 的方式很多 zoom:1; 其实设置 widht height 也可以激活。所以当设置了 这两个值。子元素定位也正确了。
以上仅个人根据网上的资料得到的结论,如果有错误,还请高人指点。
罪恶的IE 浏览器何时退出舞台。
相关内容
- 全民打怪兽 体力获得办法 怎么节省体力_手机游戏_游戏攻略_
- 天天酷跑4月1日最新刷分刷金币无异常教程攻略推荐_手机游戏_游戏攻略_
- 植物大战僵尸2遥远未来第二关图文攻略推荐_手机游戏_游戏攻略_
- 植物大战僵尸2遥远未来第10关通关攻略EMP惊现_手机游戏_游戏攻略_
- 植物大战僵尸2遥远未来第九关图文攻略推荐_手机游戏_游戏攻略_
- 植物大战僵尸2遥远未来 第11关图文攻略坚不可摧_手机游戏_游戏攻略_
- 天天飞车 S级逐日者满级属性介绍_手机游戏_游戏攻略_
- 植物大战僵尸2遥远未来第8关图文攻略巨人僵尸归来_手机游戏_游戏攻略_
- 雷霆战机 装备大全 最强装备搭配及装备排行一览表_手机游戏_游戏攻略_
- 全民炫舞 购买道具的方法_手机游戏_游戏攻略_
