The scroll-padding
shorthand property sets scroll padding on all sides of an element at once, much like the padding
property does for padding on an element.
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
The scroll-padding-*
properties define offsets for the optimal viewing region of the scrollport: the region used as the target region for placing things in view of the user. This allows the author to exclude regions of the scrollport that are obscured by other content (such as fixed-positioned toolbars or sidebars), or simply to put more breathing room between a targeted element and the edges of the scrollport.
Constituent properties
This property is a shorthand for the following CSS properties:
Syntax
/* Keyword values */
scroll-padding: auto;
/* <length> values */
scroll-padding: 10px;
scroll-padding: 1em .5em 1em 1em;
scroll-padding: 10%;
/* Global values */
scroll-padding: inherit;
scroll-padding: initial;
scroll-padding: unset;
Values
<length-percentage>
- An inwards offset from the corresponding edge of the scrollport, as a valid
<length>
or a<percentage>
. auto
- The offset is determind by the user agent. This will generally be
0px
, but the user agent is free to detect and do something else if a non-zero value is more appropriate.
Formal definition
Initial value | auto
|
Applies to | scroll containers |
Inherited | no |
Percentages | relative to the scroll container's scrollport |
Computed value | as specified |
Animation type | by computed value type |
Formal syntax
[ auto | <length-percentage> ]{1,4}where <length-percentage> = <length> | <percentage>
Specifications
Specification | Status | Comment |
---|---|---|
CSS Scroll Snap Module Level 1The definition of 'scroll-padding' in that specification. | Candidate Recommendation | Initial definition |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
scroll-padding
|
Chrome
Full support 69 |
Edge
Full support 79 |
Firefox
Full support 68 |
IE
No support No |
Opera
Full support 56 |
Safari Partial support 11 Partial support 11 Notes' Scroll padding is not applied for scrolls to fragment target or |
WebView Android
Full support 69 |
Chrome Android
Full support 69 |
Firefox Android
Full support 68 |
Opera Android
Full support 48 |
Safari iOS Partial support 11 Partial support 11 Notes' Scroll padding is not applied for scrolls to fragment target or |
Samsung Internet Android
Full support 10.0 |
Legend
- Full support
- Full support
- Partial support
- Partial support
- No support
- No support
- See implementation notes.'
- See implementation notes.
scroll-padding by Mozilla Contributors is licensed under CC-BY-SA 2.5.