XML在Firefox和Edge中的文档类型中格式不正确

时间:2018-09-24 09:47:04

标签: xml firefox doctype xml-declaration

我在Firefox和Edge的开发者控制台中的网页上收到“ XML格式不正确”错误。 Chrome可以正常运行,并且什么也不显示。错误消息表明XML声明或doctype对此负责。这是我正在使用的:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html
     PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

但是,每个浏览器和在线XML解析器都指向不同的位置,因此我不确定错误的确切位置。例如,Edge给我第1行第68列,而Firefox指向第84列。有问题的页面可以在https://dev.heco.de/上找到。 上面的代码段是由我们正在使用的CMS TYPO3创建的。即使我们仍然使用过时的版本,但我已经检查了当前版本的代码段,并且代码段完全相同。

我知道这种问题以前已经发布过,并且我已经阅读并尝试了答案,但是没有一个对我有用。到目前为止,这是我尝试过的:

  • 从xml 1.1版切换到1.0版,错误仍然存​​在
  • 从双引号切换为单引号
  • 完全省略了报价
  • 尝试使用HTML5代替
  • 完全省略了xml声明
  • 尝试使用XHTML过渡而不是严格

以上均未解决错误,这就是我发布此错误的原因。由于我真的无法缩小错误的范围,因此,我将非常感谢您提供的任何建议或见解。

1 个答案:

答案 0 :(得分:0)

有效性不仅是标题,而且是生成的HTML。
如果您有来自XHTML的内容,则html4和html5的声明都不会与内容匹配。
正如@Quentin所建议的那样:从validator.w3.org获得更详细的分析。然后,您可以确定无效的来源。

如果您使用其他模板(标记模板/纯打字稿渲染,其中HTML通过换行添加),则很有可能会混合使用html / xhtml版本。
默认情况下,流体模板大多符合html5规范。