我有一个XSL / XML解析器来生成HTML代码。
xml是这样的。
<root>
<a>
<url> http://image.jpg </url>
<x> 100 </x>
<y> 200 </y>
...
</a>
</root>
和XST应该是这样的。我希望在样式中使用xml节点的值定义背景URL。我该怎么办?
<xsl:template match="root">
<xsl:for-each select="a">
<div class="crop_image" style="background:url("<xsl:value-of select="url"/>") -<xsl:value-of select="x"/>px -<xsl:value-of select="y"/>px">"</div>
</xsl:for-each>
</xsl:template>
由于
答案 0 :(得分:2)
您正在寻找的是“属性值模板”,它允许您将XML中的值直接写入属性
<xsl:template match="root">
<xsl:for-each select="a">
<div class="crop_image" style="background:url({url}) -{x}px -{y}px">"</div>
</xsl:for-each>
</xsl:template>
花括号表示要计算的表达式,而不是字面输出,因此{url}
例如将在输出中替换为http://image.jpg
。