margin-left
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
La propriété CSS margin-left
d'un élément définit l'espace horizontal à gauche qui formera la zone de marge à gauche de l'élément. On peut avoir une marge gauche négative qui rapproche l'élément de ses voisins ou une marge positive qui l'en écarte.
Exemple interactif
Les marges verticales de deux boîtes adjacentes peuvent fusionner entre elles. C'est ce qu'on appelle la fusion de marges.
Dans certains cas où la largeur est sur-contrainte (autrement dit quand width
, margin-left
, border
, padding
, la taille de la zone de contenu et margin-right
sont toutes définies), margin-left
est ignorée. La valeur calculée sera la même que si auto
avait été utilisée.
Syntaxe
/* Valeurs de longueur */
/* Type <length> */
margin-left: 10px; /* Une longueur absolue */
margin-left: 1em; /* Une longueur absolue relative à la taille du texte */
margin-left: 5%; /* Une marge dont la taille est relative à la largeur
du bloc englobant */
/* Valeur avec un mot-clé */
margin-left: auto;
/* Valeurs globales */
margin-left: inherit;
margin-left: initial;
margin-left: revert;
margin-left: revert-layer;
margin-left: unset;
La valeur de cette propriété peut être le mot-clé auto
, une longueur (<length>
) ou un pourcentage (<percentage>
). La valeur peut être positive, nulle ou négative.
Valeurs
<length>
-
La taille de la marge, exprimée comme une valeur fixe.
<percentage>
-
La taille de la marge exprimée avec un pourcentage relatif à la dimension du bloc englobant sur l'axe en ligne (qui correspond à la largeur pour une langue écrite horizontalement, voir
writing-mode
). auto
-
Un mot-clé qui indique que la marge gauche s'adapte à l'espace restant. Cet espace est principalement défini par le mode de disposition utilisé. Si
margin-left
etmargin-right
valent toutes les deuxauto
, m'espace calculé sera réparti de façon équitable. Le tableau suivant précise les différents cas :Valeur de display
Valeur de float
Valeur de position
Valeur calculée pour auto
Commentaires inline
,inline-block
,inline-table
N'importe laquelle static
ourelative
0
Disposition en ligne block
,inline
,inline-block
,block
,table
,inline-table
,list-item
,table-caption
N'importe laquelle static
ourelative
0
sauf simargin-left
etmargin-right
valentauto
. Dans ce cas, la valeur utilisée sera celle qui permet de centrer l'élément au sein de l'élément parent.Disposition en bloc block
,inline
,inline-block
,block
,table
,inline-table
,list-item
,table-caption
left
ouright
static
ourelative
0
Disposition en bloc avec les éléments flottants N'importe quelle table-*
, sauftable-caption
N'importe laquelle N'importe laquelle 0
Les éléments table-*
n'ont pas de marge, il faut utiliserborder-spacing
à la place.N'importe laquelle, sauf flex
,inline-flex
, outable-*
N'importe laquelle fixed
ouabsolute
0
sauf simargin-left
etmargin-right
valentauto
. Dans ce cas, la valeur utilisée sera celle qui permet de centrer la boîte de bordure dans la zone de largeur disponible si elle fixée.Positionnement absolu. flex
,inline-flex
N'importe laquelle N'importe laquelle 0
, sauf s'il reste de l'espace libre. Dans ce cas, l'espace restant sera distribué de façon équitable entre toutes les marges avecauto
.Boîtes flexibles.
Définition formelle
Valeur initiale | 0 |
---|---|
Applicabilité | tous les éléments exceptés ceux dont les types display pour les tableaux ne sont pas table-caption , table et inline-table . S'applique aussi à ::first-letter . |
Héritée | non |
Pourcentages | se rapporte à la largeur du bloc contenant |
Valeur calculée | le pourcentage tel que spécifié ou une longueur absolue |
Type d'animation | une longueur |
Syntaxe formelle
margin-left =
<length-percentage> |
auto |
<anchor-size()>
<length-percentage> =
<length> |
<percentage>
<anchor-size()> =
anchor-size( [ <anchor-name> || <anchor-size> ]? , <length-percentage>? )
<anchor-name> =
<dashed-ident>
<anchor-size> =
width |
height |
block |
inline |
self-block |
self-inline
Exemples
Les valeurs en pourcentage pour margin-left
sont relatives à la taille en ligne du conteneur.
CSS
.exemple {
margin-left: 50%;
}
HTML
<p>
Un grand rosier se trouvait à l'entrée du jardin ; les roses qu'il
portait étaient blanches, mais trois jardiniers étaient en train de les
peindre en rouge.
</p>
<p class="exemple">
Alice s'avança pour les regarder, et, au moment où elle approchait, elle en
entendit un qui disait : « Fais donc attention, Cinq, et ne
m'éclabousse pas ainsi avec ta peinture. »
</p>
<p>
« Ce n'est pas de ma faute, » dit Cinq d'un ton bourru, « c'est
Sept qui m'a poussé le coude. »
</p>
Résultat
Spécifications
Specification |
---|
CSS Box Model Module Level 3 # margin-physical |
Compatibilité des navigateurs
BCD tables only load in the browser
Voir aussi
- Les autres propriétés physiques pour les marges :
margin-top
margin-right
margin-bottom
- La propriété raccourcie
margin
qui synthétise les 4
- Les propriétés logiques pour les marges :
margin-block-start
margin-block-end
margin-inline-start
margin-inline-end
- Les propriétés raccourcies pour les deux axes :