Rechercher : dans
Par :

Image dans en fond de cellule de tableau

Dernière réponse le 8 jui 2003 à 15:20:45 Mr.White, le 4 jui 2003 à 16:31:18 
 Signaler ce message aux modérateurs

Salut à toi,

Le titre est assez explicite. Je cherche à afficher une image en fond de cellule.

En faite je veut qu'il y ai une image et au centre de cette image : un nom. J'utilise du php pour codé car le nom doit pouvoir être changer.

Mais, bref il faut que j'affiche l'image indépandamment du text et donc mon idée est de mettre l'image en fond de la cellule où se trouvera le text.

J'avais déjà posé cette question (sur ce foruù ou un autres, je ne sais plus) et l'on m'avait donnée cette solution avec une feuille de style :

TD.process { background-image:url("image/process/avantVente.gif"); background-repeat:no-repeat; }


Mais ca ne marche pas. Alors j'ai besoin d'aide.

Merci !

Meilleures réponses pour « Image dans en fond de cellule de tableau » dans :
[Outlook Express] Créer papier à lettre / Insérer image de fond VoirLe papier à lettre est une fonctionnalité de Outlook Express permettant d'égayer les courriers électroniques envoyés en insérant des illustrations (images, texte, etc.) en image de fond. Créer son papier à lettre sous Outlook Express Dans la fenêtre...
Insérer une image de fond sous la grille Excel VoirVous souhaitez insérer un logo sous JPEG ou autre, sous votre grille Excel : FORMAT / FEUILLE / ARRIERE PLAN s'ouvre un panneau vous présentant vos images pour sélection.... choisissez, validez. Pour le supprimer : même procédure FORMAT /...
[Word] Image de fond VoirIl est possible sous Microsoft Word d'afficher une image en arrière-plan dans un document en cliquant sur le menu Format, puis sur Arrière-Plan et enfin sur Motifs et textures. Dans l'onglet Image, cliquer sur le bouton "Sélectionner une image"....
LaTeX - Gestion des tableaux VoirCréation de tableaux Les tableaux permettent une meilleure structuration du document, ce qui rend le document plus compréhensible et plus lisible. LaTeX fournit un environement pour créer des tableaux de façon simple : tabular. Un tableau se...

1

Marden, le 4 jui 2003 à 17:40:01
  • +1

Salut Mr,

Je te confirme que la solution avec le Style suggéré fonctionne. L'image de fond est bien cadrée en haut à gauche de chaque cellule, complétée à droite par la couleur de fond si l'image est plus petite. En l'absence de "no-repeat", l'image est répétée. Etonnant non ?
Mon test est réalisé en JS/IE pour générer le Html, donc réalisable en Php, sauf erreur de ma part.

Répondre à Marden

2

eclipse, le 4 jui 2003 à 17:56:32

Le code est effectivement bon. Fais voir un peu comment tu appelles la class, ça vient sûrement de là.

Répondre à eclipse

3

Mr.White, le 7 jui 2003 à 11:17:09

Voici le code :

<table border=0 align="center"><tr>

<td class="process" width=100 height=50 align="center">
<a class="white" href="process/listeProcessus.php?num_dt=1&num_typ=1&num_process=1&nom_process=Avant vente" target="processus"><B>Avant vente
</B></a>
</td>

Et voici la feuille de style :

TD.process { background-image:url("image/process/avantVente.gif"); background-repeat:no-repeat; }


J'espère vraiment que vous trouverez l'erreur et je vous remerci de vous pencher sur mon problème.

Répondre à Mr.White

4

bmgg4, le 7 jui 2003 à 12:30:46

Bonjour,

Essaie sans les guillemets dans l'URL de l'image

TD.process { background-image:url(image/process/avantVente.gif); background-repeat:no-repeat; } 



J'édite mes feuilles de style avec TopStyle Lite, et il ne met pas ces guillemets.

Monique
Elle est pas belle la vie ?

Répondre à bmgg4

5

Mr.White, le 7 jui 2003 à 13:04:37

Ca ne fonctionne toujours pas ! :o(

Répondre à Mr.White

6

bmgg4, le 7 jui 2003 à 13:12:05

Qu'est-ce qui ne fonctionne pas ?
Je veux dire, qu'obtiens-tu exactement comme résultat ?

Monique
Elle est pas belle la vie ?

Répondre à bmgg4

7

PhP, le 7 jui 2003 à 13:30:26

Bjr White,

Poste le code complet de toute ta page (feuille CCS y compris) : peut être références-tu mal ta feuille de style ou ta balise <STYLE>

Ha oui : tu utilises quel navigateur ? sur quel OS ?

@+

PhP    [Push the button,Don't push the
.         button,Trip the station,Change the channel]

Répondre à PhP

8

Mr.White, le 7 jui 2003 à 13:55:01

Alors, ce qui se passe c'est que les nom que je veu afficher sur l'image son là (ce qui est normale) mais tout se passe comme s'il n'y avait aucune image, c'est à dire que le tableau html est construit les nom sont au bonne place mais il n'y à pas d'image.

Le code source risque d'être fort long mais si vous insisté le voici :

Le feuille css (norme.css):


body { background-color:white; }
body.menu { background-color:dodgerblue; text-color:white; }
h3.menu { background-color:blue; font-size:20px; font-family:Verdana, sans serif; font-weidht:bold; color:white; }
h3.ssmenu { background-color:dodgerblue; font-size:17px; font-family:Verdana, sans serif; font-weidht:bold; color:white; }
h2.menu { background-color:blue; font-size:26px; font-family:Verdana, sans serif; font-weidht:bold; color:white; }
h6 { font-size:10px; font-family:Verdana, sans serif; }
h6.processus { font-size:12px; font-family:Verdana, sans serif; color:black; }

b.rouge { font-size:16px; font-family:Verdana, sans serif; font-weidht:bold; color:red; }

A { font-size:14px; font-family:Verdana, sans serif; font-weidht:bold; color:blue; }

A.white { font-size:14px; font-family:Verdana, sans serif; font-weidht:bold; color:white; }
A.red { font-size:14px; font-family:Verdana, sans serif; font-weight:bold; color:red; }
A.green { font-size:14px; font-family:Verdana, sans serif; font-weight:bold; color:green; }
a.menu { font-size:14px; font-family:Verdana, sans serif; font-weight:bold; color:white; }

A:active { color:blue; }
A:hover { font-size:14px; font-family:Verdana, sans serif; font-weight:bold; color:black; }


table.tableau { background-color:#124D95; }

TH.tete { background-color:blue; font-size:14px; font-family:Verdana, sans serif; color:white; }
TR.menu { background-color:dodgerblue; font-size:18px; font-family:Verdana, sans serif; color:white; }


TD { font-size:18px; background-color:white; }
TD.process { background-image:url(image/process/avantVente.gif); background-repeat:no-repeat; }
TD.blue { border-style:solid; border-width:2; border-color:#000000; background-color:blue; color:white;}
TD.ref { border-style:solid; border-width:2; border-color:#000000; }
TD.petit { font-size:16px; }
TD.lien { background-color:dodgerblue; color:white;}

div.liste { color:white; text-align:left; }
font.menu { font-size:20px; font-family:Verdana, sans serif; font-weight:bold; }

ol { list-style-position:inside; text-align=left; margin-left:2px;}
.lh { font-weight:bold; text-decoration:underline; }
.cadre { border-style:solid; border-width:2; border-color:#000000; }
.menu { border-style:solid; border-color:#124D95; border-width:2; background-color:#126DCE; color:white; font-size:14px; }





La page html (DT.php) :


<html>
<head>
<title>Aceuille</title>
<LINK rel="stylesheet" type="text/css" href="css/norme.css">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">

</head>


<body >
<?
$num_projet=$_GET['num_projet'];
$nom_projet=$_GET['nom_projet'];
$num_dt=$_GET['num_dt'];
$nom_dt=$_GET['nom_dt'];
?>




<table border=1 frame=void rules=none cellspacing=10>

<tr>
<td class=blue rowspan=2 valign="bottom"><h2 >Zone des PROCESS : </h2></td>
<td class=lien>Projet numero </td>
<td class=lien>Nom du projet </td>
<td class=lien>Numéro de la DT </td>
<td class=lien>Nom de la DT </td>
</tr>

<?
echo "

<tr>
<td align=\"center\">".$num_projet."</td>
<td align=\"center\">".$nom_projet."</td>
<td align=\"center\">".$num_dt."</td>
<td align=\"center\">".$nom_dt."</td>
</tr>
</table>
";

include('Include/affiche_image_processus.inc.php');
?>


<br><br>



</body>
</html>



e fichier php où j'affiche le tableau en question (affiche_image_processus.inc.php) :


<?
// Affiche les image des process et les processus correspondant lorsqu'on clique sur l'un d'eux.

// Var : $num_typ





$num_typ=$_GET[num_typ];

$db_affiche_image_processus = mysql_connect('localhost', '', '') or die('Erreur de connection');
mysql_select_db('csb', $db_affiche_image_processus) or die('Base de donnée inexistante');




// Nouvelle requette
$requette_typ_dt = "Select * from type_dt where num_typ = $num_typ";
$resultat_requette_typ_dt = @mysql_query($requette_typ_dt, $db_affiche_image_processus) or die('erreur dans la requête de récupération du typ de dt.<br>error sql :'.mysql_error());

$nb_colonnes = mysql_num_fields($resultat_requette_typ_dt);
$resultat_typ_dt = mysql_fetch_array($resultat_requette_typ_dt);
$nb_process=0;

echo '<table border=0 align="center"><tr>';

for($i=2;$i<$nb_colonnes;$i++)
{
$nb_process+=1;

$nom_process = mysql_field_name($resultat_requette_typ_dt, $i);

$requette_lien_process = "select lien from process where nom_process = \"$nom_process\"";
$resultat_requette_lien_process = @mysql_query($requette_lien_process, $db_affiche_image_processus) or die('erreur lors de la récupération du lien du process.<br>error sql :'.mysql_error());
$resultat_lien_process = mysql_fetch_array($resultat_requette_lien_process);
$lien = $resultat_lien_process['lien'];

echo '

<td class="process" width=100 height=50 align="center">
<a class="white" href=';
if($resultat_typ_dt[$nom_process]==1)
{
echo '"process/listeProcessus.php?num_dt='.$_GET[num_dt].'&num_typ='.$num_typ.'&num_process='.$nb_process.'&nom_process='.$nom_process.'" ';
}
else
{
echo '"process/processNull.php?num_typ='.$num_typ.'"';
}

echo ' target="processus"><B>'.$nom_process.'
</B></a>
</td>

';


}

echo '</tr></table>';

echo '


<br><br>




<iframe src="processus.php" name="processus" height="225" width=100% frameborder="no" border=1 scrolling="no">
Cadres local
</iframe>
';

?>

J'utilise IE.
OS?
Le serveur est APACHE avec EASYPHP.


J'espère avoir répondu à vos attentes.

Répondre à Mr.White

9

Mr.White, le 8 jui 2003 à 10:59:26
  • +1

Ca y est j'ai trouvé l'erreur à la con. Mon url était fausse car le fichier dans lequel ce code s'exécute n'est pas dans le dossier 'principale' (où j'ai l'abitude d'écrire) et donc par habitude j'ai écri mon url en chemin relatif à cette position (ce qui était faut).

Mon url resemble maintenant à ca : ../image/process/avantVente.gif.

Le problème maintenant c'est que je ne vois que la moitié de l'image. Je pense qu'il faut que je fixe la taille de ma cellule, non?

Répondre à Mr.White

10

 Mr.White, le 8 jui 2003 à 15:20:45

C'est bon. J'ai fixé la taille de ma cellule et l'image apparait entièrement.
Merci à ceux qui m'ont aidé !

Répondre à Mr.White