28173 sujets

CSS et mise en forme, CSS3

Bonjour,

Je m'apperçois dans ma mise en page que pour positionner les éléments, il faut que je prévois sous IE 6SP2 (XP) que 1 vaut 2.

Est-ce normal ? Sachant que sous Opéra, 1 vaut bien 1...

donc, si je fais :
.truc {margin-left:10px;}


Sous Opéra, c'est bien à 10 et 20 sous IE.

Merci d'avance pour votre coopération.

Cordialement,
Gil DERENNE
Ingénieur du son
http://www.studio-db.net (en travaux Smiley lol )
Salut,

gderenne a écrit :

Est-ce normal ?


Eh oui Smiley biggrin
http://www.test.blog-and-blues.org/haslayout/

Pas vraiment de solution sauf une feuille de style corrective pour IE que l'on appelle via un commentaire conditionnel

<!--[if IE]>
<link rel="stylesheet" type="text/css" media="screen" href="pour_IE.css" />
<![endif]-->


et où tu mets des 1/2 marges en laissant le bug lié au haslayout rétablir la situation.
Salut,

Merci d'avoir répondu si rapidement...

Sait-on si Microsoft va continuer a soutenir son bug ou va-t-il enfin faire en sorte que 1 valle 1 ?

@bientot

Cordialement,
Gil DERENNE
Ingénieur du son
http://www.studio-db.net (en travaux Smiley lol )
Salut,

Je ne sais pas dans quel cas tu as constaté ce double margin, mais il y a de bonne chance que ce soit concernant un élément en "float".
Il existe en effet un bug d'IE où les marges horizontales sont doublées si l'élément est en float, cf : Doubled Float-Margin Bug.
La solution consiste simplement à ajouter display:inline;
Par exemple
 .truc {
     display: inline;
     float:left;
     margin-left:10px;
}

Modifié par Alan (12 Apr 2006 - 00:50)
Salut,

Génial, l'ajout de Display:inline; à résolu le problème.

Y a t-il un vis caché d'utiliser display:inline; alors qu'il n'est pas necessaire de s'en servir normalement ?

@bientot

Cordialement,
Gil DERENNE
Ingénieur du son
http://www.studio-db.net (en travaux Smiley lol )
Dois-je refaire mon fichier CSS total en rapport à la modification majeure qu'apporte la résolution de bug : DISPLAY:INLINE; ou un simple ajout de cette solution réoud le problème et ne touche à rien d'autre ?
Oui tu mets juste display:inline et ça résoud le problème pour IE et ça ne change rien pour les autres.

pas de VICE caché Smiley cligne