Свойство CSS `scrollbar-gutter`
Базовая поддержка Недавно стало доступно
Эта функция работает на новейших устройствах и в последних версиях браузеров. Она может не работать на старых устройствах или в старых версиях браузеров. Функция поддерживается во всех браузерах с декабря 2024 года.
Свойство scrollbar-gutter CSS позволяет авторам резервировать место для полосы прокрутки, предотвращая нежелательные изменения макета при увеличении содержимого и избегая лишних визуальных элементов, когда прокрутка не требуется.
Поле полосы прокрутки элемента — это пространство между внутренним краем границы и внешним краем поля, где браузер может отображать полосу прокрутки. Если полоса прокрутки отсутствует, поле будет окрашено как продолжение поля элемента.
Браузер определяет, будут ли использоваться классические или наложенные полосы прокрутки:
- Классические полосы прокрутки всегда размещаются в поле, занимая место при отображении.
- Наложенные полосы прокрутки размещаются поверх содержимого, а не в поле, и обычно частично прозрачны.
Синтаксис
/* Initial value */ scrollbar-gutter: auto; /* "stable" keyword, with optional modifier */ scrollbar-gutter: stable; scrollbar-gutter: stable both-edges; /* Global values */ scrollbar-gutter: inherit; scrollbar-gutter: initial; scrollbar-gutter: revert; scrollbar-gutter: revert-layer; scrollbar-gutter: unset;
Значения
-
auto - Начальное значение. Классические полосы прокрутки создают поле, когда
overflowимеет значениеscroll, либо когдаoverflowимеет значениеautoи содержимое блока выходит за его границы. Наложенные полосы прокрутки не занимают места. -
stable - При использовании классических полос прокрутки поле будет присутствовать, если
overflowимеет значениеauto,scrollилиhidden, даже если содержимое блока не выходит за его границы. При использовании наложенных полос прокрутки поле отсутствует. -
both-edges - Если поле присутствовало бы у одного из логических начального или конечного краёв блока, оно также будет присутствовать у противоположного края.
Формальное определение
| Начальное значение | auto |
|---|---|
| Применяется к | прокручиваемым блокам |
| Наследуется | нет |
| Вычисляемое значение | как задано |
| Тип анимации | дискретный |
Формальный синтаксис
scrollbar-gutter =
auto |
stable &&
both-edges?
Примеры
В примерах ниже показано, как различные значения свойства scrollbar-gutter влияют на прокручиваемый элемент div (.container), содержащий один или несколько абзацев.
Примечание: На изображениях в примерах системные настройки пользователя заданы для классических полос прокрутки (всегда отображаются).
Пример 1
Чтобы предотвратить ненужные изменения макета при появлении или исчезновении полосы прокрутки из-за увеличения или уменьшения содержимого, для неё резервируется место.
.container {
scrollbar-gutter: stable;
}

Пример 2
Добавьте симметричные отступы с обеих сторон блока, чтобы содержимое располагалось по центру:
.container {
scrollbar-gutter: stable both-edges;
}

Пример 3
Выровняйте содержимое непрокручиваемого элемента и расположенного рядом с ним прокручиваемого элемента. В этом примере показаны два блока div рядом друг с другом. У левого прокрутки нет, а у правого она есть. Для обоих задано scrollbar-gutter, что также резервирует место для левого блока div, содержимое которого не прокручивается. Это хороший способ сохранить одинаковую ширину содержимого.
.container1 {
overflow: hidden;
scrollbar-gutter: stable;
}
.container2 {
scrollbar-gutter: stable;
}

Наложенные полосы прокрутки
Для сравнения на этом изображении показан тот же блок div, что и выше, но системные настройки пользователя заданы для наложенных полос прокрутки. Обратите внимание: полоса прокрутки отображается только во время прокрутки пользователем и поверх содержимого, поэтому для неё не резервируется место и свойство scrollbar-gutter не действует.

Спецификации
Совместимость с браузерами
| Настольные | Мобильные | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome для Android | Firefox для Android | Opera для Android | Safari на iOS | Samsung Internet | WebView для Android | WebView на iOS | |
scrollbar-gutter |
94 |
94 |
97 |
80 |
18.2 |
94 |
97 |
66 |
18.2 |
17.0 |
94 |
18.2 |
auto |
94 |
94 |
97 |
80 |
18.2 |
94 |
97 |
66 |
18.2 |
17.0 |
94 |
18.2 |
stable |
94 |
94 |
97 |
80 |
18.2 |
94 |
97 |
66 |
18.2 |
17.0 |
94 |
18.2 |
См. также
- Модуль переполнения CSS
- Модуль оформления полос прокрутки CSS
overflowscrollbar-widthscrollbar-color
© 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/scrollbar-gutter