Spec-Zone.ru › CSS

CSS-свойство `scroll-snap-align`

Базовая поддержка Широко доступно

Эта функция хорошо зарекомендовала себя и работает на множестве устройств и в разных версиях браузеров. Она доступна во всех браузерах с января 2020 года.

Свойство scroll-snap-align CSS задаёт положение привязки блока как выравнивание его области привязки.

Попробуйте

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">Scroll »</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;
}

Синтаксис

/* Single keyword value */
scroll-snap-align: none;
scroll-snap-align: center;
scroll-snap-align: start;
scroll-snap-align: end;

/* Two keyword values */
scroll-snap-align: start end;
scroll-snap-align: end center;
scroll-snap-align: center start;

/* Global values */
scroll-snap-align: inherit;
scroll-snap-align: initial;
scroll-snap-align: revert;
scroll-snap-align: revert-layer;
scroll-snap-align: unset;

Значения

Для этого свойства указываются одно или два следующих ключевых значения, разделённых пробелом:

none
Блок не задаёт положение привязки по этой оси.
start
Выравнивание по началу области привязки прокрутки этого блока внутри области привязки контейнера прокрутки считается положением привязки по этой оси.
end
Выравнивание по концу области привязки прокрутки этого блока внутри области привязки контейнера прокрутки считается положением привязки по этой оси.
center
Выравнивание по центру области привязки прокрутки этого блока внутри области привязки контейнера прокрутки считается положением привязки по этой оси.

Описание

Свойство scroll-snap-align задаёт положение привязки блока как выравнивание его области привязки (в качестве выравниваемого объекта) внутри области привязки контейнера (в качестве контейнера выравнивания).

Для свойства scroll-snap-align можно указать одно или два значения. Если задано одно значение, оно применяется к блочной и строчной осям. Если заданы два значения, первое управляет блочной осью, а второе — строчной.

Формальное определение

Начальное значение none
Применяется к всем элементам
Наследуется нет
Вычисленное значение как задано
Тип анимации дискретный

Формальный синтаксис

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

Спецификации

Спецификация
Модуль привязки прокрутки CSS, уровень 1
# scroll-snap-align

Совместимость с браузерами

Компьютеры Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome для Android Firefox для Android Opera для Android Safari для iOS Samsung Internet WebView для Android WebView для iOS
scroll-snap-align
69
79
68
56
11
69
68
48
11
10.0
69
11
center
69
79
68
56
11
69
68
48
11
10.0
69
11
end
69
79
68
56
11
69
68
48
11
10.0
69
11
none
69
79
68
56
11
69
68
48
11
10.0
69
11
start
69
79
68
56
11
69
68
48
11
10.0
69
11

См. также

  • scroll-snap-stop
  • scroll-initial-target
  • Модуль привязки прокрутки CSS
  • Управляемая прокрутка с помощью привязки прокрутки CSS на web.dev (2018)

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/scroll-snap-align

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API