J'ai fait l'erreur cardinale de ne pas déboguer sur TOUS les navigateurs lors de la conception de mon site. Dans Firefox (3.6.10) et IE8 les éléments de formulaire s'affichent bien mais en chrome (10), seule la position: les éléments absolus s'affichent.Position: Absolue Withing Position: Relatif dans Chrome
J'ai une forme faite à partir d'une liste non ordonnée. Les éléments de la liste sont configurés avec la position: relative. il contient une étiquette flottante gauche, un champ flottant droit et, potentiellement, une position: widget absolu.
HTML:
<form><ul>
<li>
<label>Name</label>
<input type="text" />
<a id="nameGenerator" class="widget"></a>
</li>
</ul></form>
CSS:
form ul li{
margin: 5px;
clear: both;
position:relative;
}
form label{
float:left;
margin-top: 0px;
margin-bottom: 0px;
}
form input{
float:right;
margin-top: 0px;
margin-bottom: 0px;
}
form .widget{
position: absolute;
top: 0;
right: 0;
z-index: 99;
}
je peux "réparer" en supprimant la position: relative, mais qui est inacceptable. Y a-t-il quelque chose que je puisse faire pour produire les résultats souhaités?
Et quels sont les résultats souhaités? Peut-être mis en place et exemple? – easwee
@Myles, il est inacceptable car il oblige tous les éléments de position absolue à coller en haut de l'écran, pas rester dans leur élément de liste respectifs. –
@Myles Gray - position: statique est le positionnement par défaut - pas relatif. Il a besoin que le li soit relatif puisque chacun doit être son propre parent au widget sinon il se positionne par rapport au corps et non à li. – easwee