可在浏览器中选择单个XML文档的多个样式表?

时间:2009-03-25 14:41:06

标签: xml firefox xslt

我有一个XML文件,我希望用户能够看到两个不同的样式表。样式表是互斥的,因此一次只能激活其中一个样式表。

我尝试将以下内容添加到我的XML文件的顶部:

<?xml-stylesheet type="text/xsl" href="brief.xsl" title="Breif" ?>
<?xml-stylesheet type="text/xsl" href="detailed.xsl" title="Detailed" alternate="yes" ?>

我期望发生的是brief.xsl将用作默认样式表,而“详细”将显示为“视图 - &gt;页面样式”菜单中的项目,但Firefox似乎忽略第二个样式表(我只获得“No Style”和“Basic Page Style”项,这是每个页面的默认项)。

Firefox不支持alternate属性,还是我做错了什么?其他浏览器是否支持此功能?

2 个答案:

答案 0 :(得分:1)

Firefox 3.5 Nightly表示备用,但没有内置功能来交换xml样式表,它只是尝试为生成的文档交换样式表。

IE 6.0-8.0在xml-stylesheet处理规则中不支持alternate =“yes”。 所以它会处理第一个,而忽略第二个。

答案 1 :(得分:0)

我并不特别了解XML,但我看到它适用于HTML的备用样式表。

例如,请查看此网站:http://www.thesitewizard.com/javascripts/change-style-sheets.shtml

它使用此代码:


link rel="stylesheet" type="text/css" href="../include/style.css" title="blue" media="screen" /
link rel="alternate stylesheet" type="text/css" href="../include/change-style-sheets/style-alternate.css" title="grey" media="screen" /

我正在使用firefox 2.0.0.19,“view-&gt; page style”显示“no style”,“blue”和“gray”。 因此,至少在HTML中,firefox可以处理多个备用样式表。