【IE6的疯狂系列】IE6下position:absolute相邻元素margin-top失效的bug

昨天发现了一个ie6的bug,绝对定义(position:absolute)的相邻元素margin-top竟然会失效;

看demo把(请用ie6围观):https://www.html.cn/demo/absolute-bug/absolute-bug.html

这里有几个条件:

  1. 相邻元素是有width属性的,如果去掉width属性,margin-top又会生效,点击查看:https://www.html.cn/demo/absolute-bug/absolute-bug-1.html
  2. 增加相邻元素浮动,margin-top也会又会生效;点击查看:https://www.html.cn/demo/absolute-bug/absolute-bug-2.html

如果没有复杂的背景什么的可以使用padding-top替换margin-top;

还可应在相邻元素间插入一个空标签的方法:
[code=”html”]

此处显示新 Div 标签的内容

此处eeeeeeeee显示新 Div 标签的内容

[/code]

点击查看:https://www.html.cn/demo/absolute-bug/absolute-bug-4.html

————————————————
另赠送一个IE6下与float元素相邻的position:absolute元素消失BUG
围观地址:http://blog.dengsa.com/?p=342 http://www.webchina110.cn/?p=105

赞(0) 打赏
未经允许不得转载:WEB前端开发 » 【IE6的疯狂系列】IE6下position:absolute相邻元素margin-top失效的bug

评论 9

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #-49

    嗯~希望码头多多发些bug

    占沙发~

    小山9年前 (2010-08-24)回复
  2. #-48

    发现最近WEB前端开发更新的慢了。

    Jayuh9年前 (2010-08-24)回复
  3. #-47

    好像ie7下面也有这个bug.以前好像也碰到过,没有注意,用其他办法绕过去了。

    lin04com9年前 (2010-08-24)回复
  4. #-46

    为了验证下,切到winxp ie6一试,果然如此。
    以前还真没注意过。

    crossyou8年前 (2010-08-25)回复
  5. #-45

    把第二个div也定义绝对定义(position:absolute)也能解决这个问题,估计是第一个绝对定义之后,第二个不定义一下它会找不到合适的位置,呵呵~~~万恶的ie6赶快淘汰吧

    lino878年前 (2010-08-25)回复
  6. #-44

    主要原因是第二个div自动被添加了浮动,所以可以给第一个与第二个div间加个清除浮动的可以了。如:

    web前端寒风8年前 (2010-08-28)回复
  7. #-43

    初学者,很纠结如何使各浏览器的元素间距精确一致???

    goodcza8年前 (2010-08-29)回复
  8. #-42

    之前遇到过这个问题,但都没注意是怎样解决的。

    It’s really helpful!

    Lynn8年前 (2010-09-08)回复
  9. #-41

    前段时间做项目的时候发现IE6下,用了float后,相邻元素使用position:absolute时会消失,忘记当时是怎么解决的了,呵呵 不过又学到了一些知识,谢谢码头大虾

    左手右手8年前 (2011-07-19)回复

前端开发相关广告投放 更专业 更精准

联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏