Web 技术研究所

我一直坚信着,Web 将会成为未来应用程序的主流

IE8 FORM元素重复渲染的BUG

  今天遇到一个IE8下的奇葩问题,当一个容器中存在FORM元素,并且FORM元素的内容不为空时,容器本身会被多次渲染(不包括容器所包含的内容)。这个问题在更低版本的IE中都没有出现,唯有IE8中枪。于是折腾了几个小时,终于找到了导致这个BUG的原因。
  下面是BUG重现:
<style>
div {
  border:1px solid red;
  background:#FCC;
  width:260px;
  height:32px;
}
</style>
<div>
  <form>
    <input name="n" />
  </form>
</div>

  红色的DIV块在DOM中只有1个,但渲染成了两个,这就是BUG所在。这个问题产生的原因是IE8只对BODY内的FORM正常渲染,上面的例子中由于没有写BODY,因此FORM就无法正常渲染。所以解决方法就是补上BODY标签! <style>
div {
  border:1px solid red;
  background:#FCC;
  width:260px;
  height:32px;
}
</style>
<body>
<div>
  <form>
    <input name="n" />
  </form>
</div>
</body>

  就这么小一个BUG居然折腾了这么久!哎,人生如此惨淡。。
网名:
54.144.24.*
电子邮箱:
仅用于接收通知
提交 悄悄的告诉你,Ctrl+Enter 可以提交哦
神奇海螺
[查看全部主题]
各类Web技术问题讨论区
发起新主题
本模块采用即时聊天邮件通知的模式
让钛合金F5成为历史吧!
次碳酸钴的技术博客,文章原创,转载请保留原文链接 ^_^