Aller au contenu

IE CSS Border/margin


djp1988

Sujets conseillés

Quel est l'histoire de Internet Explorer et la marge/border dans CSS? Il semblerai que IE ajoute quelques pixels en taille à ces propriétés par défault, je construis un site ou la taille des div, marges, borders est vraiment précis à 1 pixel près et évidament dans IE, c'est totalement déformer, alors comment puis je régler ca?

Lien vers le commentaire
Partager sur d’autres sites

Un conseil que l'on m'avait donné au cours c'est de définir les valeurs en px directement.

En fait je sais bien que sur certaines propriétés de balise, on avait remarqué que par exemple "large" sous FF c'était 5px (j'invente mais c'est pour l'exemple) alors que sous IE c'etait 6px disons ;)

Du coup, on observait plein de décalage etc...

Regarde si ton problème ne viendrait pas d'un truc ainsi?

Au sinon on m'avait toujours dit de blinder mon code sans utiliser des valeurs par defaut du navigateur qui ne sont pas forcément le même entre les dfférents browser :)

Je ne sais pas si ca peut t'aider mais c'est tout ce que je peux t'apporter... ;)

Lien vers le commentaire
Partager sur d’autres sites

Salut,

Bon alors :

a) IE, si on ne précise pas un doctype qui le mette en mode strict, fait un affichage en mode quirks, et son mode de calcul des dimensions n'est pas le même que ce que dit la spécification dans ce domaine. Fais une recherche sur "box model" ou "modèle de boîte", et utilise un doctype xhtml 1.0 (par exemple) pour être en mode strict

B) on utilise couramment, au début des feuilles de style, une technique appelée le "white-space reset", qui consiste à remettre à 0 toutes les valeurs de margin et padding par défaut

*
{
margin : 0;
padding : 0;
}

ce qui évite d'être dépendant des valeurs de margin/padding par défaut des navigateurs, qui ne sont pas nécessairement les mêmes d'un navigateur à l'autre.

Ca répond à tes questions ?

Lien vers le commentaire
Partager sur d’autres sites

en faite regardez ici le site sous IE et puis en FF, igniorez le fond jaune, maiss ce qui est embétant c'est l'espacement entre les 3 colonnes qui est plus grand sous IE et donc la derniere colonne a droite se décalle en bas (j'ai un div englobant les 3 div pour le centrer et aussi pour donner la bonne width par rapport au banniere.

http://www.buildingblocksoftheweb.com/

Lien vers le commentaire
Partager sur d’autres sites

Effectivement, il est difficile de presenter feratines choses de la même maniere sur les deux navigateurs.

Helas, IE ne respecte pas les normes a 100ù de la 3wc.

Il faut donc souvent faire des ajustements.

J'ai cependant ragerder ton code sources surtout, ton fichier css global.css

Il faut a mon avis reprendre tes dispositions en utilisant effectivement les css et eviter les choses du genre : <div align="center">,

Il faut definir chaque capsule par des css (position, disposition, comportement, ...)

Merci.

Lien vers le commentaire
Partager sur d’autres sites

IE, si on ne précise pas un doctype qui le mette en mode strict, fait un affichage en mode quirks

Marvin, je suis parfaitement d'accord avec ton argumentation, sauf sur ce point : c'est juste l'ajout d'un doctype qui fait switcher IE du mode quirks au mode W3C. Le fait que le doctype soit strict ou transitional n'y change rien.

Lien vers le commentaire
Partager sur d’autres sites

Marvin, je suis parfaitement d'accord avec ton argumentation, sauf sur ce point : c'est juste l'ajout d'un doctype qui fait switcher IE du mode quirks au mode W3C. Le fait que le doctype soit strict ou transitional n'y change rien.

C'est beaucoup plus compliqué que ça. Le fait de mettre un doctype ne suffit, pas, ça dépend de quel doctype (version, strict ou pas, URL ou pas...)

Quelques références:

- La doc MS (c'est quand même eux qui ont inventé cette horreur)

http://msdn2.microsoft.com/en-us/library/b...ncements_topic2

- La doc Firefox:

http://developer.mozilla.org/en/docs/Mozil...OCTYPE_sniffing

- La doc Opera:

http://www.opera.com/docs/specs/doctype/

- Un petit récapitulatif:

http://hsivonen.iki.fi/doctype/

Bon courage!

Jacques.

Lien vers le commentaire
Partager sur d’autres sites

C'est beaucoup plus compliqué que ça. Le fait de mettre un doctype ne suffit, pas, ça dépend de quel doctype (version, strict ou pas, URL ou pas...)

Quelques références:

- La doc MS (c'est quand même eux qui ont inventé cette horreur)

http://msdn2.microsoft.com/en-us/library/b...ncements_topic2

Justement, je lis ici qu'à partir d'un doctype HTML 4.0, quel que soit son type (frameset, transitional ou strict), l'interprétation est en mode "respact des standards".

Lien vers le commentaire
Partager sur d’autres sites

_AT_captain_torche : j'ai dit "un doctype qui le mette en mode strict", pas "un doctype strict". Il y a certains doctypes qui font passer ie en mode strict (notamment tout doctype xhtml, qu'il soit strict ou pas), d'autres qui le laissent en mode quirks. Tu as simplement mal interprété mes mots :D

Lien vers le commentaire
Partager sur d’autres sites

Au temps pour moi, alors ;) Désolé.

Mais le lien que jcaron a posté montre que IE passe en mode "strict" (je préfère parler de "respectueux des standards", pour éviter toute confusion), avec tout doctype (correctement rédigé) supérieur à HTML 3 (et je doute qu'il soit encore utilisé pour la création de sites :lol:)

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...