Problème d'ailgnement dans un tableau
Sandra
-
Atropa Messages postés 1940 Date d'inscription Statut Membre Dernière intervention -
Atropa Messages postés 1940 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un problème d'alignement d'image et de texte.
Dans un tableau j'ai une image et juste en dessous j'ai une description de l'image.
Il y a 4 images par ligne.
Le problème, c'est qu'en fonction de la longueur de la description, mes images ne sont plus vraiment alignées sur la hauteur.
Voici un bout de mon code :
Si quelqu'un peut me donner un coup de main svp. Merci.
J'ai un problème d'alignement d'image et de texte.
Dans un tableau j'ai une image et juste en dessous j'ai une description de l'image.
Il y a 4 images par ligne.
Le problème, c'est qu'en fonction de la longueur de la description, mes images ne sont plus vraiment alignées sur la hauteur.
Voici un bout de mon code :
<table> <tr> <td> <a href="....."><img src="....." /></a><br/> Descriptif de l'objet - Prix€ </td> </tr> </table>
Si quelqu'un peut me donner un coup de main svp. Merci.
A voir également:
- Problème d'ailgnement dans un tableau
- Tableau word - Guide
- Trier un tableau excel - Guide
- Tableau ascii - Guide
- Imprimer un tableau excel - Guide
- Tableau croisé dynamique - Guide
3 réponses
Salut, met les coms dans un td en dessous, donne une dimension a ton tableau en fonction de la taille de tes images
J'ai déjà essayé de rajouter un <td> pour les commentaires, le problème c'est qu'ils se retrouvent à la gauche de l'image... je les veux en dessous, jme suis dit, je vais essayer avec un <tr> puisque c'est un retour à la ligne...mais j'ai droit à un joli escalier comme ça.
Mon tableau a une hauteur et une largeur.
Mon tableau a une hauteur et une largeur.
<table border="2" width="300" style="border-style:double;text-align:center"> <tr> <td>image1</td> <td>image2</td> <td>image3</td> <td>image4</td> </tr> <tr> <td>com1</td> <td>com2</td> <td>com3</td> <td>com4</td> </tr> </table>
Développeur VB6, VBS, VBA, VB.NET, C#, HTML, PHP, JAVASCRIPT, SQL.
Merci de ton aide, le probleme c'est que le tout s'aafiche via du php. J'ai affiché un code simplifié, le vrai code ressemble à ça:
(dsl pour l'alignement)
echo '<table id="creation">'; // requête SQL qui ne prend que le nombre d'enregistrements nécessaire à l'affichage. $select = 'SELECT * FROM type_objet ORDER BY prix_tobjet ASC limit '.$limite.','.$nombre; /*trier par prix! */ $result = mysql_query($select,$connect) or die ('Erreur : '.mysql_error() ); if($it==1){ /*permettre d'afficher que 4x3 photos*/ echo '<tr>'; } while($objet=mysql_fetch_array($result)){ echo '<td><a href="?o='.$objet['id_tobjet'].'"><img src="'.$objet['img_tobjet'].'" class="image_crea" alt="creation" /></a><br/> '.$objet['descriptif_tobjet'].' - <b>'.$objet['prix_tobjet'].'€</b></td>'; if ($it==4){ // 4 pour quatre colonnes echo '</tr>'; $it=0; } $it++; } echo '</table>';
(dsl pour l'alignement)
bonsoir,
encore mysql_query() ca fait peur...
sinon essaie ça mais c'est pas super optimisé
encore mysql_query() ca fait peur...
sinon essaie ça mais c'est pas super optimisé
<?php function table($img,$desc) { if(empty($img)) return false; $nbCols = 4; $nbLines = ceil(count($img) / $nbCols); echo '<table id="creation">'."\r\n"; for($line = 0; $line < $nbLines ;$line++) { for($i = 0; $i <= 1;$i++) { echo "\t".'<tr>'."\r\n"; for($col = 0;$col < $nbCols;$col++) { $key = $line * $nbCols + $col; echo "\t\t".'<td>'; if($i == 0 && isset($img[$key])) echo $img[$key]; /* image */ else if($i != 0 && isset($desc[$key])) echo $desc[$key]; /* description */ echo '</td>'."\r\n"; } echo "\t".'</tr>'."\r\n"; } } echo '</table>'; } // requête SQL qui ne prend que le nombre d'enregistrements nécessaire à l'affichage. $select = 'SELECT * FROM type_objet ORDER BY prix_tobjet ASC limit '.$limite.','.$nombre; /*trier par prix! */ $result = mysql_query($select,$connect) or die ('Erreur : '.mysql_error() ); $img = array(); $desc = array(); while($objet=mysql_fetch_array($result)) { $img[] = '<a href="?o='.$objet['id_tobjet'].'"><img src="'.$objet['img_tobjet'].'" class="image_crea" alt="creation" /></a>'; $desc[] = $objet['descriptif_tobjet'].' - <b>'.$objet['prix_tobjet'].'€</b>'; } /* arrays pour test $img = array('img 1','img 2','img 3','img 4','img 5','img 6','img 7','img 8','img 9'); $desc = array('desc 1','desc 2','desc 3','desc 4','desc 5','desc 6','desc 7','desc 8','desc 9'); */ table($img,$desc); ?>