Re: [xsl] strip-spaces

Subject: Re: [xsl] strip-spaces
From: Steven Ericsson-Zenith <steven@xxxxxxxxxxxxx>
Date: Mon, 4 Feb 2008 11:03:08 -0800
Thanks for the prompt response Colin.

It is, in fact, the document content that is not being stripped, as I look at this more closely. So, your observation does not suggest the problem (but it was a worthy observation none-the-less).

It is the text generated by the apply-templates calls that is not striped. They leave tabs behind which cause no problem in decent browsers like Safari and Firefox - but breaks the layout in IE.

I'm using Saxon 9.

With respect,
Steven



On Feb 4, 2008, at 10:44 AM, Colin Adams wrote:

xsl:strip-space targets source documents, not the stylesheet.

On 04/02/2008, Steven Ericsson-Zenith <steven@xxxxxxxxxxxxx> wrote:
Dear List,

I have

<xsl:output
       indent="no"
       method="xhtml"
       doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
       doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd
" />
<xsl:strip-space
       elements="*" />

in a style sheet, and the following template:

   <xsl:template
       match="foobar">
       <xsl:element
           name="span">
           <xsl:attribute
               name="class">c</xsl:attribute>
           <xsl:element
               name="div">
               <xsl:attribute
                   name="class">d</xsl:attribute>
               <xsl:attribute
                   name="style">display:none</xsl:attribute>
               <xsl:element
                   name="p">
                   <xsl:attribute
                       name="style">text-transform:capitalize;text-
align:left;</xsl:attribute>
                   <xsl:element
                       name="em">
                       <xsl:apply-templates
                           select="t" />
                   </xsl:element>
               </xsl:element>
               <xsl:element
                   name="p">
                   <xsl:apply-templates
                       select="d" />
               </xsl:element>
           </xsl:element>
           <xsl:apply-templates
               select="t" />
       </xsl:element>
   </xsl:template>

For some reason this template alone, of all the many templates I have
in this style sheet, is not stripped - and that failure to strip
produces a faulty layout in IE (spit).

I've tried all permutations but I don't understand why it is not
stripped. Can someone enlighten me?

Sincerely,
Steven

Current Thread