| |
5. 5. 4. Set table cell style with choose statement |
|
File: Data.xml
<?xml version="1.0"?>
<list xml:lang="en">
<title>title 1</title>
<listelement>element 1</listelement>
<listelement>element 2</listelement>
<listelement>element 3</listelement>
<listelement xml:lang="sw">element 4</listelement>
<listelement xml:lang="en-gb">element 5</listelement>
<listelement xml:lang="zu">element 6</listelement>
<listelement xml:lang="jz">element 7</listelement>
</list>
File: Transform.xslt
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/>
<xsl:template match="/">
<html>
<head>
<title>
<xsl:value-of select="list/title"/>
</title>
</head>
<body style="font-family: sans-serif; color: white;">
<h1 style="color: black;">
<xsl:value-of select="list/title"/>
</h1>
<table border="1" cellpadding="5"
style="font-weight: bold;">
<xsl:for-each select="list/listelement">
<tr>
<td>
<xsl:attribute name="style">
<xsl:choose>
<xsl:when test="position() mod 4 = 0">
<xsl:text>background: yellow; color: black;</xsl:text>
</xsl:when>
<xsl:when test="position() mod 4 = 1">
<xsl:text>background: blue;</xsl:text>
</xsl:when>
<xsl:when test="position() mod 4 = 2">
<xsl:text>background: white; color: black;</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:text>background: black;</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
<xsl:value-of select="."/>
</td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
Output:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>title 1</title>
</head>
<body style="font-family: sans-serif; color: white;">
<h1 style="color: black;">title 1</h1>
<table border="1" cellpadding="5" style="font-weight: bold;">
<tr>
<td style="background: blue;">element 1</td>
</tr>
<tr>
<td style="background: white; color: black;">element 2</td>
</tr>
<tr>
<td style="background: black;">element 3</td>
</tr>
<tr>
<td style="background: yellow; color: black;">element 4</td>
</tr>
<tr>
<td style="background: blue;">element 5</td>
</tr>
<tr>
<td style="background: white; color: black;">element 6</td>
</tr>
<tr>
<td style="background: black;">element 7</td>
</tr>
</table>
</body>
</html>
|
|
|