2012-11-16 5 views
7

Teması ayarlı Diazo kullanarak beden etiketine nasıl bir sınıf ekleyebileceğimi merak ediyorum. if-content'u portal-column-two'un mevcut olup olmadığını kontrol etmek için kullanacağım ve buna bağlı olarak bir bedene vücut etiketini koyacağım.Tema ile diazo kullanarak beden etiketine ekleme etkin

ve burada tarif edilir:

Bir çözüm Add class to body tag using diazo with notheme ama notheme ayarlanırsa çalışır.

Peki, basit bir ek css sınıfını anında gövde etiketine nasıl yerleştirebilirim?

DÜZENLEME:

<before theme-children="/html/body" css:if-content="#portal-column-two"> 
    <xsl:attribute name="class"><xsl:value-of select="/html/body/@class" /> three_col</xsl:attribute> 
</before> 
<before theme-children="/html/body" css:if-not-content="#portal-column-two"> 
    <xsl:attribute name="class"><xsl:value-of select="/html/body/@class" /> two_col</xsl:attribute> 
</before> 

Benim son çözüm burada tarif edilir: durumuna göre

<before theme-children="/html/body"><xsl:attribute name="class"><xsl:value-of select="/html/body/@class" /> three_col</xsl:attribute> 
</before> 

Ve: Bu tema ile ve Plone saf diazo ile çalışır (plone.app.theming) : https://plone-theming-with-diazo.readthedocs.org/en/latest/snippets_diazo/recipes/index.html#add-css-class-depending-on-existing-portal-columns

+1

Küçük ilgili, burada Python ile vücut sınıfları ekleyin: http://developer.plone.org/templates_css_and_javascripts/css.html#adding-new-css-body-classes –

+1

Merhaba Mikko, cevabınız için teşekkürler ama ben saf Diazo/XSLT çözümü arıyor. – MrTango

+0

Acaba - bu soru cevaplanmadı mı? – romanofski

cevap