[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
[Recent Entries]
[Reply To This Message]
Re: Marking every second row
Subject: Re: Marking every second row
From: Sorin Marti <mas@xxxxxxxxxx>
Date: Mon, 06 Jan 2003 15:25:41 +0100
|
Thanks to everyone who helped me! Now it works!!
Greets
Sorin
Jeni Tennison wrote:
Hi Sorin,
I got an very simple XSL-File wich produces following output from a very
simple XML-File
<table>
<tr><td>aaa</td></tr>
<tr><td>bbb</td></tr> <-- X
<tr><td>ccc</td></tr>
<tr><td>ddd</td></tr> <-- X
<tr><td>eee</td></tr>
<tr><td>fff</td> </tr> <-- X
</table>
Now I want the background of the lines which are marked with an X in
another color.
So how do I select every second row of my output?
Using this output as the input for a transformation, you can do
something like:
<xsl:template match="table">
<table>
<xsl:for-each select="tr">
<tr>
<xsl:if test="position() mod 2 = 0">
<xsl:attribute name="bgcolor">blue</xsl:attribute>
</xsl:if>
<xsl:copy-of select="*" />
</tr>
</xsl:for-each>
</table>
</xsl:template>
This loops over the tr elements, creates a copy and adds a bgcolor
attribute if the position of the tr element is even (which is tested
with position() mod 2 = 0).
You could probably do something similar when you're actually creating
this table in your stylesheet, but without seeing the input to that
transformation I can't be certain.
Cheers,
Jeni
---
Jeni Tennison
http://www.jenitennison.com/
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
PURCHASE STYLUS STUDIO ONLINE TODAY!
Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!
Download The World's Best XML IDE!
Accelerate XML development with our award-winning XML IDE - Download a free trial today!
Subscribe in XML format
RSS 2.0 |
|
Atom 0.3 |
|
|