Der folgende Beitrag wurde am 21. 09. 2002, 14:31 Uhr von cayron veröffentlicht.
hallo
ich suche nach einer anweisung die
verschachtelte elemente vom typ section (=kapitel/absatz)
mit dem attribut title (kapitelüberschrift)
je nach hierarchie-ebene unterschiedlich
formatiert, und der entsprechenden überschrift
h1-h6 zuweist. (section kann section beinhalten)
dazu habe ich zwar eine variable ($depth)
mit dem wert der hierarchie-tiefe,
kann dies aber nicht auf eine elementauswahl
(hier h1) beziehen.
ein element p mit xsl:attribut class="§depth" wäre nett,
aber es soll mit h1 bis h6 umgesetzt werden.
folgende lösung funktioniert leider auch nicht:
<xsl:variable name="tmp" select="concat('h',$depth)"/>
<xsl:element name="$tmp">
kann mir jemand weiterhelfen ?
noch fragen?
Der folgende Beitrag wurde am 21. 09. 2002, 14:39 Uhr von MudGuard veröffentlicht.
Hi,
> ich suche nach einer anweisung die
> verschachtelte elemente vom typ section (=kapitel/absatz)
> mit dem attribut title (kapitelüberschrift)
> je nach hierarchie-ebene unterschiedlich
> formatiert, und der entsprechenden überschrift
> h1-h6 zuweist. (section kann section beinhalten)
> dazu habe ich zwar eine variable ($depth)
> mit dem wert der hierarchie-tiefe,
> kann dies aber nicht auf eine elementauswahl
> (hier h1) beziehen.
> ein element p mit xsl:attribut class="§depth" wäre nett,
> aber es soll mit h1 bis h6 umgesetzt werden.
schon mal probiert, einfach unterschiedliche Templates zu benutzen?
Also so:
<xsl:template match="section/section/section/section/section/section">
<h6><xsl:value-of select="@title"/></h6>
</xsl:template>
<xsl:template match="section/section/section/section/section">
<h5><xsl:value-of select="@title"/></h5>
</xsl:template>
...
<xsl:template match="section">
<h1><xsl:value-of select="@title"/></h1>
</xsl:template>
(ist zwar der brute-force-Ansatz, aber bei nur 6 Ebenen...)
Andreas
Der folgende Beitrag wurde am 21. 09. 2002, 15:10 Uhr von cayron veröffentlicht.
das war die alte lösung, die ich erneuern wollte,
da man dann probleme mit "section/irgendeinanderertag/section" bekommt.
hab aber ne lösung gefunden ...
trotzdem danke
> Hi,
> > ich suche nach einer anweisung die
> > verschachtelte elemente vom typ section (=kapitel/absatz)
> > mit dem attribut title (kapitelüberschrift)
> > je nach hierarchie-ebene unterschiedlich
> > formatiert, und der entsprechenden überschrift
> > h1-h6 zuweist. (section kann section beinhalten)
> > dazu habe ich zwar eine variable ($depth)
> > mit dem wert der hierarchie-tiefe,
> > kann dies aber nicht auf eine elementauswahl
> > (hier h1) beziehen.
> > ein element p mit xsl:attribut class="§depth" wäre nett,
> > aber es soll mit h1 bis h6 umgesetzt werden.
> schon mal probiert, einfach unterschiedliche Templates zu benutzen?
> Also so:
> <xsl:template match="section/section/section/section/section/section">
> <h6><xsl:value-of select="@title"/></h6>
> </xsl:template>
> <xsl:template match="section/section/section/section/section">
> <h5><xsl:value-of select="@title"/></h5>
> </xsl:template>
> ...
> <xsl:template match="section">
> <h1><xsl:value-of select="@title"/></h1>
> </xsl:template>
> (ist zwar der brute-force-Ansatz, aber bei nur 6 Ebenen...)
> Andreasquot; wärq
Der folgende Beitrag wurde am 21. 09. 2002, 15:11 Uhr von cayron veröffentlicht.
<!-- die Überschrift -->
<!-- <H?> bereich fängt an -->
<xsl:variable name="topic" select="concat('h',$depth)"/>
<xsl:text disable-output-escaping="yes"><</xsl:text>
<xsl:value-of select="$topic"/>
<xsl:text disable-output-escaping="yes">></xsl:text>
[...]
<!-- <H?> bereich hört wieder auf an -->
<xsl:text disable-output-escaping="yes"></</xsl:text>
<xsl:value-of select="$topic"/>
<xsl:text disable-output-escaping="yes">></xsl:text>
*freu*
> hallo
> ich suche nach einer anweisung die
> verschachtelte elemente vom typ section (=kapitel/absatz)
> mit dem attribut title (kapitelüberschrift)
> je nach hierarchie-ebene unterschiedlich
> formatiert, und der entsprechenden überschrift
> h1-h6 zuweist. (section kann section beinhalten)
> dazu habe ich zwar eine variable ($depth)
> mit dem wert der hierarchie-tiefe,
> kann dies aber nicht auf eine elementauswahl
> (hier h1) beziehen.
> ein element p mit xsl:attribut class="§depth" wäre nett,
> aber es soll mit h1 bis h6 umgesetzt werden.
> folgende lösung funktioniert leider auch nicht:
> <xsl:variable name="tmp" select="concat('h',$depth)"/>
> <xsl:element name="$tmp">
> kann mir jemand weiterhelfen ?
> noch fragen?
Der folgende Beitrag wurde am 21. 09. 2002, 15:29 Uhr von MudGuard veröffentlicht.
> <!-- die Überschrift -->
> <!-- <H?> bereich fängt an -->
> <xsl:variable name="topic" select="concat('h',$depth)"/>
> <xsl:text disable-output-escaping="yes"><</xsl:text>
> <xsl:value-of select="$topic"/>
> <xsl:text disable-output-escaping="yes">></xsl:text>
> [...]
> <!-- <H?> bereich hört wieder auf an -->
> <xsl:text disable-output-escaping="yes"></</xsl:text>
> <xsl:value-of select="$topic"/>
> <xsl:text disable-output-escaping="yes">></xsl:text>
Aua, das tut weh. So erzeugt man keine Elemente im Output.
Hier die richtige Lösung:
Annahme: in $depth steht eine ganze Zahl von 1 bis 6:
<xsl:element name="h{$depth}">
was auch immer in dem Element stehen soll
</xsl:element>
Andreas
Der folgende Beitrag wurde am 21. 09. 2002, 15:25 Uhr von Thomas Meinike veröffentlicht.
Hallo,
> folgende lösung funktioniert leider auch nicht:
> <xsl:variable name="tmp" select="concat('h',$depth)"/>
> <xsl:element name="$tmp">
> kann mir jemand weiterhelfen ?
<xsl:element name="{$tmp}">
...
</xsl:element>
MfG, Thomas
© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4