The overflow-block media feature tests how the output device handles content that overflows along the block axis (usually vertical in English layouts).
It does not mean overflow is happening. It reports the device’s handling style: scroll on typical screens, pages for print, and so on. Pair it with overflow-inline for the other axis.
Baseline · Widely available.
Not deprecated. Cross-browser since about September 2023 (Safari 17 completed Baseline).
Not the overflow property.
overflow styles one element. overflow-block here is a media feature about the device.
Typical screens match both. Good for “full scroll UI” enhancements.
Edge Cases & Pitfalls
This feature is about device capability — not whether your page currently overflows.
capability
It does not detect overflow
A short page on a scrollable screen still matches scroll. The query describes how overflow would be handled.
vs-property
Do not confuse with overflow
To clip or scroll one box, use overflow / overflow-y. This media feature will not set those behaviors.
screens
Screens usually match scroll
none, optional-paged, and paged demos often stay inactive in a normal browser tab.
print
Use print for paper layouts
For reliable print CSS, also use @media print. paged alone may not be enough in every UA.
axes
Block axis follows writing mode
In horizontal writing modes the block axis is vertical. Vertical writing modes flip which physical direction “block” means.
Compatibility
Browser Support
overflow-block is a browser CSS media feature for device overflow handling. Node.js, Deno, and Bun do not apply it.
✓ Baseline · Widely available
overflow-block
Chrome 113+, Firefox 66+, Safari 17+, Edge 113+. Widely available since September 2023. Not supported in Internet Explorer.
94%Browser support
Google Chrome113+
Full support
Mozilla Firefox66+
Full support
Apple Safari17+
Full support
Microsoft Edge113+
Full support
Opera99+
Full support
Samsung Internet23+
Full support
Internet ExplorerNot supported
Not supported
overflow-blockWidely supported
Bottom line: Safe for progressive enhancement on modern browsers. Keep defaults without the query. It is not a runtime API.
Remember
Key Takeaways
Role: how the device handles block-axis overflow (scroll vs pages).
Common match:scroll on screens; paged for print-like media.
Not overflow: it never sets scrolling on an element by itself.
Pair axes: use overflow-inline when both directions matter.
One line: use @media (overflow-block: …) to adapt styles for scroll vs paged block overflow.
Frequently Asked Questions
It reports how the output device handles content that overflows the initial containing block along the block axis — usually vertical in English layouts.
Four keywords: none, scroll, optional-paged, and paged.
Most browser screens match scroll — overflowing content can be reached by scrolling.
The overflow property controls one element’s clipping/scrolling. overflow-block as a media feature describes the device’s overflow handling; it does not set overflow on an element.
Paged typically matches print and similar paged media, where overflow continues on the next page.
It is Baseline and widely available since about September 2023 (Chrome 113+, Firefox 66+, Safari 17+). It is a browser CSS media feature, not a Node.js API.