Internet Explorer 8重复div错误

8
在IE 8中,有一个著名的幽灵元素错误{{link1:(在此页面上)}}。我已经研究了两天所有可能导致此问题的事情,包括隐藏输入(存在),浮动元素(不存在)和HTML注释<!--...-->(存在)。
"幽灵元素"是登录div和“ny kunde”按钮之间的灰色div。
在尝试使用IE开发工具(F12)查看时,它无法被选择或查看。我认为这是IE8中的呈现问题。
删除这些并没有帮助。此外,我们显然需要隐藏输入以进行表单验证。
值得一提的是,这个电子商务解决方案在开箱即用时不进行验证。
我已经尽力想出了每一个解决方案,但它仍然存在。
有人有任何建议吗?
谢谢 :)

“幽灵元素”到底是什么?能否发布屏幕截图? - Shadow The Spring Wizard
编辑了全新的截图,为您带来更好的观看体验。 :) - Kyle
元素检查器显示了什么? - Pekka
该元素不存在。它不在代码中,也无法使用“直接选择”工具选择它。 - Kyle
2
我使用Firebug lite来检查IE浏览器,它显示这不是一个幻象元素,而是正确的div,高度加倍。但我无法解释周围的边框 o_O。这是我见过最奇怪的事情了... - mingos
1个回答

6
从348行开始,有以下代码:
    <input type="hidden" name="return" value="/checkout/selectAddress" />

</form>
</div>

如果我将其更改为以下内容:
    <input type="hidden" name="return" value="/checkout/selectAddress" />

</div>
</form>

接下来问题得到了解决。

简化(即删除)您的HTML:

<div id="user-wrapper">
  <form action="/user/doLogin" method="post" id="loginForm" />
  <div id="user-kundelogginn">
    </form>
  </div>
</div>

您可以清楚地看到form标签是在div内部关闭的。 我是如何发现这个问题的呢? 我使用了W3C验证器,它让我找到了正确的解决方案:

第350行,第7列:结束标签“form”未打开


1
我也使用了验证器,但是这个包抛出了太多的错误,我猜我错过了它!谢谢 :) - Kyle
1
两年后,一个偶然的谷歌搜索者再次遇到同样的问题,向您致以最诚挚的感谢! - einav

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接