Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
margin-left
Baseline
Widely available
*
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
* Certaines parties de cette fonctionnalité peuvent bénéficier de prise en charge variables.
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
margin-left: 1em;
margin-left: 10%;
margin-left: 10px;
margin-left: 0;
<section id="default-example">
<div id="container">
<div class="col"></div>
<div class="col transition-all" id="example-element"></div>
<div class="col"></div>
</div>
</section>
#container {
width: 300px;
height: 200px;
display: flex;
align-content: flex-start;
justify-content: flex-start;
}
.col {
width: 33.33%;
border: solid #5b6dcd 10px;
background-color: rgba(229, 232, 252, 0.6);
flex-shrink: 0;
}
#example-element {
border: solid 10px #ffc129;
background-color: rgba(255, 244, 219, 0.6);
}
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-leftetmargin-rightvalent toutes les deuxauto, m'espace calculé sera réparti de façon équitable. Le tableau suivant précise les différents cas :Valeur de displayValeur de floatValeur de positionValeur calculée pour autoCommentaires inline,inline-block,inline-tableN'importe laquelle staticourelative0Disposition en ligne block,inline,inline-block,block,table,inline-table,list-item,table-captionN'importe laquelle staticourelative0sauf simargin-leftetmargin-rightvalentauto. 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-captionleftourightstaticourelative0Disposition en bloc avec les éléments flottants N'importe quelle table-*, sauftable-captionN'importe laquelle N'importe laquelle 0Les é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 fixedouabsolute0sauf simargin-leftetmargin-rightvalentauto. 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-flexN'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
Chargement...
Voir aussi
- Les autres propriétés physiques pour les marges :
margin-topmargin-rightmargin-bottom- La propriété raccourcie
marginqui synthétise les 4
- Les propriétés logiques pour les marges :
margin-block-startmargin-block-endmargin-inline-startmargin-inline-end- Les propriétés raccourcies pour les deux axes :