Rechercher : dans
Par :

Couleur dans un tableau php (CSS)

Dernière réponse le 11 jun 2009 à 15:58:08 Tydher, le 11 jun 2009 à 10:04:31 
 Signaler ce message aux modérateurs

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

Configuration: Windows XP
Firefox 3.0.10

Meilleures réponses pour « Couleur dans un tableau php (CSS) » dans :
Trier un tableau sans utiliser la fonction sort VoirTrier un tableau sans utiliser la fonction sort D'abord on initialise une variable $max avec la 1ère valeur de tableau. Ensuite on va faire une boucle tant que le tableau contient encore des éléments. C'est avec la fonction splice qui a le rôle...
CSS - Les couleurs VoirLes couleurs Le standard CSS propose différentes façons de définir des couleurs : par un nom avec la notation hexadécimale avec la notation décimale Appel d'une couleur par son nom Le langage HTML définit des noms pour un nombre limité de...
Feuilles de style - CSS VoirPrésentation des feuilles de style Le concept de feuilles de style est apparu en 1996 avec la publication par le W3C d'une nouvelle recommandation intitulée « Cascading StyleSheets » (feuilles de style en cascade), notée CSS. Le principe des...

1

pyschopathe, le 11 jun 2009 à 10:33:39

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 ^^ !

Répondre à pyschopathe

2

Boukistyle, le 11 jun 2009 à 10:45:57

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 ;)

Répondre à Boukistyle

3

pyschopathe, le 11 jun 2009 à 10:49:48

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.

Répondre à pyschopathe

4

Tydher, le 11 jun 2009 à 10:50:17

Ok merci de vos informations je test ca de suite ^^

Répondre à Tydher

5

Tydher, le 11 jun 2009 à 10:56:25

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%">';
...

Répondre à Tydher

6

pyschopathe, le 11 jun 2009 à 11:02:41

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 !

Répondre à pyschopathe

7

Tydher, le 11 jun 2009 à 11:04:15

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...

Répondre à Tydher

8

Tydher, le 11 jun 2009 à 12:27:18

Merci pour ta suggestion de Thead et Tbody psycho
Sa marche impec ^^

Répondre à Tydher

9

 pyschopathe, le 11 jun 2009 à 15:58:08

Content que ton problème soit résolu et que tu aies appris quelque chose ^^ !

Répondre à pyschopathe
Collection CommentÇaMarche.net