Назад к вопросам
Junior
140
questionbank
Какие особенности свойства position: sticky вы знаете?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
position: sticky – это гибрид position: relative и position: fixed.
- Поведение по умолчанию: Элемент ведет себя как с
position: relative, оставаясь в обычном потоке документа. - При прокрутке: Когда элемент достигает заданного смещения (например,
top: 0) относительно своего контейнера прокрутки или области видимости (скроллпорта), он "прилипает" и ведет себя как сposition: fixed, оставаясь видимым в этой позиции при дальнейшей прокрутке. - Смещение: Смещение задается свойствами
top,right,bottom,left. Необходимо использовать хотя бы одно из этих свойств для корректной работыsticky. - Контейнер прокрутки (
scroll container/containing block): Элемент "прилипает" в пределах своего родительского блока форматирования (containing block), который обычно совпадает с ближайшим предком, имеющим возможность скроллинга или определенный контекст форматирования. Если скроллится толькоbody/html, то прилипание будет относительно области видимости. - Перекрытие: Прилипший элемент может перекрывать содержимое под ним, подобно элементу с
position: fixed. - Z-индекс: На поведение при перекрытии влияет свойство
z-index. - Ограничения:
- Не работает, если родительский элемент имеет
overflow: hidden,overflow: autoилиoverflow: scroll, которые обрезают содержимое. - Элемент может "отлипнуть", если достигает края своего контейнера прокрутки.
- Не работает, если родительский элемент имеет
- Использование: Часто применяется для создания "липких" заголовков таблиц, навигационных панелей или боковых элементов, которые остаются видимыми при прокрутке основной части контента.
/* Пример использования */
.sticky-header {
position: sticky;
top: 0; /* Прилипает к верху скроллпорта или контейнера */
background-color: white;
padding: 10px;
z-index: 10; /* Гарантирует, что заголовок поверх другого контента */
}