首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用XDV向body元素添加类

用XDV向body元素添加类
EN

Stack Overflow用户
提问于 2011-07-06 16:40:19
回答 1查看 879关注 0票数 3

我想在Plone3+collective.xdv中设置一些表单的样式,但我不希望所有的表单都得到特殊的样式。

因此,在显示某些模板时,我想向styled-form元素的class属性添加一个特殊的body类名:

  • contact-info
  • sendto_form
  • PFG forms

因此,我想我可以设法用XDV来执行这个操作,以避免修改那些模板。

通过使用XDV规则中的if-content指令,我可以检查是否显示了这些模板:

代码语言:javascript
复制
css:if-content="body.template-contact-info"

例如。

但是我找不到的方法,保持Plone提供的类属性根据这个条件添加特殊的类

我想要的结果是:

代码语言:javascript
复制
<body class="template-contact-info styled-form">
    ...
</body>

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-06 17:41:32

通过使用Diazo/plone.app.主题,您可以从模板和内容中合并属性,请参见:http://diazo.org/basic.html#merge

如果无法升级,则需要使用内联XSL进行升级,如下所示:

代码语言:javascript
复制
<prepend theme="/html/body" css:if-content="body.template-contact-info"><xsl:attribute name="class"><xsl:value-of select="/html/body/@class"/> styled-form</xsl:attribute></prepend>

更新:--我忘了上面示例中的标记。现在应该管用了。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6599993

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档