Voici une petite astuce qui permet d’obtenir alternativement une couleur par ligne dans une boucle SPIP.
Pour plus de facilité nous allons réutiliser les styles définis dans spip_style.css à savoir :
table.spip tr.row_odd {
background-color: #C0C0C0;
}
table.spip tr.row_even {
background-color: #F0F0F0;
}
assurant ainsi l’uniformité de nos tableaux sur le site.
Prenons comme exemple un tableau contenant les documents joints à un article.
<B_documents_joints>
<table class="spip">
<tr class="row_first">
<td><:telecharger:></td>
<td><:nom:></td>
<td><:extension:></td>
<td><:taille:></td>
</tr>
<BOUCLE_documents_joints(DOCUMENTS) {id_article} {doublons}>
<tr rowspan="2" class="row_[(#COMPTEUR_BOUCLE|paire)]">
<td rowspan="2">
<a href="#URL_DOCUMENT">
<img src="IMG/[(#LOGO_DOCUMENT|fichier)]" alt="[(#TITRE|textebrut)]" class="document" /></a></td>
<td>#TITRE</td>
<td>#TYPE_DOCUMENT</td>
<td>[(#TAILLE|taille_en_octets)]</td>
</tr>
<tr rowspan="2" class="row_[(#COMPTEUR_BOUCLE|paire)]">
<td colspan="3">[(#DESCRIPTIF)]</td>
</tr>
</BOUCLE_documents_joints>
</table>
</B_documents_joints>
Explications :
- Les balises <table>
sont à l’extérieur de la boucle pour permettre l’alignement des colonnes.
- Et le style est appliqué sur la balise <tr>
Pour appliquer le bon style on utilise un filtre sur #COMPTEUR_BOUCLE
qui retourne la valeur even si le total est pair et odd si le total est impair.
Ce filtre tout simple, à placer dans votre fichier mes_fonctions.php3 est le suivant :
function paire($texte) {
if($texte%2==0) $texte="even "; else $texte="odd";
return $texte;
}
Aucune discussion
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |