Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

margin-block

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 avril 2021.

* Certaines parties de cette fonctionnalité peuvent bénéficier de prise en charge variables.

La propriété raccourcie CSS margin-block définit les marges logiques de début et de fin de bloc d'un élément, qui correspondent à des marges physiques selon le mode d'écriture, la direction et l'orientation du texte de l'élément.

Exemple interactif

margin-block: 10px 20px;
writing-mode: horizontal-tb;
margin-block: 20px 40px;
writing-mode: vertical-rl;
margin-block: 5% 20%;
writing-mode: horizontal-tb;
margin-block: 1rem auto;
writing-mode: vertical-lr;
<section id="default-example">
  <div id="container">
    <div class="row">Un</div>
    <div class="row transition-all" id="example-element">Deux</div>
    <div class="row">Trois</div>
  </div>
</section>
#container {
  width: 300px;
  height: 200px;
  display: flex;
  align-content: flex-start;
  flex-direction: column;
  justify-content: flex-start;
}

.row {
  height: 33.33%;
  display: inline-block;
  border: solid #ce7777 10px;
  background-color: #2b3a55;
  color: white;
  flex-shrink: 0;
}

#example-element {
  border: solid 10px #ffbf00;
  background-color: #2b3a55;
}

Propriétés constitutives

Cette propriété est une propriété raccourcie pour les propriétés CSS suivantes :

Syntaxe

css
/* Valeurs de type <length> */
margin-block: 10px 20px; /* Une longueur absolue */
margin-block: 1em 2em; /* Une longueur relative à la taille du texte */
margin-block: 5% 2%; /* Une longueur relative à la largeur ou hauteur du bloc englobant */
margin-block: 10px; /* Une valeur utilisée pour les deux côtés */
margin-block: anchor-size(inline);
margin-block: calc(anchor-size(width) / 4) 1em;

/* Valeurs avec un mot-clé */
margin-block: auto;

/* Valeurs globales */
margin-block: inherit;
margin-block: initial;
margin-block: revert;
margin-block: revert-layer;
margin-block: unset;

Cette propriété correspond aux propriétés margin-top et margin-bottom, ou aux propriétés margin-right et margin-left, selon les valeurs définies pour writing-mode, direction et text-orientation.

La propriété margin-block peut être définie avec une ou deux valeurs.

  • Avec une valeur, la même marge s'applique au début et à la fin.
  • Avec deux valeurs, la première marge s'applique au début, la seconde à la fin.

Valeurs

La propriété margin-block accepte les mêmes valeurs que la propriété margin.

Définition formelle

Valeur initialepour chaque propriété individuelle de la propriété raccourcie :
Applicabilitéidentique à margin
Héritéenon
Pourcentagesdépend du modèle en couches
Valeur calculéepour chaque propriété individuelle de la propriété raccourcie :
  • margin-block-start: si spécifié par une longueur, la valeur absolue correspondante; si spécifié par un pourcentage, la valeur telle que spécifiée; sinon, auto
  • margin-block-end: si spécifié par une longueur, la valeur absolue correspondante; si spécifié par un pourcentage, la valeur telle que spécifiée; sinon, auto
Type d'animationune longueur

Syntaxe formelle

margin-block = 
<'margin-top'>{1,2}

<margin-top> =
<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

Définir les marges de début et de fin de bloc

HTML

html
<div>
  <p>Texte d'exemple</p>
</div>
<div class="exempleVertical">
  <p>Texte d'exemple</p>
</div>

CSS

css
div {
  background-color: yellow;
  width: 120px;
  height: auto;
  border: 1px solid green;
}

p {
  margin: 0;
  margin-block: 20px 40px;
  background-color: tan;
}

.exempleVertical {
  writing-mode: vertical-rl;
}

Résultat

Spécifications

Specification
CSS Logical Properties and Values Module Level 1
# propdef-margin-block

Compatibilité des navigateurs

Voir aussi