Posez votre question Signaler

Tableau coloré une ligne sur deux

netsupra - Dernière réponse le 6 déc. 2010 à 14:39
Bonjour,
Sur mon site internet, je souhaiterais afficher une liste de produit avec une ligne colorée sur deux. Après recherches, je ne sais pas coment faire (pour colorer une ligne sur deux).
Est il possible qu'au passage de la souris, cette ligne se colore de facon plus prononcée?

Merci,
netsupra
Lire la suite 

Tableau coloré une ligne sur deux »

9 réponses
Réponse
+8
moins plus
Imagine que tu génères des lignes provenant d'un $tableau (la variable qui récupère les données Sql à mettre dans un tableau=.
Tu fais une boucle avec un compteur $i qui s'incrémente de 1 à chaque nouvelle ligne (donc à chaque nouvelle valeur sortie du $tableau).
$i sera donc le numero de la ligne du tableau.
Et bien arrange toi pour que si $i est impair la ligne soit jaune, et si $i est pair, la ligne soit rouge.

Pour ça utilises l'opérateur modulo %
Par exemple
1%2=1
2%2=0
3%2=1
Avec ça tu arrives à savoir si un nombre est pair ou impair.

C'est une idée comme une autre pour faire ça, je ne dis pas que c'est la meilleure solution .... mais là je vois rien d'autre.



Kilian, débutant en tâche de fond.....
Ajouter un commentaire
Réponse
+5
moins plus
Salut,

Oui, il va falloir que tu apprennes la façon de fonctionner des feuilles de style Css si tu ne connais pas déjà. Tu définis deux classes différentes pour tes tableaux, et une ligne sur deux tu appliques telle ou telle classe à ton tableau.
Une intro au Css=> http://www.commentcamarche.net/css/cssintro.php3

Et pour ce qui est d'un changement de couleur au passage de la souris, je pense que tu peux régler ça en javascript avec l'évenement onMouseOver.
Si tu veux de bonnes bases de Javascript au cas où:
http://www.commentcamarche.net/javascript/jsintro.php3

Kilian, débutant en tâche de fond.....
Ajouter un commentaire
Réponse
+1
moins plus
killian,
décidement, tu es mon sauveur.
Pour le css j'ai déjà les bases mé je ne comprend pas ce que tu veux dire :
ce n'est pas le texte que je veux colorer mais la cellule du tableau...
Merci
Ajouter un commentaire
Réponse
+0
moins plus
au fait, mon tableau est généré à partir d'une reponse à une requete mysql
Ajouter un commentaire
Réponse
+0
moins plus
Oui, c'est bien ce que j'entendais.

Il suffit d'utiliser la propriété "background-color" pour td.

Un exemple avec une couleur utilisée sur ce site:
<table>
<tr>
         <td style="background-color:#8997D4">Ah! Une case bleue foncée, tirant sur le violet</td>
</tr>
</table>


Voilà, bon là j'insère le Css dans l'Html, mais ce sera bien plus pratique
avec des classes: ( http://www.commentcamarche.net/css/cssclass.php3 )

Kilian, débutant en tâche de fond.....
Ajouter un commentaire
Réponse
+0
moins plus
Oui mais comment faire dans le code php pour qu'une seule ligne sur deux soit coloré
Ajouter un commentaire
Réponse
+0
moins plus
ok merci je vais essayer
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour j'ai la solution pour toi PHP !!!

tu défini une class CSS :

// si ce sont des images 

// fond alternée #1 
$bg1 = 'img_1.png'; 
// fond alternée #2 
$bg2 = 'img_2.png'; 
// fond alternée #3 
$bg = '#000'; 

// si c'est simplement de la couleur 

// couleur alternée #1 
$bG1= '#CCC'; 
// couleur  alternée #2 
$bG2= '#FEF'; 
// couleur  alternée #3 
$bG = '#000';


// pour te donner un exemple ou va faire une variable $nom pour afficher

$nom=array("TOTO","TITI","TUTU","TYTY","TETE");


ensuite tu déclare la condition dans ta boucle (foreach/while/for) :

*ici dans le cas exemple çà seras une boucle for :

for($i=0;$i<$nom;$i++){ 

// la tu déclare la fonction de changement de couleur ( dans cette exemple j'ai choisi des couleurs) 

if ($bG == $bG1) { $bG = $bG2; }else{ $bG = $bG1; } 

echo '<div style="background-color:'.$bG.'">'.$nom[$i].'</div>'; 

}


Voilà en espérant que tu auras compris le principe ... :)
Ajouter un commentaire
Réponse
-3
moins plus
Bonjour,

Tu peux aussi le faire comme ça :

DO while not eof
' Gestion de la couleur de la ligne
If Bln_Row_Color Then
Str_Row_Color = "#BAE2E3"
Else
Str_Row_Color = ""
End If
' Affectation du complément pour changer la couleur de la prochaine ligne
Bln_Row_Color = Not Bln_Row_Color
<tr BGCOLOR=Str_Row_Color>
<td>
</td>
</tr>

etc .....

Ajouter un commentaire
Ce document intitulé « tableau coloré une ligne sur deux » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?