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

scroll-snap-align

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.

La propriété CSS scroll-snap-align définit la position d'accrochage de la boîte comme un alignement de sa zone d'accrochage (en tant que sujet d'alignement) à l'intérieur du port d'accrochage de son conteneur (en tant que conteneur d'alignement).

Exemple interactif

scroll-snap-align: start;
scroll-snap-align: end;
scroll-snap-align: center;
<section class="default-example" id="default-example">
  <div id="example-parent">
    <div>1</div>
    <div id="example-element">2</div>
    <div>3</div>
  </div>
  <div class="info">Défiler »</div>
</section>
.default-example {
  flex-wrap: wrap;
}

.default-example .info {
  width: 100%;
  padding: 0.5em 0;
  font-size: 90%;
}

#example-parent {
  text-align: left;
  width: 250px;
  height: 250px;
  overflow-x: scroll;
  display: flex;
  box-sizing: border-box;
  border: 1px solid black;
  scroll-snap-type: x mandatory;
}

#example-parent > div {
  flex: 0 0 66%;
  width: 250px;
  background-color: rebeccapurple;
  color: white;
  font-size: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
}

#example-parent > div:nth-child(even) {
  background-color: white;
  color: rebeccapurple;
}

Syntaxe

css
/* Valeurs avec un mot-clé */
scroll-snap-align: none;
scroll-snap-align: center;
scroll-snap-align: start;
scroll-snap-align: end;

/* Valeurs avec deux mots-clés */
scroll-snap-align: start end;
scroll-snap-align: end center;
scroll-snap-align: center start;

/* Valeurs globales */
scroll-snap-align: inherit;
scroll-snap-align: initial;
scroll-snap-align: revert;
scroll-snap-align: revert-layer;
scroll-snap-align: unset;

Valeurs

Une ou deux valeurs peuvent être définies pour la propriété scroll-snap-align. Si une seule valeur est définie, elle s'applique aux axes bloc et en ligne. Si deux valeurs sont définies, la première valeur contrôle l'axe bloc et la deuxième valeur contrôle l'axe en ligne.

none

La boîte ne définit aucune position d'accroche sur cet axe.

start

L'alignement de début de la zone d'accrochage de cette boîte, à l'intérieur du port d'accrochage du conteneur de défilement, est une position d'accroche sur cet axe.

end

L'alignement de fin de la zone d'accrochage de cette boîte, à l'intérieur du port d'accrochage du conteneur de défilement est une position d'accroche sur cet axe.

center

Le point d'alignement situé au centre de l'axe et à l'intérieur de la boîte de défilement est une position d'accroche sur cet axe.

Définition formelle

Valeur initialenone
Applicabilitétous les éléments
Héritéenon
Valeur calculéecomme défini
Type d'animationdiscrète

Syntaxe formelle

scroll-snap-align = 
[ none | start | end | center ]{1,2}

Spécifications

Spécification
CSS Scroll Snap Module Level 1
# scroll-snap-align

Compatibilité des navigateurs

Voir aussi