Spec-Zone.ru › CSS

<overflow>

Тип перечисления <overflow> перечисленных значений представляет собой ключевые значения для свойств overflow-block, overflow-inline, overflow-x и overflow-y и сокращённого свойства overflow. Эти свойства применяются к блочным контейнерам, контейнерам flex и контейнерам grid.

Синтаксис

<overflow> = visible | hidden | clip | scroll | auto

Значения

Тип перечисления <overflow> определяется одним из значений, перечисленных ниже.

visible

Содержимое со сдвигом не обрезается и может быть отображено за пределами области отступа элемента. Ящик элемента не является контейнером прокрутки. Это значение по умолчанию для всех свойств, имеющих тип перечисления <overflow>.

hidden

Содержимое со сдвигом обрезается по области отступа элемента. Нет полос прокрутки, и обрезаемое содержимое не отображается (т.е. обрезаемое содержимое скрыто), но содержимое всё ещё существует. Агенты пользователя не добавляют полосы прокрутки и также не позволяют пользователям просматривать содержимое за пределами области обрезки такими действиями, как перетаскивание на сенсорном экране или использование колесика мыши. Содержимое может быть прокручено программно (например, путём задания значения свойства scrollLeft или метода scrollTo()). Содержимое также может быть прокручено с помощью взаимодействия с клавиатурой; стрелки позволяют прокручивать содержимое, а наведение на фокусируемый элемент в скрытом содержимом позволяет прокрутить фокусируемый элемент в область видимости. Ящик элемента, для которого установлено это значение, является контейнером прокрутки.

clip

Содержимое со сдвигом обрезается по границе обрезки элемента со сдвигом, которая определяется с помощью свойства overflow-clip-margin. В результате, содержимое выходит за пределы области отступа элемента на значение <length> свойства overflow-clip-margin или 0px, если оно не задано. Содержимое со сдвигом за пределами области обрезки не отображается, агенты пользователя не добавляют полосы прокрутки, и программно прокрутка также не поддерживается. Новый форматирующий контекст не создаётся.

scroll

Содержимое со сдвигом обрезается по области отступа элемента, и содержимое со сдвигом может быть прокручено в область видимости с помощью полос прокрутки. Агенты пользователя отображают полосы прокрутки как в горизонтальном, так и в вертикальном направлениях, если установлено только одно значение, независимо от того, выходит ли содержимое за пределы или обрезается. Таким образом, использование этого ключевого значения может предотвратить появление и исчезновение полос прокрутки при изменении содержимого. Печатающие устройства всё ещё могут печатать содержимое со сдвигом. Ящик элемента, для которого установлено это значение, является контейнером прокрутки.

auto

Содержимое со сдвигом обрезается по области отступа элемента, и содержимое со сдвигом может быть прокручено в область видимости. В отличие от scroll, агенты пользователя отображают полосы прокрутки только если содержимое выходит за пределы и скрывают полосы прокрутки по умолчанию. Если содержимое помещается в область отступа элемента, оно выглядит так же, как с visible, но всё равно устанавливает новый контекст форматирования. Ящик элемента, для которого установлено это значение, является контейнером прокрутки.

Примечание: Ключевое значение overlay — это устаревшее алиас для auto. С overlay, полосы прокрутки рисуются поверх содержимого, а не занимают место.

Примеры

Этот пример демонстрирует все значения перечисления <overflow> для свойства overflow.

HTML

HTML в этом примере содержит некоторые тексты песен внутри элемента <pre>. HTML также содержит текстовую ссылку для тестирования эффектов фокуса клавиатуры на поведение переполнения и прокрутки. Тот же код HTML повторяется несколько раз, чтобы показать эффект каждого значения перечисления <overflow>.

<pre>&nbsp;
Oh, Rubber Duckie, you're the one
You make bath time lots of fun
Rubber Duckie, I'm awfully fond of you

Rubber Duckie, joy of joys
When I squeeze you, you make noise
Rubber Duckie, you're my very best friend, it's true

Oh, every day when I make my way to the tubby
I find a little fella who's cute and yellow and chubby
Rub-a-dub-dubby

<a href="#">Rubber Duckie</a>, you're so fine
And I'm lucky that you're mine
Rubber Duckie, I'm awfully fond of you
</pre>

CSS

Для демонстрации размер ящика элемента <pre> был определён таким образом, чтобы содержимое выходило за пределы контейнера как по горизонтали, так и по вертикали. Различное значение <overflow> установлено для каждого из повторяющихся элементов <pre>. Для демонстрации значения clip был добавлен overflow-clip-margin.

pre {
  block-size: 100px;
  inline-size: 295px;
}

pre:nth-of-type(1) {
  overflow: hidden;
}
pre:nth-of-type(1)::before {
  content: "hidden: ";
}

pre:nth-of-type(2) {
  overflow: clip;
  overflow-clip-margin: 1em;
}
pre:nth-of-type(2)::before {
  content: "clip: ";
}

pre:nth-of-type(3) {
  overflow: scroll;
}
pre:nth-of-type(3)::before {
  content: "scroll: ";
}

pre:nth-of-type(4) {
  overflow: auto;
}
pre:nth-of-type(4)::before {
  content: "auto: ";
}

pre:nth-of-type(5) {
  overflow: clip;
  overflow: overlay;
  overflow-clip-margin: 3em;
}
pre:nth-of-type(5)::before {
  content: "overlay (or clip if not supported): ";
}

pre:nth-of-type(6) {
  overflow: visible;
}
pre:nth-of-type(6)::before {
  content: "visible: ";
}

Результат

Чтобы увидеть эффект фокуса клавиатуры на поведение переполнения и прокрутки, попробуйте навести курсор на все ссылки в примере. Обратите внимание, что ящик clip не создаёт контейнер прокрутки, и ссылка не появляется в поле зрения при фокусировке на ссылке. Значение visible, в котором ссылка всегда находится в области видимости, также не является контейнером прокрутки.

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

Спецификация
CSS Overflow Module Level 3
# propdef-overflow

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

Рабочий стол Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
overflow_value 1 12 1 7 1 18 4 14 1 1.0 37
clip 90 90 811.5–81 76 16 90 814–81 Нет 16 15.0 90
overlay 15 79 112 15 ≤13.1 100 112 Нет ≤13.4 4.0 100

См. также

  • Свойства, использующие этот тип данных: overflow-x, overflow-y, overflow-inline, overflow-block и overflow
  • Модуль CSS overflow

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/overflow_value

Spec-Zone.ru

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