CSS scroll-padding-left Property
Example
Set scroll padding to 20px from the left side of the container to the snap position:
div {
scroll-padding-left: 20px;
}
Try it Yourself »
More "Try it Yourself" examples below.
Definition and Usage
The scroll-padding-left
property specifies
the distance from the left side of the container to the snap position on the child elements.
Snap position is the position on the child element where it snaps into place in the container when you stop scrolling. Snap position is set with scroll-snap-align
property, but can also be affected by CSS properties direction
and writing-mode
.
Note: This property only works if the snap position is placed on the left side of the child element.
To see the effect from the scroll-padding-left
property, the scroll-snap-align
property must be set on the child elements, and the scroll-padding-left
and scroll-snap-type
properties must be set on the parent element.
Default value: | auto |
---|---|
Inherited: | no |
Animatable: | no. Read about animatable |
Version: | CSS3 |
JavaScript syntax: | object.style.scrollPaddingLeft="20px" Try it |
Browser Support
The numbers in the table specify the first browser version that fully supports the property.
Property | |||||
---|---|---|---|---|---|
scroll-padding-left | 69.0 | 79.0 | 68.0 | 14.1 | 56.0 |
CSS Syntax
scroll-padding-left: auto|value|initial|inherit;
Property Values
Value | Description |
---|---|
auto | Default value. The browser calculates the padding |
length | Specifies scroll-padding-left in px, pt, cm, etc. Negative values are not allowed. Read about length units |
% | Specifies the padding in percent of the width of the containing element |
initial | Sets this property to its default value. Read about initial |
inherit | Inherits this property from its parent element. Read about inherit |
More Examples
Image gallery
The scroll-padding-left
property can be used in an image gallery with snap behaviour, to push images into view from behind a fixed element:
#container > img {
scroll-padding-left: 30px;
}
![alley](https://www.w3schools.com/cssref/img_chania.jpg)
![bridge in jungle](https://www.w3schools.com/cssref/img_forest_narrow.jpg)
![mountains](https://www.w3schools.com/cssref/img_mountains.jpg)
![man with camera](https://www.w3schools.com/cssref/img_man_narrow.jpg)
![Cinque Terre](https://www.w3schools.com/cssref/img_5terre.jpg)
Set scroll-padding on the left side
The scroll-padding-left
property can also be set on the container when snap behaviour is set in both directions. Scroll to the next element horizontally to see the effect:
#container > div {
scroll-padding-left: 30px;
}
Snap position
The snap position must be placed on the left side of the child elements for the scroll-padding-left
property to work. In this example the direction
property value 'rtl' changes the snap position from left side to right side of child elements. With the code like this the scroll-padding-left
property no longer works:
#container {
direction: rtl;
scroll-padding-left: 30px;
}
#container > div {
scroll-snap-align: none start;
}
Try it Yourself »
Related Pages
CSS direction property: CSS Direction property
CSS scroll-snap-align property: CSS Scroll-snap-align property
CSS scroll-snap-type property: CSS Scroll-snap-type property
CSS writing-mode property: CSS Writing-mode property