Бесплатный вебинар
«как найти любимую работу»
Подарки на 150 000 ₽ за участие
Живой эфир
Записи не будет!
00:00:00:00
дн.ч.мин.сек.

Ограничение скролла div элемента до вертикального в CSS

Быстрый ответ

Для того чтобы элемент <div> поддерживал вертикальную прокрутку, нужно задать для его свойства overflow-y значение scroll. Таким образом, во всех блоках <div>, содержимое которых превышает установленную высоту, появится вертикальная полоса прокрутки.

CSS
Скопировать код
.scrollable-div {
  overflow-y: scroll;
  height: 200px;
}
HTML
Скопировать код
<div class="scrollable-div">
  Здесь находится ваше содержимое, которое превышает указанную высоту...
</div>

Тщательный подбор значений для overflow-y и высоты позволяет обеспечивать эффективную и удобную прокрутку содержимого внутри <div>.

Кинга Идем в IT: пошаговый план для смены профессии

Пошаговое руководство

Автоматическое появление полосы прокрутки

Адаптивная полоса прокрутки, которая появляется лишь по мере необходимости, формируется с помощью overflow-y: auto;. Это позволяет интерфейсу оставаться чистым и не навязчивым.

Подробнее об этом расскажет наш спикер на видео
skypro youtube speaker

Фиксация ширины блока div

Чтобы избежать возникновения горизонтальной прокрутки, рекомендуется задать блоку div фиксированную ширину или воспользоваться процентными значениями. Это помогает предотвратить отвлекающие факторы при вертикальной прокрутке.

Адаптация к параметрам видимой области экрана

Применение единиц измерения, относящихся к размеру видимой области экрана, например vh (высота видимой области), сделает ваш div адаптивным. Например, max-height: 90vh; ограничивает высоту блока div до 90% от высоты видимой области.

Борьба с горизонтальным переполнением

Сочетание свойств overflow-y: scroll; и overflow-x: hidden; предотвращает появление горизонтальной полосы прокрутки, делая интерфейс более упорядоченным и полностью сосредоточенным на вертикальной прокрутке.

Сокращенное свойство overflow

Откройте для себя удобство использования сокращенного свойства overflow:

CSS
Скопировать код
.scrollable-div {
  overflow: auto; /* Весьма эффективное и универсальное */
  height: 300px;
}

Такое сокращение позволяет контролировать overflow-x и overflow-y одновременно, сделав ваш CSS код более легким для чтения и компактным.

Визуализация

Внедрение вертикальной прокрутки для div можно соотнести с использованием лестницы 🪜 внутри коробки 📦 для достижения предметов расположенных выше.

CSS
Скопировать код
div {
  overflow-y: scroll;
  max-height: 300px;
}

Графическая аналогия:

Markdown
Скопировать код
До:
+-------------------------+
| Предмет                 |
| Предмет                 |
| Предмет                 |
| Предмет                 |
| Предмет                 |
+-------------------------+

После:
+-------------------------+
| Предмет                 | 📜👀
| Предмет                 |
|-------------------------| (max-height c 🪜 для доступа) 
| Предмет 🪜              |
| Предмет                 |
+-------------------------+

Прокручивайте вверх, подобно Джеку, восходящему по бобовому стеблю к облакам! 📜🔝

Профессиональные советы и рекомендации

Настройка полосы прокрутки

Улучшите впечатления от прокрутки, активно используя свойство overflow:

  • Задайте фиксированную или процентную ширину для предотвращения горизонтального переполнения.
  • Используйте max-height с единицами, относящимися к размеру видимой области экрана, для создания адаптивной прокрутки.
  • Применяйте overflow: auto;, чтобы полоса прокрутки отображалась лишь по мере необходимости, делая дизайн более непринужденным.

Распространенные ошибки

Представляем вам список часто встречающихся проблем и их решений:

  • Содержимое, выходящее за границы блока по горизонтали, может вызвать нежелательную горизонтальную прокрутку. В таком случае используйте white-space: nowrap; или overflow-x: hidden;.
  • Постоянно видимые полосы прокрутки могут нарушать эстетику макета, поэтому лучше использовать overflow-y: auto;.
  • Визуальное оформление полос прокрутки различается в разных браузерах. Для изменения их оформления используйте стили для скроллбаров, учтя веб-стандарты и удобство использования.

Точное управление переполнением

Сочетая потенциал свойств overflow-x и overflow-y, получаем возможность точно контролировать поведение переполнения:

CSS
Скопировать код
.scrollable-div {
  overflow-x: hidden;
  overflow-y: auto;
  height: 200px;
}

Возьмите управление прокруткой под свой контроль, обеспечивая лучшее отображение контента.

Обеспечение читаемости

Не забывайте о поддержании переноса слов и корректном использовании отступов, чтобы сохранить простоту чтения содержимого в блоке с прокруткой.

Полезные материалы

  1. overflow — CSS | MDN — Официальная документация MDN, посвященная свойству CSS overflow.
  2. Стилизация полосы прокрутки в CSS — CSS-Tricks — Глубокое руководство по стилизации скроллбаров.
  3. CSS свойство overflow | W3Schools — Учебный материал с примерами использования overflow для создания прокручиваемых областей.
  4. Блог по дизайну веб-сайтов | WDD — Детальное руководство по настройке скроллбаров в CSS.
  5. CSS Scroll Snap | CSS-Tricks — Основательное руководство по Scroll Snap в CSS для создания стильных скроллируемых интерфейсов.
Проверь как ты усвоил материалы статьи
Пройди тест и узнай насколько ты лучше других читателей
Какое значение нужно задать свойству overflow-y для вертикальной прокрутки элемента <div>?
1 / 5