18

我正在使用IE 11 (version 11.0.9431.0), 来测试我们当前的网站,看看 IE 11 将在 10 月中旬随 Windows 8.1 一起发布时它会如何工作。我在几乎所有页面上看到的是以下消息:

HTML1514: Extra "<body>" tag found. Only one "<body>" tag should exist per document.

当我查看源代码时,任何地方都没有第二个<body>。这是 IE 11 的错误吗?这是我应该认真对待的事情吗?顺便说一句,这些页面工作正常...

谢谢。

编辑:

我无法再访问该网站,因此我无法尝试你们发布的任何新解决方案。

4

8 回答 8

9

If you placed some element (that should appear only inside body) before the <body> tag, the <body> is inserted automatically by the parser (the "Anything else" paragraph) - and this is still valid HTML because body has optional both opening and closing tags. That would mean that the actual <body> is the second one the parser sees. Couldn't this be your case?

于 2013-10-01T13:23:55.573 回答
4

我的猜测是您可能有 if IE 语句,例如:

<!--[if IE 9]>     <body class="ie ie9 lte9"> <![endif]-->

它们实际上在 IE10 中不起作用,更不用说 IE11 了,这就是为什么你会找到额外的标签。

于 2013-10-01T13:18:16.240 回答
2

问题(也存在于 IE 10 中)是由元素引起的

<script type="text/javascript" src="/_clients/binck_nl/data/js/analytics.js?nl_1377516473" ></script>

它可能会修改 DOM,使 IE 感到困惑。

于 2013-10-01T14:33:07.127 回答
1

它可能是你在 CSS 中的身体标签。将 css 中的 body-tag 替换为类,例如 .bodystyle {},并在您的 html 中使用该标签引用它。这应该够了吧。

于 2014-09-08T19:49:32.000 回答
1

嗨,这可能是一个很晚的建议。但是,为了帮助其他人,可能的原因可能是页面中的任何 iframe 带有 body 标签

于 2015-12-14T07:39:25.113 回答
0

我在 IE10 和 IE11 中出现了同样的效果,说控制台中有一个额外的 body 标签。为我解决的问题是,我在正文之外发现了一个元素,它是微调器的 div,而页面加载应该在正文中。

于 2015-05-21T20:19:07.730 回答
0

我通过<header><title>something</title></header>从标签正文中删除:解决了这个问题。现在edge不再抱怨了。

于 2020-04-14T02:38:03.073 回答
0

我的猜测是它可能是 Edge 在正文部分中想要的标题部分中的内容。(如果您有标题部分)。

这适用于除 Edge 之外的任何其他浏览器。

于 2019-09-27T08:46:02.297 回答