XSL-FO动态使用属性

时间:2014-12-04 10:07:20

标签: xslt xsl-fo

任何人都可以解释为什么这不起作用?

属性:

<xsl:attribute-set name="dark-red">
    <xsl:attribute name="color">red</xsl:attribute>
</xsl:attribute-set>

模板:

<xsl:template name="myTemplate">
    <xsl:param name="style">dark-red</xsl:param>
    <fo:block-container xsl:use-attribute-sets="{$style}">
        <fo:block>Not Red</fo:block>
    </fo:block-container>
</xsl:template>

然而,当不使用变量/参数时,它似乎起作用:

<xsl:template name="myTemplate">
    <fo:block-container xsl:use-attribute-sets="dark-red">
        <fo:block>Red</fo:block>
    </fo:block-container>
</xsl:template>

这有什么特别的原因还是有办法绕过它?

1 个答案:

答案 0 :(得分:0)

您无法在xsl:use-attribute-sets中使用动态值。您必须在元素中创建必需的属性。