Кратко
СкопированоСвойство overflow позволяет буквально определить, что делать с содержимым блочного (то есть для элемента, у которого display определяется как block, inline, flex или grid) элемента, если оно не влезает в размеры — отобразить или обрезать (с полосами прокрутки или без).
Пример
СкопированоЕсли содержимое блока будет больше, чем границы блока, оно будет «обрезано»:
.article { /* Задаём ограничения по размеру блока */ width: 300px; height: 300px; overflow: hidden;}
.article {
/* Задаём ограничения по размеру блока */
width: 300px;
height: 300px;
overflow: hidden;
}
Как пишется
Скопировано
.selector { overflow: hidden;}
.selector {
overflow: hidden;
}
Как понять
СкопированоСинтаксис свойства позволяет задать два значения — для оси x и оси y. Если указано одно значение, оно равнозначно применяется для обеих осей. Аналогичного результата можно добиться, используя самостоятельные CSS-свойства overflow и overflow.
Значения
Скопированоvisible— содержимое отображается снаружи родительского блока, если его размеры больше размеров «родительского» блока (значение по умолчанию);hidden— содержимое, выходящее за пределы «родительского» блока, обрезается по его границам без прокрутки;clip— новое значение, похожее по результату наhidden, но границы родительского блока рассчитываются с учётом внутренних отступов;scroll— контент обрезается по границам «родительского» блока, но внутри этой области содержимое доступно с помощью прокрутки;auto— если содержимое переполняет блок, контент будет доступен для прокрутки.
Подсказки
Скопировано💡 Чтобы контент внутри блока можно было скроллить, его содержимое должно явно превышать высоту родительского блока. Этого можно добиться или явно задав ему height, или ограничив высоту родительского блока.
💡 Задавая родительскому блоку фиксированную высоту, учитывайте, что, если не указан box, то это значение не учитывает внутренние отступы, заданные с помощью padding, что может спровоцировать появление нежелательной прокрутки.
На практике
Скопированосоветует
Скопировано🛠 При вёрстке «классических» макетов необходимости в управлении полосой прокрутки практически нет. Чтобы избежать появления нежелательных полос прокрутки, минимизируйте явное задание высоты (кроме случаев, где это действительно необходимо).
Ещё один пример, когда будет полезно знание свойства overflow — обрезание текста с многоточием (в сочетании со свойством text или недокументированного -webkit):