Свойство CSS overflow
управляет тем, что случается с контентом, который слишком велик, чтобы поместиться в определенную область.
Попробуйте сами →
<!DOCTYPE html>
<html>
<head>
<style>
#overflowTest {
background: #4CAF50;
color: white;
padding: 15px;
width: 50%;
height: 100px;
overflow: scroll;
border: 1px solid #ccc;
}
</style>
</head>
<body>
<h2>CSS Overflow</h2>
<p>The overflow property controls what happens to content that is too big to fit into an area.</p>
<div id="overflowTest">This text is really long and the height of its container is only 100 pixels. Therefore, a scrollbar is added to help the reader to scroll the content. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. Nam liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assum. Typi non habent claritatem insitam; est usus legentis in iis qui facit eorum claritatem.</div>
</body>
</html>
Свойство overflow
указывает, следует ли обрезать содержание или добавить полосы прокрутки, когда содержимое элемента слишком велико и не помещается в указанное область.
Свойство overflow
имеет следующие значения:
visible
- По умолчанию. Переполнение не отсекается. Содержимое отображается за пределами поля элемента.
hidden
- Переполнение обрезается, а остальная часть содержимого будет невидима.
scroll
- Переполнение обрезается и добавляется полоса прокрутки, чтобы увидеть остальную часть содержимого.
auto
- Аналогично прокрутке
, но полосы прокрутки добавляются только при необходимости.
Примечание. Свойство overflow
работает только для блочных элементов с указанной высотой.
Примечание. В OS X Lion (на Mac) полосы прокрутки по умолчанию скрыты и отображаются только при использовании (даже если установлено «overflow:scroll»).
переполнение: видимое
По умолчанию переполнение является видимым
, что означает, что оно не обрезается и отображается за пределами поля элемента:
div {
width: 200px;
height:
65px;
background-color: coral;
overflow: visible;
}
Попробуйте сами →
<!DOCTYPE html>
<html>
<head>
<style>
div {
background-color: coral;
width: 200px;
height: 65px;
border: 1px solid;
overflow: visible;
}
</style>
</head>
<body>
<h2>Overflow: visible</h2>
<p>By default, the overflow is visible, meaning that it is not clipped and it renders outside the element's box:</p>
<div>You can use the overflow property when you want to have better control of the layout. The overflow property specifies what happens if content overflows an element's box.</div>
</body>
</html>
переполнение: скрыто
При использовании значения hidden
переполнение обрезается, а остальная часть содержимого скрывается:
div {
overflow: hidden;
}
Попробуйте сами →
<!DOCTYPE html>
<html>
<head>
<style>
div {
background-color: coral;
width: 200px;
height: 65px;
border: 1px solid black;
overflow: hidden;
}
</style>
</head>
<body>
<h2>Overflow: hidden</h2>
<p>With the hidden value, the overflow is clipped, and the rest of the content is hidden:</p>
<p>Try to remove the overflow property to understand how it works.</p>
<div>You can use the overflow property when you want to have better control of the layout. The overflow property specifies what happens if content overflows an element's box.</div>
</body>
</html>
переполнение: прокрутка
При установке значения scroll
переполнение обрезается и добавляется полоса прокрутки для прокрутки внутри поля. Обратите внимание, что это добавит полосу прокрутки как по горизонтали, так и по вертикали (даже если она вам не нужна):
div {
overflow: scroll;
}
Попробуйте сами →
<!DOCTYPE html>
<html>
<head>
<style>
div {
background-color: coral;
width: 200px;
height: 100px;
border: 1px solid black;
overflow: scroll;
}
</style>
</head>
<body>
<h2>Overflow: scroll</h2>
<p>Setting the overflow value to scroll, the overflow is clipped and a scrollbar is added to scroll inside the box. Note that this will add a scrollbar both horizontally and vertically (even if you do not need it):</p>
<div>You can use the overflow property when you want to have better control of the layout. The overflow property specifies what happens if content overflows an element's box.</div>
</body>
</html>
переполнение: auto
Значение auto
аналогично значению scroll
, но оно добавляет полосы прокрутки только при необходимости:
div {
overflow: auto;
}
Попробуйте сами →
<!DOCTYPE html>
<html>
<head>
<style>
div {
background-color: coral;
width: 200px;
height: 65px;
border: 1px solid black;
overflow: auto;
}
</style>
</head>
<body>
<h2>Overflow: auto</h2>
<p>The auto value is similar to scroll, only it add scrollbars when necessary:</p>
<div>You can use the overflow property when you want to have better control of the layout. The overflow property specifies what happens if content overflows an element's box.</div>
</body>
</html>
overflow-x
и overflow-y
Свойства overflow-x
и overflow-y
определяют следует ли изменить переполнение контента только по горизонтали или по вертикали (или оба):
overflow-x
определяет, что делать с левым/правым краями контент.
overflow-y
определяет, что делать с верхними и нижними краями содержание.
div {
overflow-x: hidden; /* Hide horizontal scrollbar
*/
overflow-y: scroll; /* Add vertical scrollbar */
}
Попробуйте сами →
<!DOCTYPE html>
<html>
<head>
<style>
div {
background-color: coral;
width: 200px;
height: 65px;
border: 1px solid black;
overflow-x: hidden;
overflow-y: scroll;
}
</style>
</head>
<body>
<h2>Overflow-x and overflow-y</h2>
<p>You can also change the overflow of content horizontally or vertically.</p>
<p>overflow-x specifies what to do with the left/right edges of the content.</p>
<p>overflow-y specifies what to do with the top/bottom edges of the content.</p>
<div>You can use the overflow property when you want to have better control of the layout. The overflow property specifies what happens if content overflows an element's box.</div>
</body>
</html>
Указывает, что произойдет, если содержимое выйдет за пределы поля элемента.
Указывает, может ли браузер разбивать строки с длинными словами, если они переполняют его контейнер
Указывает, что делать с левым/правым краями содержимого, если оно выходит за пределы области содержимого элемента.
Указывает, что делать с верхними и нижними краями содержимого, если оно выходит за пределы области содержимого элемента.