-2

我一直在使用 xslt 将我的 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"/>

任何帮助将不胜感激。

4

1 回答 1

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()"/>

但是“身份转换模板”是更好的解决方案,因为可以添加更多专门的模板。

于 2013-04-27T10:37:29.857 回答