|
Subject: Re: [xsl] Alternating Odd and Even with a twist From: Kuhns Matt <kuhns_m@xxxxxxxxx> Date: Fri, 18 Oct 2002 06:57:30 -0700 (PDT) |
Kuhns Matt wrote:
> I want to alternate rows between a odd and even
class
> in my CSS. The twist is that If there is no
> information in the tag I don't want to print and I
> want to maintain my odd and even structure. The html
> would look like this
> <class="rowodd">Hi</class>
> <class="roweven">How are you?</class>
> <class="rowodd">Bye</class>
> xml:
> <item1>Hi</item1>
> <item2>How are you?</item2>
> <item3>Bye</item3>
> but say there was no information where How are you?
> I want it to go:
> <class="rowodd">Hi</class>
> <class="roweven">Bye</class>
> xml:
> <item1>Hi</item1>
> <item3>Bye</item3>
> I can get the text not to print, but how do I assign
> the classes?
I hope your elements are *not* named item1, item2,
item3...
But if you really want:
<xsl:for-each
select="*[substring(name(),1,4)='item']">
<class>
<xsl:choose>
<xsl:when test="position() mod 2 = 0">
<xsl:attribute
name="name">even</xsl:attribute>
</xsl:when>
<xsl:otherwise>
<xsl:attribute
name="name">odd</xsl:attribute>
</xsl:otherwise>
</xsl:choose>
<xsl:apply-templates/>
</class>
</xsl:for-each>
(Beware: untested)
I'm not sure what the "twist" is, it's a standard
technique.
J.Pietschmann
I'm sorry my description was a little misleading:
<System>
<Network>Hi</Network>
<Client>How are you?</Client>
<Server>Bye</Server>
<System>
So you couldn't parse the string and get the string
"item"
__________________________________________________
Do you Yahoo!?
Faith Hill - Exclusive Performances, Videos & More
http://faith.yahoo.com
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] Alternating Odd and Even , J.Pietschmann | Thread | Re: [xsl] Alternating Odd and Even , Joerg Heinicke |
| Re: [xsl] Requested review, xml 2 j, Nathan Shaw | Date | Re: [xsl] what could select="self:n, David Carlisle |
| Month |