8792 sujets

Développement web côté serveur, CMS

Bonsoir,

j'ai un petit soucis au niveau de la mise en page... je vous explique:

je viens de creer une page pour afficher des produits par db MySQL.
Mon pb est que le rendu est different sur FF et IE.

http://www.lydiecoiffure.com/produits.php

Code PHP
<?
include "connexion.php";
$r1=mysql_query("select * from shampooing");
echo "<div id='espace_produits'>";
while($rep1=mysql_fetch_array($r1)){
echo "<form action='' method='post'>";
echo "<dl class='float-right'>";
echo "<dt>".$rep1["titre"]."</dt>";
echo "<dd><img src='".$rep1["image"]."' alt='".$rep1["alt"]."' /></dd>";
echo "<dd><em>".$rep1["marque"]."</em></dd>";
echo "<dd>".$rep1["desc1"]."</dd>";
echo "<dd>".$rep1["desc2"]."</dd>";
echo "<dd id='prix'>".$rep1["prix"]." &euro;</dd>";
echo "<dt id='quantite'>";
echo "<select name='nbr' size='1'>";
	echo "<option>1</option>";
	echo "<option>2</option>";
	echo "<option>3</option>";
	echo "<option>4</option>";
	echo "<option>5</option>";
	echo "<option>6</option>";
	echo "<option>7</option>";
	echo "<option>8</option>";
	echo "<option>9</option>";
echo "</select>";
echo "</dt>";
echo "<dd id='add'>";
	echo "<input name='add' type='submit' value='Ajouter' />";
echo "</dd>";
echo "</dl>";
echo "</form>";
}
echo "</div>";
?>


Code CSS
#espace_produits{
margin: 0 0 0 170px;
padding: 0 0 0 0;
width: 680px;
border: 1px solid #000;
}
dl.float-right{
border: 1px solid #000;
background-color: #ddd;
width: 200px;
text-align: center;
padding: 0;
float: left;
margin: 0 0 5px 5px;
}

.float-right dt{
font: bold 15px Verdana, Helvetica, sans-serif;
background-color: #F2814A;
color: #FFF;
padding: 2px 5px;
margin-bottom: 10px;
}

.float-right dd img{
border: 1px solid #000;
height: 80px;
}

.float-right dd{
margin: 0;
padding: 0 10px 5px 10px;
font: normal 12px Arial, Helvetica, sans-serif;
}
#add{
float: right;
}
#quantite{
float: right;
background-color: #ddd;
padding: 0 30px 0 0;
}
#prix{
font: bold 18px Arial, Helvetica, sans-serif;
color: #000;
}

Modifié par JBENs (02 May 2007 - 00:03)
ou tu a des float:left ou right ajouter display:inline et dit moi si ca marche ^^
Bonjour tt le monde,

Cygnus:
En fait j'ai fais la structure en html avant de le transformer en PHP.
Le probleme peut venir du fait que j'ai mis des id="..." ? meme si sur le code de ma page les id n'apparaissent qu'une seule fois?

Viva:
Je testerai ce soir ta solution mais je remplace les float par les display ou je l'ajoute?

Merci pour ces infos je testerai ca ce soir.

Cordialement, JBENs
Je viens d'essayer vos deux methodes, malheureusement aucune des deux ne fonctionnent Smiley sweatdrop

j'ai toujours ce decalage des bloc sur IE que je n'est pas sur FF.

si quelqu'un a une petite idée je suis preneur !
Modifié par JBENs (02 May 2007 - 19:44)
Voila c'est bon j'ai trouvé !!! Smiley biggrin

le probleme venait de <form>... le placant a l'exterieur du cadre "float-right" IE (mon copain Smiley fache ) comprenait pas...

Je l'ai donc déplacé pour le mettre à l'interieur du cadre et miracle !
http://www.lydiecoiffure.com/shampooings.php

Merci qd meme pour ces quelques informations.

J'ai encore une petite question resté en suspen:

Lorsque l'on crée un code en PHP qui va répéter autant de fois le nombre d'infos situé dans la base de donnée (un peu comme mon code situé plus haut), peut-on utilisé des id="" ou faut-il privilégié les class="" ?
Modifié par JBENs (03 May 2007 - 10:11)