Partager via


Exemple 3 de <xsl:if>

La règle de modèle item suivante colore en jaune une ligne sur deux du tableau.

Fichier XML (items.xml)

<?xml version='1.0'?>
<?xml-stylesheet type="text/xsl" href="ifyellow.xsl" ?>
<items>
   <item>Car</item>
   <item>Pen</item>
   <item>LP Record</item>
   <item>Wisdom</item>
   <item>Cell phone</item>
   <item>Film projector</item>
   <item>Hole</item>
   <item>Canopy</item>
   <item>Widget</item>
   <item>Concept</item>
   <item>Null character</item>
</items>

Fichier XSLT (ifyellow.xsl)

<?xml version='1.0'?>
<xsl:stylesheet version="1.0"
      xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >

<xsl:template match="/">
<html>
<body>
<table border="1" cellpadding="2" cellspacing="0" width="50%">
<xsl:apply-templates/>
</table>

</body>
</html>
</xsl:template>

<xsl:template match="item">
  <tr>
    <xsl:if test="position() mod 2 = 0">
       <xsl:attribute name="bgcolor">yellow</xsl:attribute>
    </xsl:if>
    <xsl:apply-templates/>
  </tr>
</xsl:template>

</xsl:stylesheet>

Sortie

Voici les données en sortie formatées :

Résultat mis en forme

Voici les données en sortie du processeur :

<html>

<body>

<table border="1" cellpadding="2" cellspacing="0" width="50%">

<tr>Car</tr>

<tr bgcolor="yellow">Pen</tr>

<tr>LP Record</tr>

<tr bgcolor="yellow">Wisdom</tr>

<tr>Cell phone</tr>

...

</table>

</body>

</html>

Voir aussi

Concepts

Exemple 1 de <xsl:if>

Exemple 2 de <xsl:if>

Exemple 4 de <xsl:if>