【问题标题】:What's causing the whitespace in internet explorer 9是什么导致 Internet Explorer 9 中的空白
【发布时间】:2013-12-20 01:55:35
【问题描述】:

http://mimictrading.com/index.php

在 FF 中显示预期的方式。 IE9 在顶部和最近的主题列表上方有一些奇怪的空间。不确定它们是否已连接。我已经找到了 div id="header"

的空间

从那里检查元素并没有向我透露太多信息。

我最近添加了 jquery,我做了很多修改。我不知道这是小部件、脚本还是 css 的结果,尽管它通常是 css。我想说,如果它一直在发生,我会注意到这一点,而且这一定是我所做的,但有些变化不能轻易恢复,因为我不记得它们是如何发生的。

让 jquery 工作的一部分涉及将 doctype 更改为 html 5 兼容,删除关于 IE 兼容性的一行我不记得它说了什么,但由于某种原因它不允许 getElementsByTagName 或类似的东西。是的,这是我编织的一张错综复杂的网,但也许有人能找出造成这种奇怪差异的原因。

也很好奇ie10中是否发生,如果你有并且可以看到,请告诉我。

编辑:好的,添加这个会删除除条子之外的所有内容:

但我不想要那个大声笑。这是否有助于任何人弄清楚我如何才能真正修复它?有了上面我的 jquery 投资组合代码将无法正常工作。

【问题讨论】:

  • 你的 CSS for #main 将 line-height 设置为 140% 尝试删除它,看看它是否有影响
  • 试过了,没变。这是该论坛风格的原始未修改元素。

标签: jquery css layout internet-explorer-9 whitespace


【解决方案1】:

我相信问题实际上来自<a name="start_here"></a>

那里有 3 个空元素:

<a id="top" name="top" accesskey="t"></a>
<div id="page-header"></div>
<a name="start_here"></a>

第一个&lt;a id="top&gt;position: absolute(它有一个布局)。

第二个是&lt;div&gt;,默认情况下也是display: block(它有一个布局)。

最后一个没有样式,我认为这会为您造成“hasLayout”错误。

可以通过添加float: leftposition: absolutedisplay: block来修复。

【讨论】:

  • 完全删除了所有 3 个元素。 ie9没有变化。像另一个答案一样,所有这些都带有这种风格(我很确定我用修补搞砸了一些东西,不知道什么时候或什么)。
【解决方案2】:

这是 hasLayout IE 错误。将几个元素更改为 line-height 0px 可以修复它,但会使样式变得复杂。

谢谢大家。

更多信息http://www.table2css.com/articles/white-space-lines-internet-explorer-caused-elements-have-layout

【讨论】:

  • IE9 不应该有 hasLayout 错误。如果您看到它,则可能意味着 IE 正在以怪癖模式或兼容模式呈现您的网站。您可能想要处理它并将其置于标准模式,因为其他模式可能会导致其他事情中断。
  • 我会调查一下,在我更改 line-height 之前没有其他人看到它,或者没有人有 ie9?我想没有人能告诉我如何在最近的更新下将主题标题垂直居中,一直试图永远解决这个问题,现在它真的开始困扰我了。
猜你喜欢
  • 2012-01-08
  • 1970-01-01
  • 2013-11-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-20
  • 2013-06-06
  • 1970-01-01
相关资源
最近更新 更多