【问题标题】:Content Moves in IE 8 When Hidden Divs are Made Visible当隐藏的 div 变得可见时,IE 8 中的内容移动
【发布时间】:2010-09-21 03:33:40
【问题描述】:

对于我的个人网站,我构建了一个非常完全由 DIV 和样式组成的简单下拉菜单系统。当用户单击菜单栏中的某个项目时,弹出菜单 DIV 可见,当用户单击文档中的其他任何位置时,BODY 元素的 onclick 处理程序会隐藏所选菜单并弹出。

在 Firefox 中,一切都运行良好。事情完全留在他们应该在的地方。但在 IE 中,菜单栏上方的所有内容偶尔会移动几个像素,我无法弄清楚它来自哪里。菜单栏本身、菜单项和弹出菜单都使用 z-index 以确保它们远高于一般页面内容,并且它们(通常)是绝对定位的,不应影响页面上内容的布局(它们是直接在 BODY 下的对等元素)。

如果你们可以看一看(并且不怕冒险进入我的小排骨店,这绝不是完整的),我将不胜感激。这种行为上的差异让我很恼火,我讨厌不知情的人。我怀疑它与盒子模型或类似的东西有关,但我不确定,我在这里无能为力。 IE Developer Toolbar 也没有告诉我任何有用的信息。该网站的网址是http://www.mikehofer.com

【问题讨论】:

    标签: html internet-explorer css


    【解决方案1】:

    我没有使用 IE8,所以我必须在 IE7 中进行测试,我猜这比您在 IE8 中看到的更糟糕。您的 .popup 类也是相对定位的,而不是绝对定位 in your stylesheet,这可能会导致 IE 出现问题。

    【讨论】:

    • 鉴于事物的设计方式,我认为它必须是相对的,尽管我在添加弹出窗口时计算位置,所以我认为这不再是真的。人力资源管理系统。也许我应该再看一遍。以及在 7 中看起来很糟糕的好 googly moogly!
    • 您可以使用绝对位置,然后获取您单击的元素的 offsetTop 和 offsetleft 以进行相应的定位。
    猜你喜欢
    • 2016-11-25
    • 1970-01-01
    • 1970-01-01
    • 2020-10-20
    • 1970-01-01
    • 2012-05-10
    • 1970-01-01
    • 1970-01-01
    • 2019-04-28
    相关资源
    最近更新 更多