2009-05-04 8 views

Répondre

67

Selon Box Model:

  • S'il n'y a qu'une seule valeur, il en va de tous les côtés.
  • S'il y a deux valeurs, les haut en bas et marges sont définies à la première valeur et la droite et à gauche marges sont définies à la seconde.
  • Si il y a trois valeurs, la supérieure est fixé à la première valeur, la gauche et droit sont mis à la seconde, et le fond est fixé à la troisième.
  • S'il y a quatre valeurs, ils appliquent à la haut, droit, bas et gauche, respectivement.
body { margin: 2em }   /* all margins set to 2em */ 
body { margin: 1em 2em }  /* top & bottom = 1em, right & left = 2em */ 
body { margin: 1em 2em 3em } /* top=1em, right=2em, bottom=3em, left=2em */ 

Il est défini par la norme CSS, il devrait donc être cohérente dans tous les navigateurs qui implémente CSS correctement. Pour les compatibilités du navigateur, consultez les pages CSS Support History et quirksmode de blooberry. Selon blooberry, margin a d'abord été implémenté dans IE3, donc IE6 devrait être bien.

+0

Toute idée de tous les navigateurs suit cela? –

+0

Umm, pas sûr si "standard" signifie tous les navigateurs ... je souhaite cependant. –

+3

marge a toujours été mis en œuvre de cette façon. Cela devrait fonctionner pour tous les navigateurs qui sont toujours là. –

11

Pour la marge et le rembourrage, vous pouvez spécifier un, deux, trois ou quatre valeurs séparées par des espaces:

  1. Une valeur: Les quatre côtés utilisent cette valeur.
  2. Deux valeurs: haut/bas obtenir la première valeur; gauche/droite obtenir le second
  3. Trois valeurs: top obtient le premier, gauche/droite obtenir le second, fond obtient la troisième
  4. Quatre valeurs: haut, à droite, en bas, à gauche (c'est à diredans le sens horaire de midi) obtenir chaque valeur
2

margin: 5px 0; signifie margin: 5px 0 5px 0;

margin: 5px 0 0; signifie margin: 5px 0 0 0;

Tous les navigateurs suivent cela, y compris IE 6.