我想通过 XSLT 将输入的 XML 文档转换为 XHTML。在我的样式表中,我使用具有以下属性的 xsl:output:
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"
doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" />
当我在 XML Copy Editor 或 Editix 等编辑器中使用 XSLT 处理器时,向 XTHML 1.0 Strict 的转换工作正常。当我使用命令行 xsltproc 时,它也按预期工作。
但是当我将样式表(“myfile.xsl”)链接到原始 XML 文档(“myfile.xml”)中时,如下所示:
<?xml-stylesheet type="text/xsl" href="myfile.xsl"?>
如果我现在尝试在主要浏览器(Chrome、IE 或 Mozilla)中观看“myfile.xml”,它们都无法将 XML 文档转换为预期的 XHTML。但是,使用 Opera,它可以完美运行。
我的 XSLT 是否有问题(即 xsl:output 中)或者这是主要浏览器(IE、Chrome、Mozilla)的 XSLT 实现中的缺陷?
仅当我在 . 如果我使用 method="html",它适用于所有浏览器。但我需要生成 XHTML,而不是 HTML,这就是为什么我在 xsl:output 中使用 method="xml" 以及 doctype-system 和 doctype-public 属性