哪个浏览器可以显示由XSLT转换的XML数据?

nop*_*ole 19 xml xslt

比方说,如果有一个文件被调用data.xml,而一个文件是format.xsl(或者是format.xml?),即使用CSS转换XML数据并将其格式化,那么哪个浏览器可以显示它?应该打开哪个文件?(.xsl.xml?)

实际上我在另一个例子中看到XSLT文件的第一行是href="format.xsl",所以我认为XSLT文件已经是.xsl?那怎么会链接到另一个.xsl文件?有多少个文件,2个或3个?

And*_*eas 20

有两个文件,一个.xml包含数据,一个.xsl包含用于转换的XSLT脚本.截至2010年8月,所有领先的浏览器都支持客户端XSLT转换.打开.xml文件,将使用关联的.xsl文件.通常,该脚本会构建一个即时显示的html文档.转换也可以由服务器使用PHP等完成.
要关联XSLT脚本,.xml文件需要如下所示的行:

<?xml-stylesheet type="text/xsl" href="script.xsl" ?>
Run Code Online (Sandbox Code Playgroud)


Tim*_*sen 9

许多浏览器都支持XML样式表处理指令.如果它包含在XML文件中并且您使用浏览器打开此XML,则浏览器将加载指定的XSLT,使用XML文件作为输入运行它,并显示XSLT的输出而不是原始XML文档.规范可以在这里找到:http://www.w3.org/TR/xml-stylesheet/

Wikipedia的XSLT条目有一个如何使用处理指令的示例.基本上你只需要在XML文件的顶部添加这一行(在<?xml?> prolog之后),'example2.xsl'是你的XSLT文件的路径:

<?xml-stylesheet href="example2.xsl" type="text/xsl" ?>

Firefox和IE都应该支持这个(可能还有很多其他浏览器,但我从来没有尝试过 - 这个功能经常不用).

  • Firefox 不再打开 XSLT,但会显示 XML 的内容。Chrome 以及 Edge 不仅不允许使用 XSLT,而且也不会显示 XML 的内容。IE 现在基本上已经死了。 (3认同)

aru*_*run 5

在 Mac 上,我尝试使用 Chrome 和 Safari 打开 XML 文件,但均未显示任何内容。

对我有用的解决方案是从命令行运行xsltproc以首先获取 HTML,然后使用浏览器打开 HTML。这是命令:

xsltproc <XSL file> <XML file> > test.html
Run Code Online (Sandbox Code Playgroud)

现在test.html用浏览器打开。