Bonjour à tous !
J'ai un tableau qui affiche le résultat d'une requête SQL.
Sur chaque ligne, la dernière cellule affiche 2 liens qui permettent d'éditer la ligne en cours ou d'afficher une page pour le détails.
Pour éviter d'avoir des liens avec des paramètres (GET), j'ai opté pour une solution du genre de celle-ci :
Ce qui me donne un lien mais qui valide en fait un formulaire.
De plus j'en ai 2 dans la cellule :
Pour pouvoir les mettre l'un à coté de l'autre, j'ai utilisé des div.
Ce qui donne avec le tableau :
Voici le CSS associé :
Dans FF, tout va bien.
Mais dans IE, non seulement les lignes ont une hauteur différente de FF (plus larges), mais en plus, les liens des formulaires ne sont pas verticalement centrés.
Si vous avez une suggestion, ou encore mieux une solution, je suis ouvert à toutes critiques !
Merci !
Modifié par geeko (09 Sep 2010 - 17:49)
J'ai un tableau qui affiche le résultat d'une requête SQL.
Sur chaque ligne, la dernière cellule affiche 2 liens qui permettent d'éditer la ligne en cours ou d'afficher une page pour le détails.
Pour éviter d'avoir des liens avec des paramètres (GET), j'ai opté pour une solution du genre de celle-ci :
<form name="myform_1" id="myform_1" action="mapage.php" method="post">
<input type="hidden" name="op" id="op" value="card" />
<input type="hidden" name="type" id="type" value="settings" />
<input type="hidden" name="action" id="action" value="edit" />
<input type="hidden" name="num" id="num" value="010" />
<a href='javascript: document.getElementById("myform_1").submit();'>Lien 1</a>
</form>
Ce qui me donne un lien mais qui valide en fait un formulaire.
De plus j'en ai 2 dans la cellule :
<form name="myform_1" id="myform_1" action="mapage.php" method="post">
<input type="hidden" name="op" id="op" value="card" />
<input type="hidden" name="type" id="type" value="settings" />
<input type="hidden" name="action" id="action" value="edit" />
<input type="hidden" name="num" id="num" value="010" />
<a href='javascript: document.getElementById("myform_1").submit();'>Lien 1</a>
</form>
<form name="myform_1" id="myform_2" action="<{$action_url}>" method="post">
<input type="hidden" name="op" id="op" value="card" />
<input type="hidden" name="type" id="type" value="block" />
<input type="hidden" name="action" id="action" value="edit" />
<input type="hidden" name="num" id="num" value="010" />
<a href='javascript: document.getElementById("myform_2").submit();'>Lien 2</a>
</form>
Pour pouvoir les mettre l'un à coté de l'autre, j'ai utilisé des div.
Ce qui donne avec le tableau :
<td style="vertical-align: middle; text-align: center;" >
<div class='btn_1'>
<form name="myform_1" id="myform_1" action="mapage.php" method="post">
<input type="hidden" name="op" id="op" value="card" />
<input type="hidden" name="type" id="type" value="settings" />
<input type="hidden" name="action" id="action" value="edit" />
<input type="hidden" name="num" id="num" value="010" />
<a href='javascript: document.getElementById("myform_1").submit();'>Lien 1</a>
</form>
</div>
<div class='btn_2'>
<form name="myform_1" id="myform_2" action="mapage.php" method="post">
<input type="hidden" name="op" id="op" value="card" />
<input type="hidden" name="type" id="type" value="block" />
<input type="hidden" name="action" id="action" value="edit" />
<input type="hidden" name="num" id="num" value="010" />
<a href='javascript: document.getElementById("myform_2").submit();'>Lien 2</a>
</form>
</div>
</td>
Voici le CSS associé :
.btn_1 {
display: block;
float: left;
vertical-align: middle;
}
.btn_2 {
display: block;
float: right;
vertical-align: middle;
}
Dans FF, tout va bien.
Mais dans IE, non seulement les lignes ont une hauteur différente de FF (plus larges), mais en plus, les liens des formulaires ne sont pas verticalement centrés.
Si vous avez une suggestion, ou encore mieux une solution, je suis ouvert à toutes critiques !
Merci !
Modifié par geeko (09 Sep 2010 - 17:49)