如何使用Diazo清单参数(XSL)设置背景颜色

时间:2014-05-20 15:57:52

标签: css xslt diazo

我需要使用Diazo清单参数修改一些样式颜色。

我的想法是做这样的事情:

    <after css:theme-children="html body">
        <style>
            body {
                background-color:<xsl:value-of select="$body_background_color" />;
            }
        </style>
    </after>

返回此错误:

    runtime error, element 'variable' [190:0]
    XSLT-variable: Redefinition of variable 'tag_text'. [0:0]

我可以在没有变量的情况下使用它:

    <after css:theme-children="html body">
        <style>
            body {
                background-color:red;
            }
        </style>
    </after>

我可以在类似的情况下使用变量:

    <after css:theme-children="html body">
        <div style="background-color:{$body_background_color};">
            blah
        </div>
    </after>

但我不能把它们放在一起。

任何人都可以帮助解决错误或指向另一个解决方案吗?

1 个答案:

答案 0 :(得分:0)

我在https://github.com/quintagroup/quintagroup.theme.sunrain/blob/master/quintagroup/theme/sunrain/static/tune.xml

的Quintagroup主题中找到了解决方案
<after theme-children="/html/head/style">
    body {
      background-color: <xsl:value-of select="$body_background_color" />;
    }
</after>

这会将我的css代码添加到标题中现有样式标记的末尾。