[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
RE: Whitespace problem in IE5
Subject: RE: Whitespace problem in IE5 From: Dave Dieno <daved@xxxxxxxxxxxx> Date: Tue, 25 May 1999 10:59:33 -0700 |
I think you need an HTML <PRE>...</PRE> block in your output stream... I.E. <xsl:template match="Spaces"> <PRE> <xsl:eval > getText(this) </xsl:eval> </PRE> </xsl:template> Cheers Dave > Hello . > Can anybody answer on this question please ? > I have a problem with displaying whitespaces for a long time , and asked > some times this list about it , > but didn't receive any answer . > Any comments will be appreciated . > Thanks in advance , > Orit . > > > ----- Original Message ----- > From: Chanukov Orit <orit@xxxxxxxxxxxxxxx> > To: <xsl-list@xxxxxxxxxxxxxxxx> > Sent: Sunday, May 23, 1999 12:44 PM > Subject: Re: Whitespace problem in IE5 > > > > Hello . > > > > I'm transforming XML to HTML via XSL using IE5 too . > > I put there Dave's solution with <xsl:script>, but it still strips the > > whitespace. > > Could You please look on my XML/XSL test files ? > > What wrong here ? > > > > XML : > > > > <?xml version='1.0'?> > > <?xml:stylesheet type="text/xsl" href="spaces1.xsl" > xml:space="preserve"?> > > <Screen > > > <Spaces xml:space="preserve"> </Spaces> > > <Field >This text should be shown with offset 20</Field> > > </Screen> > > > > > > XSL : > > > > <?xml version='1.0'?> > > <xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl"> > > <xsl:template match="/"> > > <HTML xmlns:xsl="http://www.w3.org/TR/WD-xsl"> > > <BODY xml:space="preserve" > > > <xsl:apply-templates select="Screen"/> > > </BODY> > > </HTML> > > </xsl:template> > > > > <xsl:script><![CDATA[ > > function getText(e) { > > return (e.text); > > } > > ]]></xsl:script> > > > > <xsl:template match="Screen"> > > <xsl:apply-templates /> > > </xsl:template> > > > > <xsl:template match="Field"> > > <xsl:apply-templates /> > > </xsl:template> > > > > <xsl:template match="text()"><xsl:value-of /></xsl:template> > > > > <xsl:template match="Spaces"> > > <xsl:eval > getText(this) </xsl:eval> > > </xsl:template> > > </xsl:stylesheet> > > > > > > Thanks , > > Orit . > > > > > > > > ----- Original Message ----- > > From: Dave Dieno <daved@xxxxxxxxxxxx> > > To: <xsl-list@xxxxxxxxxxxxxxxx> > > Sent: Thursday, May 20, 1999 7:14 PM > > Subject: RE: Whitespace problem in IE5 > > > > > > > FYI: > > > > > > I managed to work around the problem in IE5 with some help from MSDN > (see > > > Controlling Whitespace : > > > http://msdn.microsoft.com/xml/xslguide/xsl-whitespace.asp ). > > > > > > If you want to preserve the whitespace in your source document you > have > to > > > specify the following attribute for those source document elements > with > > > whitespace, for example: > > > > > > <sourceline xml:space="preserve"> > > > > > > This passes the whitespace through to the stylesheet. > > > > > > However, it seems that in IE5 the <xsl:value-of> element strips the > > leading > > > whitespace. When I looked at the text value of the <sourceline> node > > using > > > Jscript and the DOM I found a workaround. > > > > > > <xsl:template match="sourceline"> > > > <xsl:eval> getText(this) </xsl:eval> > > > </xsl:template> > > > > > > <xsl:script><![CDATA[ > > > function getText(e) { > > > return (e.text); > > > } > > > > > > Not very elegant, but it works :) > > > > > > Cheers, > > > Dave > > > > > > > > > > I haven't tried this, but I seem to remember its coming up before. > If > I > > > > recall, the solution is to use an <xsl:text> element to force the > > spaces. > > > > Something like: > > > > > > > > <PRE><xsl:text> </xsl:text>Indented text</PRE> > > > > > > > > Worst case would be to use entity references for non-breaking > spaces. > > > > > > > > Hope that helps, > > > > John > > > > > > > > At 09:12 PM 05/19/1999 -0700, Dave Dieno wrote: > > > > >Yes, the HTML is placed in a <PRE> section... sorry, I should have > > > > included > > > > >the XSL template: > > > > > > > > > ><xsl:template match="sourceline"> > > > > > <PRE STYLE="font-family:monospace"> > > > > > <xsl:value-of /> > > > > > </PRE> > > > > ></xsl:template> > > > > > > > > > >I've also considered (but not tried) using the DTD approach I.E. > > > > <!ATTLIST > > > > >sourceline xml:space="preserve"> however I'm trying not to use a > DTD > > for > > > > >this project :) > > > > >Dave > > > > > > > > > > Steve Dahl wrote: > > > > > > > > > >> When you generate the HTML, do you put these text lines inside a > > <PRE> > > > > >> section? > > > > >> > > > > >> XML's specifications control how XML is treated, but not how HTML > is > > > > >> treated--HTML strips preceding and following whitespace unless > the > > text > > > > is > > > > >> in > > > > >> a <PRE>, and does not pay attention to xml:space. > > > > >> > > > > >> > > > > >> Dave Dieno wrote: > > > > >> > > > > >> > I'm transforming XML to HTML via XSL using IE5. > > > > >> > > > > > >> > I've got an XML element for which I would like to preserve the > > > > >> whitespace > > > > >> > upon output to HTML. > > > > >> > > > > > >> > For example, I'd like the following XML fragment: > > > > >> > > > > > >> > <codelisting> > > > > >> > <sourceline> > > > > >> > if ( x == "testcase") { > > > > >> > </sourceline> > > > > >> > <sourceline> > > > > >> > o.method(x); > > > > >> > </sourceline> > > > > >> > <sourceline> > > > > >> > } > > > > >> > </sourceline> > > > > >> > </codelisting> > > > > >> > > > > > >> > Viewed in the browser as: > > > > >> > > > > > >> > if ( x == "testcase") { > > > > >> > o.method(x); > > > > >> > } > > > > >> > > > > > >> > My output font is monospaced, and I've tried using both the > > > > stylesheet > > > > >> > attribute: > > > > >> > > > > > >> > <xsl:stylesheet default-space="preserve"> and the element > > attribute: > > > > >> > > > > > >> > <sourceline xml:space="preserve">. > > > > >> > > > > > >> > What I get is: > > > > >> > > > > > >> > if ( x == "testcase") { > > > > >> > o.method(x); > > > > >> > } > > > > >> > > > > > >> > While the whitespace within a line is preserved, all of the > leading > > > > >> > whitespace characters (spaces and tabs) are removed :( > > > > >> > > > > > >> > Any ideas? > > > > >> > > > > > >> > Thanks, > > > > >> > Dave Dieno > > > > >> > Aeroinfo Systems Inc. > > > > >> > http://www.aeroinfo.com > > > > >> > > > > > >> > XSL-List info and archive: > > http://www.mulberrytech.com/xsl/xsl-list > > > > >> > > > > >> -- > > > > >> - Steve Dahl > > > > >> sdahl@xxxxxxxxxxx > > > > > > > > ========================================================== > > > > John E. Simpson | The secret of eternal youth > > > > simpson@xxxxxxxxxxx | is arrested development. > > > > http://www.flixml.org | -- Alice Roosevelt Longworth > > > > > > > > > > > > XSL-List info and archive: > http://www.mulberrytech.com/xsl/xsl-list > > > > > > > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > > > > > > > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > > > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: Whitespace problem in IE5, Chanukov Orit | Thread | Re: Whitespace problem in IE5, Chanukov Orit |
Re: round(), Steve Schafer | Date | Re: XSL-FO Does it have the guts?, Elliotte Rusty Harol |
Month |