Couleur dans un tableau php (CSS)

Résolu/Fermé
Tydher Messages postés 123 Date d'inscription vendredi 5 juin 2009 Statut Membre Dernière intervention 17 mai 2011 - 11 juin 2009 à 10:04
pyschopathe Messages postés 1973 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 - 11 juin 2009 à 15:58
Bonjour.
J'ai un script php qui me permet d'avoir à l'écran un tableau, ce tableau est composé de 2 parties
La premiere :

echo '<table border="1" width="75%">';
echo '<tr>';
echo '<td>';
echo 'NOM';
echo '</td>';
echo '<td>';
echo 'Modification/Ajout';
echo '</td>';
echo '<td>';
echo 'Suppression';
echo '</td>';
echo '</tr>';
echo '</table>';

Celui ci me donne le nom des cellules de mon tableau en quelques sorte

Puis celui-ci, qui contient les données et les boutons :

while ($data = mysql_fetch_row($req))
{
echo '<table border="0" width="75%">';
echo '<tr>';
echo '<td>';
echo $data[0];
echo '</td>';
echo '<td>';

echo '<form method="post" action="maj_nom_entreprise.php">
<input type="hidden" name="SIRET" value="'.$data[1].'" />
<input type="text" name="NOM">
<input type="submit" value="Modifier">';
echo '</form>';
echo '</td>';
echo '<td>';
echo '<form method="post" action="suppression_totale_entreprise.php">
<input type="hidden" name="id" value="'.$data[2].'" />
<input type="hidden" name="SIRET" value="'.$data[1].'" />
<input type="submit" value="Supression entreprise">';
echo '</form>';
echo '</td>';
echo '</tr>';
echo '</table><hr size=2 color=black>';
}

J'ai un fichier CSS qui me met en page le site, cependant, j'aimerai que la couleur du texte du tableau 1 soit en noir et la couleur du texte du 2eme tableau soit d'une autre couleur.

J'ai ce code qui me met tout de la même couleur (ce que je ne veux pas):
td
{
border:1px solid black;
width:30%;
color: #ff9030;
}

Comment faire?

Merci
A voir également:

6 réponses

pyschopathe Messages postés 1973 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 135
11 juin 2009 à 10:33
Pour commencer, renseigne-toi sur la balise thead, qui désigne l'en-tête du tableau, ton code aura plus de sens. Je regarde la suite histoire de voir si je peux t'aider pour ton problème.

edit : ok, après lecture de la suite du post, il s'avère que c'est une solution parfaite à ton problème ! Tu n'as qu'à spécifier un style différent pour les tr qui se trouvent dans thead et ceux qui se trouvent dans tbody. Et tu peux même ajouter un tfoot pour ajouter des infos en bas de tableau (genre répéter les en-têtes par exemple) si besoin est ! Plus de sens, plus de confort, que demande le peuple ^^ !
0
Boukistyle Messages postés 1 Date d'inscription jeudi 11 juin 2009 Statut Membre Dernière intervention 11 juin 2009
11 juin 2009 à 10:45
Bonjour !

Le CSS permet de gérer les balises grâce à des classes ou des id !

Le mieux pour toi serait de mettre un id sur tes balises <table> :
echo '<table id="tbl_fixe">';
...
echo '<table id="tbl_dyn">';
...


Ensuite, tu peux définir indépendamment le style de chaque tableau grâce au CSS :
table#tbl_fixe td {
  color:black;
}

table#tbl_dyn td {
  color:red;
}



Voilà voilà, en espérant que ça t'aide un peu !

EDIT : Effectivement, renseigne-toi sur les thead. Pour les styles, l'exemple que je t'ai donné reste valable avec d'autres balises ;)
0
pyschopathe Messages postés 1973 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 135
11 juin 2009 à 10:49
Oui, mais dans ce cas, on se retrouve avec deux tableaux dont l'un ne sert qu'à présenter les noms des colonnes du second. Ces deux tableaux n'ont pourtant aucun lien entre eux au niveau du code. L'utilisation des balises thead et tbody, qui ont été créées précisément dans le but recherché permet de donner un sens aux données présentées.

Cependant, ta solution est tout à fait capable de fournir le même résultat à l'écran.
0
Tydher Messages postés 123 Date d'inscription vendredi 5 juin 2009 Statut Membre Dernière intervention 17 mai 2011 6
11 juin 2009 à 10:50
Ok merci de vos informations je test ca de suite ^^
0
Tydher Messages postés 123 Date d'inscription vendredi 5 juin 2009 Statut Membre Dernière intervention 17 mai 2011 6
11 juin 2009 à 10:56
Bon j'ai un petit probleme ca ne marche pas.

Dans le fichier CSS j'ai mis :

#tbl_fixe td
{
color:black;
}

#tbl_dyn td {
color:red;
}

et ds le code j'ai

echo '<table id="tbl_fixe" border="1" width="75%">';
...
echo '<table id="tbl_dyn" border="0" width="75%">';
...
0
pyschopathe Messages postés 1973 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 135
11 juin 2009 à 11:02
On te propose une solution spécifique à ta situation et une solution généraliste qui possède des inconvénients que je décris, et tu choisis la seconde... Cool !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Tydher Messages postés 123 Date d'inscription vendredi 5 juin 2009 Statut Membre Dernière intervention 17 mai 2011 6
11 juin 2009 à 11:04
J'ai essayé les deux et j'ai mis le code de la 2eme psk c'était celui que j'avais.
De plus je comprend mieux la 2eme que la première...
0
Tydher Messages postés 123 Date d'inscription vendredi 5 juin 2009 Statut Membre Dernière intervention 17 mai 2011 6
11 juin 2009 à 12:27
Merci pour ta suggestion de Thead et Tbody psycho
Sa marche impec ^^
0
pyschopathe Messages postés 1973 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 135
11 juin 2009 à 15:58
Content que ton problème soit résolu et que tu aies appris quelque chose ^^ !
0