Re: outpout html
Tiscar Sebastien <[email protected]>
| Newsgroups | gmane.text.xml.french.tech |
|---|---|
| Message-ID | <01fb01c669d5$81e4bdc0$a7021cac@ODIN11> |
quelquechose comme ceci devrait faire l affaire
<xsl:template match="q">
<xsl:apply-templates select="node()" mode="q"/>
<br/>
</xsl:template>
<xsl:template match="oRef">
<font color="red">
<xsl:value-of select="."/>
</font>
</xsl:template>
<xsl:template match="text()" mode="q">
<cite>
<xsl:value-of select="."/>
</cite>
</xsl:template>
d ailleurs vous devez n avoir que le premier noeud texte de q lorsque vous
faites le traitement tout simplement parce que le <xsl:value-of
select="text()" ne selectionne que le premier noeud texte, il faut donc
appliquer un template ou utiliser un controle <xsl:for-each> (déconseillé
cela dit)
----- Original Message -----
From: "Sandrine" <[email protected]>
To: <[email protected]>
Sent: Thursday, April 27, 2006 8:17 AM
Subject: [xml-tech] outpout html
-------Message original-------
De : Sandrine
Date : 04/27/06 02:17:18
A : [email protected]
Bonjour,
Je souhaite créer un document html dans lequel l'élément <q> est affiché en
italique, à l'exception du contenu des balises <oRef>, affiché en rouge:
<q>La nature appartient à tous et, à ce titre, doit être respectée de tous,
une <oRef >déchetterie</oRef> sera prochainement ouverte sur la zone de
Chauvoncourt;</q>
Pour l'instant je fais comme ça:
<xsl:template match="q">
<cite>
<xsl:copy-of select="text()"/>
<xsl:apply-templates select="oRef"/>
</cite>
<br/>
</xsl:template>
<xsl:template match="oRef">
<font color="red">
<xsl:value-of select="."/>
</font>
</xsl:template>
Mais le contenu des balise <oRef> s'en trouve affiché après le reste de l
élément <q>.
Auriez-vous des suggestions?
Merci
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "[email protected]" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant
la commande "unsubscribe" a [email protected]
(mailto:[email protected]?Subject=unsubscribe)