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

place-items

Baseline Large disponibilité *

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis janvier 2020.

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

La propriété raccourcie CSS place-items permet d'aligner les éléments à la fois dans les directions bloc et en ligne. Elle définit les valeurs des propriétés align-items et justify-items. Si la deuxième valeur n'est pas définie, la première valeur est également utilisée pour elle.

Exemple interactif

place-items: center stretch;
place-items: center start;
place-items: start end;
place-items: end center;
<section class="default-example" id="default-example">
  <div class="example-container">
    <div class="transition-all" id="example-element">
      <div>Un</div>
      <div>Deux</div>
      <div>Trois</div>
    </div>
  </div>
</section>
#example-element {
  border: 1px solid #c5c5c5;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-auto-rows: 80px;
  grid-gap: 10px;
  width: 220px;
}

#example-element > div {
  background-color: rgb(0 0 255 / 0.2);
  border: 3px solid blue;
}

Propriétés constitutives

Cette propriété est un raccourci pour les propriétés CSS suivantes :

Syntaxe

css
/* Alignement géométrique */
place-items: center;
place-items: normal start;
place-items: center normal;
place-items: start legacy;
place-items: end normal;
place-items: self-start legacy;
place-items: self-end normal;
place-items: flex-start legacy;
place-items: flex-end normal;
place-items: anchor-center;

/* Alignement par rapport à la ligne de base */
place-items: baseline normal;
place-items: first baseline legacy;
place-items: last baseline normal;
place-items: stretch legacy;

/* Valeurs globales */
place-items: inherit;
place-items: initial;
place-items: revert;
place-items: revert-layer;
place-items: unset;

Valeurs

L'une des formes suivantes :

  • Une seule valeur align-items, utilisée pour définir l'alignement dans les directions bloc et en ligne.
  • Une valeur align-items, qui définit l'alignement dans la direction bloc, suivie d'une valeur justify-items, qui définit l'alignement dans la direction en ligne.

Définition formelle

Valeur initialepour chaque propriété individuelle de la propriété raccourcie :
Applicabilitétous les éléments
Héritéenon
Valeur calculéepour chaque propriété individuelle de la propriété raccourcie :
Type d'animationdiscrète

Syntaxe formelle

place-items = 
<'align-items'> <'justify-items'>?

<align-items> =
normal |
stretch |
<baseline-position> |
<overflow-position>? <self-position> |
anchor-center

<justify-items> =
normal |
stretch |
<baseline-position> |
<overflow-position>? [ <self-position> | left | right ] |
legacy |
legacy && [ left | right | center ] |
anchor-center

<baseline-position> =
[ first | last ]? &&
baseline

<overflow-position> =
unsafe |
safe

<self-position> =
center |
start |
end |
self-start |
self-end |
flex-start |
flex-end

Exemples

Placer les éléments dans un conteneur flexible

Dans un conteneur flex, justify-self ou justify-items ne s'appliquent pas, car sur l'axe principal, les éléments sont traités comme un groupe. Par conséquent, la deuxième valeur sera ignorée.

CSS

css
#container {
  height: 200px;
  width: 240px;
  place-items: stretch; /* Vous pouvez changer cette valeur en sélectionnant une autre option dans la liste */
  background-color: #8c8c8c;
  display: flex;
}

Résultat

Placer les éléments dans un conteneur de grille

Le conteneur de grille suivant contient des éléments qui sont plus petits que les zones de grille dans lesquelles ils sont placés, donc place-items les déplacera dans les dimensions bloc et en ligne.

CSS

css
#grid-container {
  height: 200px;
  width: 240px;
  place-items: stretch; /* Vous pouvez changer cette valeur en sélectionnant une autre option dans la liste */
  background-color: #8c8c8c;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

#grid-container > div {
  width: 50px;
}

Résultat

Spécifications

Spécification
CSS Box Alignment Module Level 3
# place-items-property

Compatibilité des navigateurs

Voir aussi