Hallo,
<xsl:result-document href="KapitelA.html">
<xsl:template match="Kapitel[@id='1']" name="KapitelA" priority="1.">
<p>
<h3>
<xsl:value-of select="KapitelUeberschrift" />
</h3>
<br /><!-- Hier wird das Template aufgerufen, mit dem das Bild für dieses Kapitel geladen wird. -->
<xsl:apply-templates select="KapitelBild[@nr='1']" />
<br />
<xsl:value-of select="KapitelBild[@nr='1']" />
</p>
</xsl:template><!-- Hier wird das Bild für KapitelA aufgerufen. -->
<xsl:template match="KapitelBild[@nr='1']" name="BildKapitelA">
Es ist überflüssig "[@nr='1']" zu verwenden, da du beim apply-templates das Template explizit nur für "[@nr='1']" aufrufst. So kannst du dir eine Menge redudanten Templates sparen.
Aus sonst erscheint mir, dass du sehr viel unnötig codest, denn du kannst deine Templates mit Paramter versehen, diese entsprechnd beim Aufruf setzen und dann brauchst du mehrfache Templates die eigentlich alle dasselbe machen.
<img src="Bilder/{@src}" alt="{@src}" width="{@width}" heigth="@height" />
</xsl:template>
</xsl:result-document>Bei der HTML-Datei, die erzeugt wird, wird nur die KapitelUeberschrift angezeigt und der Bildname. Leider wird nicht auf das interne CSS zu gegriffen und das Bild wird auch nicht angezeigt. Woran könnte das liegen?
Zu CSS: dein Ergebnisdokument beginnt mit <p>, d.h. alles was vorher in der HTML-Datei stehen sollte fehlt.
Zu Bild: überprüfe wohin dein KapitelA.html gespeichert wird, von dem Verzeichnis aus gesehen wird der Pfad zum Bild gesetzt.
Außerdem ist dein Tamplge nicht korrekt: --> heigth="@height".
Und außerdem, sind die Infos (der Code) leider zu wenig um alles nachvollziehen zu können.
Grüße
Thomas