optional attributes

Subject: optional attributes
From: "Lisa van Gelder" <lisa@xxxxxxxxxxxxxxxxx>
Date: Thu, 22 Jun 2000 13:07:39 +0100
Is there a way to print attributes only if they are not blank? I'm trying to
add attributes to images and links using this code:

<xsl:template match="image[@type='html']">
<img src="{@source}" border="{@border}" alt="{@alt}" align="{@align}"
hspace="{@hspace}" vspace="{@vspace}" name="{@name}" height="{@height}"
width="{@width}"/>
</xsl:template>

The problem is that all my images won't necessarily have all those
attributes, and if they don't instead of outputting <img src="heart.gif"
border="" align=""> etc as I'd hope, the stylesheet outputs <img
src="heart.gif" border align>. This not only makes the html messy, it
actually prevents the images displaying in IE5 if the height and width
attributes are not set.

I have searched the archive and the FAQ, but can't find the solution -
apologies if I've missed it!

thanks

Lisa

PS: I've tried adding the attributes with <xsl:attribute>:

<xsl:template match="image[@type='html']">
<img>
<xsl:attribute name="src">
<xsl:value-of select="@source"/>
</xsl:attribute>
</img>
</xsl:template>

this has the same result.


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread