如何为所有相同的XSL FO元素设置样式?XSL FO类似CSS



XSL FO中有一种方法是如何一次为所有相同的XSL FO元素设置样式吗?源是XML。

示例:

<fo:table-row> {border-bottom: 1px solid #f0f0f0; }

代替:

<xsl:attribute-set name="border">
    <xsl:attribute name="border-bottom">1px solid #f0f0f0</xsl:attribute>
</xsl:attribute-set>

总是在<fo:table-row>的所有地方使用xsl:use-attribute-sets,这是一个很大的麻烦。

通常情况下,您是从XML和XSL创建XSL-FO的,这不适用,因为您将在模板匹配中为创建表行的内容执行某些操作。所以你只会写一次。

现在,您可以使用相同的概念,创建一个标识XSL,将您的XSL FO输入修改为新的XSL FO,并使用<xsl:template match="fo:table-row">并应用所有规则。

最新更新