This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RE: XSL transforming XML to HTML


> Kien Phan asks:
> >Can anyone tell me if there are any built-in XSL functions that will
> >allow me to avoid the <SPAN> and <FONT> tags from being outputted on
> >the next line after the <DIV> tag.
> 
> Note that <font> is a literal result element (LRE). Try changing this
> <div id="gold">
>     <xsl:choose>
>         <xsl:when test="$contract='yearly'">
>             <font>
>             <xsl:value-of
> 
> to this:
> <div id="gold">
>     <xsl:choose>
>         <xsl:when test="$contract='yearly'"><font>
>             <xsl:value-of
> 
> Since the XSL stylesheet is getting parsed as XML, the item between
> <xsl:when test="$contract='yearly'"> and <xsl:value-of...> is being
> read in as a piece of text. ("Text node" is a term often used.)

This advice is wrong. Whitespace-only text nodes in XSLT stylesheets are
ignored, unless they appear within an <xsl:text> element.

If you are using <xsl:output method="html">, the default is indent="yes",
which allows the processor to add spaces anywhere that they will be ignored
by the browser. If your processor is adding spaces that make a difference to
the final appearance in the browser, it's a bug.

When you suspect a bug like this in an XSLT processor, it's worth seeing
what a different XSLT processor does with it.
 
Mike Kay


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

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]