我一直在使用xslt的abit来将我的xml设计成可读的东西。然而,有一件事我无法弄清楚。
我想知道如何将样式应用于xml元素中的文本。例如,这是我的xml的一部分
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="mystylesheet.xsl" type="text/xsl"?>
<Collection>
<Tals>
<Indent="0">Weapon Training</Talent>
<Cost>1</Cost>
<Description>Confers <b>proficiency</b> of <i>two weapons</i>, either melee or ranged. This talent make be aquired multiple times</Description>
</Tals>
我想知道如何让我的描述元素以html格式输出..所以你可以看到粗体文本和斜体文本。
这就是我从mystylesheet.xsl
中的xml中捕获我的Description元素的方法Description: </b><xsl:value-of select="Description"/>
任何帮助将不胜感激。
答案 0 :(得分:1)
如果我的理解是正确的,您想要复制描述的内容。
通过将<xsl:value-of select="Description"/>
更改为
<xsl:apply-templates select="Description/node()"/>
要使其工作,您还必须添加“身份转换模板”
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
更新: 另外你也可以使用
<xsl:copy-of select="Description/node()"/>
但“身份转换模板”是更好的解决方案,因为可以添加更专业的模板。