如何解决问题:确保文档根元素后的标记格式正确
P粉590428357
2023-08-21 22:01:26
<p>我将我的代码放在XML验证网站上,它给了我这个错误:</p>
<blockquote>
<p>第8行:4 根元素后的文档标记必须是格式良好的。</p>
</blockquote>
<p>出现问题的行是<code><xsl:output method = "html" doctype-system = "about:legacy-compat"/></code>。</p>
<h2>XML</h2>
<pre class="brush:php;toolbar:false;"><?xml version="1.0"?>
<!-- Fig. 15.21: sorting.xsl -->
<xsl:stylesheet version = "1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/>
<!-- 写入XML声明和DOCTYPE DTD信息 -->
*<xsl:output method = "html" doctype-system = "about:legacy-compat" />*
<!-- 匹配文档根元素 -->
<xsl:template match="/"> -<html> <xsl:apply-templates/> </html>
</xsl:template></pre>
<p><br /></p>
这也可能是因为此文件中的空格错误而出现的
通用情况
此错误表示您的XML在根元素后面有标记。为了符合格式良好的要求,XML必须有仅有一个根元素,且在单个根元素之后不能有其他标记。
一个根元素示例(正确)
此错误最常见的原因是:
包含多余的闭合标签(错误):
有意地拥有多个根元素(错误):
无意中拥有多个根元素(错误):
解析的XML与您认为的不同(错误):
在提供给解析器之前,立即记录XML以确保解析器看到的XML与您认为的XML相同。这里常见的错误包括:
您的特定问题
在您的特定情况中,您的XML似乎有多个根元素,因为
xsl:stylesheet
元素过早关闭(上述情况#3)。将
更改为
以解决您的即时问题,并添加一个闭合标签
如果您的实际文档中还不存在。