CSS overflow
The CSS overflow module properties enable you to handle scrollable overflow in visual media.
Overflow happens when the content in an element box extends past one or more of the box's edges. Scrollable overflow is the content that appears outside the element box for which you might want to add a scrolling mechanism. CSS overflow properties let you control what happens when content overflows an element box, including creating carousels without JavaScript.
Painting effects that overflow the content but do not participate in the CSS box model do not affect layout. This type of overflow is also known as ink overflow. Examples of ink overflows include box shadows, border images, text decoration, overhanging glyphs, and outlines. Ink overflows do not extend the scrollable overflow region.
Overflow in action
Try the following example to see the effects of various overflow property values on the content overflow and scrollbars in the adjacent fixed-size box.
The example includes options to change the values for the overflow-clip-margin and width properties, as well as to programmatically scroll the content if the overflow property creates a scroll container. Select overflow: clip and see the effect of different overflow-clip-margin values. Select overflow: hidden or overflow: scroll to check out the various ScrollLeft and ScrollTop slider settings.
A link is included in the content box above to demonstrate the effects of keyboard focus on overflow and scroll behaviors. Try tabbing to the link or programmatically scrolling the content: the content will scroll only if the enumerated <overflow> value creates a scroll container.
Reference
>Properties
line-clampoverflowshorthandoverflow-blockoverflow-clip-marginoverflow-inlineoverflow-xoverflow-yscroll-behaviorscroll-marker-groupscroll-target-groupscrollbar-guttertext-overflow
The CSS overflow level 4 module also introduces the block-ellipsis, continue, max-lines, overflow-clip-margin-block, overflow-clip-margin-block-end, overflow-clip-margin-block-start, overflow-clip-margin-bottom, overflow-clip-margin-inline, overflow-clip-margin-inline-end, overflow-clip-margin-inline-start, overflow-clip-margin-left, overflow-clip-margin-right, and overflow-clip-margin-top properties. Currently, no browsers support these features.
Selectors and pseudo-elements
Data types
<overflow>enumerated values
Guides
- Learn: Overflowing content
-
Learn what overflow is and how to manage it.
- Creating CSS carousels
-
Create pure-CSS carousel UI features using scroll buttons, scroll markers, and generated columns.
- Creating a named scroll progress timeline animation
-
The CSS scroll timeline
scroll-timeline-nameandscroll-timeline-axisproperties, along with thescroll-timelineshorthand, create animations tied to the scroll offset of a scroll container.
Related concepts
::columnscrollbar-widthCSS propertyscrollbar-colorCSS propertyscrollbar-gutterCSS propertyscroll-behaviorCSS propertyscroll-marginCSS shorthand propertyscroll-paddingCSS shorthand propertyscroll-snap-alignCSS propertyscroll-snap-stopCSS propertyscroll-snap-typeCSS propertytext-overflowCSS property::-webkit-scrollbarpseudo-elementscrollbarARIA role- Element
scroll()method - Element
scrollBy()method - Element
scrollIntoView()method - Element
scrollTo()method - Element
scrollTopproperty - Element
scrollLeftproperty - Element
scrollWidthproperty - Element
scrollHeightproperty - Document
scrollevent - Scroll container glossary term
- Ink overflow glossary term
Specifications
| Specification |
|---|
| CSS Overflow Module Level 3> |
| CSS Overflow Module Level 4> |
| CSS Overflow Module Level 5> |
See also
- CSS scrollbars styling module
- CSS scroll snap module
- CSSOM view module
- How to debug scrollable overflow