Umbrüche und Leerzeichen
Gunnar Bittersmann
- xsl
Hello out there! Hallo Thomas! ;-)
Als Ausgabe einer XSLT-Transformation bekomme ich
<ol>
<li>foo</li>
<li>
<a href="bar">bar</a>
</li>
<li>
<a href="baz">baz</a>
</li>
<li>quz</li>
</ol>
Ich möchte aber zwischen den </a>
- und </li>
kein Whitespace haben.
Setze ich <xsl:output xsl:indent="no"/>
, bekomme ich alles in einer Zeile:
<ol><li>foo</li><li><a href="bar">bar</a></li><li><a href="baz">baz</a></li><li>quz</li></ol>
Was unschön zu lesen ist, falls man doch mal in den HTML-Quelltext schaut.
Gibt es eine Möglichkeit, die Ausgabe so zu bekommen:
<ol>
<li>foo</li>
<li><a href="bar">bar</a></li>
<li><a href="baz">baz</a></li>
<li>quz</li>
</ol>
Zweite Frage: <xsl:text> </xsl:text>
liefert in der Ausgabe ein normales Leerzeichen (U+0020). Warum? Wie bekomme ich das geschützte (U+00A0)?
See ya up the road,
Gunnar
Hallo,
Ich möchte aber zwischen den
</a>
- und</li>
kein Whitespace haben.
Setze ich<xsl:output xsl:indent="no"/>
, bekomme ich alles in einer Zeile:
Was unschön zu lesen ist, falls man doch mal in den HTML-Quelltext schaut.
Gibt es eine Möglichkeit, die Ausgabe so zu bekommen:
<ol>
<li>foo</li>
<li><a href="bar">bar</a></li>
Nein.
Zweite Frage: [code lang=xml]xsl:text </xsl:text>
Blöder Prozessor?
> Wie bekomme ich das geschützte (U+00A0)?
 
Grüße
Thomas
Hello out there!
Gibt es eine Möglichkeit, die Ausgabe so zu bekommen:
Nein.
Klare Ansage. Danke. Schade eigentlich.
Zweite Frage:
<xsl:text> </xsl:text>
liefert in der Ausgabe ein normales Leerzeichen (U+0020). Warum?Blöder Prozessor?
Dann sind aber libxslt 1.1.15 und Sablotron 1.0.1 gleich blöd.
Wie bekomme ich das geschützte (U+00A0)?
 
Nö, gleicher Effekt (libxslt und Sablotron). Hätte mich auch gewundert, wenn ein XML-verarbeitendes Programm dezimale NCRs verstünde, hexadezimale aber nicht.
Gibt’s dagegen irgendein Attribut, oder habe ich den Effekt gar durch irgendwas provoziert?
<Stylesheet> <Ausgabe Sablotron> <Ausgabe libxslt>
See ya up the road,
Gunnar
Hallo,
Zweite Frage:
<xsl:text> </xsl:text>
liefert in der Ausgabe ein normales Leerzeichen (U+0020). Warum?Blöder Prozessor?
Dann sind aber libxslt 1.1.15 und Sablotron 1.0.1 gleich blöd.
Das ist nicht gänzlich auszuschleißen. ;-)
Wie bekomme ich das geschützte (U+00A0)?
 
Nö, gleicher Effekt (libxslt und Sablotron). Hätte mich auch gewundert, wenn ein XML-verarbeitendes Programm dezimale NCRs verstünde, hexadezimale aber nicht.
Gibt’s dagegen irgendein Attribut, oder habe ich den Effekt gar durch irgendwas provoziert?
Außer, dass du es ohne xsl:text versucht oder ein wenig mit CDATA und disable-output-escaping spielst, fällt mir dazu nichts ein.
Grüße
Thomas
Hello out there!
Zweite Frage:
<xsl:text> </xsl:text>
liefert in der Ausgabe ein normales Leerzeichen (U+0020). Warum?Blöder Prozessor?
Nein. Blödes Ich.
Ich _dachte_, er würde  
in ' ' U+0020 umwandeln, dabei wandelt er das in ' ' U+00A0 um. Man sollte halt genau hinschauen, um die beiden unterscheiden zu können.
Ich dachte das, weil der Firefox bei {text-align: justify
alle Leerzeichen gleich breit gemacht hatte, ich es aber vom IE gewöhnt war, dass U+00A0 bei Blocksatz nicht breiter wird, sondern die Verbreiterung nur bei U+0020 auftritt.
Also nie zuerst im Firefox testen, sondern immer erst im IE. ;-)
See ya up the road,
Gunnar