Свойство CSS `overflow-x`
Базовая поддержка Широко доступно
Эта функция хорошо зарекомендовала себя и работает на множестве устройств и в различных версиях браузеров. Она доступна во всех браузерах с марта 2020 года.
Свойство overflow-x CSS задаёт, что отображается, когда содержимое выходит за левую и правую границы блочного элемента. Это может быть ничего, полоса прокрутки или вышедшее за границы содержимое. Это свойство также можно задать с помощью сокращённого свойства overflow.
Попробуйте
overflow-x: visible;
overflow-x: hidden;
overflow-x: clip;
overflow-x: scroll;
overflow-x: auto;
<section class="default-example" id="default-example">
<div id="example-element">
The value of Pi is 3.1415926535897932384626433832795029. The value of e is
2.7182818284590452353602874713526625.
</div>
</section>
#example-element {
width: 15em;
height: 9em;
border: medium dotted;
padding: 0.75em;
text-align: left;
}
Синтаксис
/* Keyword values */ overflow-x: visible; overflow-x: hidden; overflow-x: clip; overflow-x: scroll; overflow-x: auto; /* Global values */ overflow-x: inherit; overflow-x: initial; overflow-x: revert; overflow-x: revert-layer; overflow-x: unset;
Свойство overflow-x задаётся одним ключевым словом из <overflow>.
Если overflow-y имеет значение hidden, scroll или auto, а свойство overflow-x имеет значение visible (по умолчанию), то значение неявно вычисляется как auto.
Значения
-
visible - Содержимое не обрезается и может отображаться за пределами внутреннего поля элемента у левой и правой границ. Блок элемента не является контейнером прокрутки.
- При необходимости содержимое обрезается по горизонтали, чтобы поместиться во внутреннем поле элемента. Полосы прокрутки не отображаются.
-
clip - Содержимое обрезается по границе обрезки переполнения элемента, которая задаётся с помощью свойства
overflow-clip-margin. В результате содержимое выходит за внутреннее поле элемента на значение<length>свойстваoverflow-clip-marginили на0px, если оно не задано. Разница междуclipиhiddenзаключается в том, что ключевое словоclipтакже запрещает любую прокрутку, включая программную. Новый контекст форматирования не создаётся. Чтобы создать контекст форматирования, используйтеoverflow: clipвместе сdisplay: flow-root. Блок элемента не является контейнером прокрутки. -
scroll - При необходимости содержимое обрезается по горизонтали, чтобы поместиться во внутреннем поле элемента. Браузеры отображают полосы прокрутки по горизонтали независимо от того, обрезается ли содержимое. (Это предотвращает появление или исчезновение полос прокрутки при изменении содержимого.) Принтеры могут по-прежнему печатать выходящее за границы содержимое.
-
auto - Содержимое обрезается по внутреннему полю элемента, и его можно прокрутить, чтобы оно стало видимым. В отличие от
scroll, пользовательские агенты отображают полосы прокрутки только если содержимое выходит за границы, и по умолчанию скрывают полосы прокрутки. Если содержимое помещается во внутреннем поле элемента, это выглядит так же, как при значенииvisible, но при этом создаётся новый блочный контекст форматирования. Настольные браузеры отображают полосы прокрутки, если содержимое выходит за границы.
Примечание: Ключевое значение overlay — устаревший синоним значения auto. При значении overlay полосы прокрутки отображаются поверх содержимого, а не занимают место.
Формальное определение
| Начальное значение | visible |
|---|---|
| Применяется к | Блочным контейнерам, flex-контейнерам и grid-контейнерам |
| Наследуется | нет |
| Вычисленное значение | как задано, за исключением случаев, когда <code>visible</code>/<code>clip</code> вычисляются как <code>auto</code>/<code>hidden</code> соответственно, если одно из свойств overflow-x или overflow-y имеет значение, отличное от <code>visible</code> и </code>clip</code> |
| Тип анимации | дискретный |
Формальный синтаксис
overflow-x =
visible |
hidden |
clip |
scroll |
auto
Примеры
HTML
<ul>
<li>
<code>overflow-x:hidden</code> — hides the text outside the box
<div id="div1">ABCDEFGHIJKLMOPQRSTUVWXYZABCDEFGHIJKLMOPQRSTUVWXYZ</div>
</li>
<li>
<code>overflow-x:scroll</code> — always adds a scrollbar
<div id="div2">ABCDEFGHIJKLMOPQRSTUVWXYZABCDEFGHIJKLMOPQRSTUVWXYZ</div>
</li>
<li>
<code>overflow-x:visible</code> — displays the text outside the box if
needed
<div id="div3">ABCDEFGHIJKLMOPQRSTUVWXYZABCDEFGHIJKLMOPQRSTUVWXYZ</div>
</li>
<li>
<code>overflow-x:auto</code> — on most browsers, equivalent to
<code>scroll</code>
<div id="div4">ABCDEFGHIJKLMOPQRSTUVWXYZABCDEFGHIJKLMOPQRSTUVWXYZ</div>
</li>
</ul>
CSS
#div1,
#div2,
#div3,
#div4 {
border: 1px solid black;
width: 250px;
margin-bottom: 12px;
}
#div1 {
overflow-x: hidden;
}
#div2 {
overflow-x: scroll;
}
#div3 {
overflow-x: visible;
}
#div4 {
overflow-x: auto;
}
Результат
Спецификации
| Спецификация |
|---|
| Модуль CSS Overflow, уровень 3 # overflow-properties |
Совместимость с браузерами
| Настольные | Мобильные | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | WebView на iOS | |
overflow-x |
1 |
12 |
3.5 |
9.5 |
3 |
18 |
4 |
14 |
1 |
1.0 |
4.4 |
1 |
auto |
1
15
|
12 |
3.5
112
|
15
15
|
3
6До Safari 12.1overlay влиял только на устаревшие полосы прокрутки в macOS. Начиная с Safari 12.1, он разбирается как auto. |
18
100
|
4
112
|
14
69
|
2
6До Safari на iOS 12.1overlay влиял только на устаревшие полосы прокрутки в macOS. Начиная с Safari на iOS 12.1, он разбирается как auto. |
1.0
19.0
|
4.4
100
|
2
6До WebView на iOS 12.1overlay влиял только на устаревшие полосы прокрутки в macOS. Начиная с WebView на iOS 12.1, он разбирается как auto. |
clip |
90 |
90 |
81
3.5–81
|
76 |
16 |
90 |
81
4–81
|
64 |
16 |
15.0 |
90 |
16 |
hidden |
1 |
12 |
3.5 |
15 |
3 |
18 |
4 |
14 |
2 |
1.0 |
4.4 |
2 |
replaced_elements |
108 |
12 |
148 |
94 |
Нет |
108 |
148 |
73 |
Нет |
21.0 |
108 |
Нет |
scroll |
1 |
12 |
3.5 |
15 |
3 |
18 |
4 |
14 |
2 |
1.0 |
4.4 |
2 |
visible |
1 |
12 |
3.5 |
15 |
3 |
18 |
4 |
14 |
2 |
1.0 |
4.4 |
2 |
См. также
-
clip,display,text-overflow,white-space - Модуль переполнения CSS
- Узнайте: содержимое, выходящее за границы
© 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/overflow-x