`scroll-margin-right` CSS property
Baseline Widely available
This feature is well established and works across many devices and browser versions. It's been available across browsers since January 2020.
The scroll-margin-right property defines the right margin of the scroll snap area that is used for snapping this box to the snapport. The scroll snap area is determined by taking the transformed border box, finding its rectangular bounding box (axis-aligned in the scroll container's coordinate space), then adding the specified outsets.
Try it
scroll-margin-right: 0;
scroll-margin-right: 20px;
scroll-margin-right: 2em;
<section class="default-example" id="default-example">
<div class="scroller">
<div>1</div>
<div id="example-element">2</div>
<div>3</div>
</div>
<div class="info">Scroll »</div>
</section>
.default-example {
flex-wrap: wrap;
}
.default-example .info {
width: 100%;
padding: 0.5em 0;
font-size: 90%;
}
.scroller {
text-align: left;
width: 250px;
height: 250px;
overflow-x: scroll;
display: flex;
box-sizing: border-box;
border: 1px solid black;
scroll-snap-type: x mandatory;
}
.scroller > div {
flex: 0 0 250px;
width: 250px;
background-color: rebeccapurple;
color: white;
font-size: 30px;
display: flex;
align-items: center;
justify-content: center;
scroll-snap-align: end;
}
.scroller > div:nth-child(even) {
background-color: white;
color: rebeccapurple;
}
Syntax
/* <length> values */ scroll-margin-right: 10px; scroll-margin-right: 1em; /* Global values */ scroll-margin-right: inherit; scroll-margin-right: initial; scroll-margin-right: revert; scroll-margin-right: revert-layer; scroll-margin-right: unset;
Values
-
<length> - An outset from the right edge of the scroll container.
Formal definition
| Initial value | 0 |
|---|---|
| Applies to | all elements |
| Inherited | no |
| Computed value | as specified |
| Animation type | by computed value type |
Formal syntax
scroll-margin-right =
<length>
Specifications
Browser compatibility
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on iOS | Samsung Internet | WebView Android | WebView on iOS | |
scroll-margin-right |
69 |
79 |
68 |
56 |
14.1
11Before version 14.1, scroll margin is not applied for scrolls to fragment target orscrollIntoView(), see bug 189265. |
69 |
68 |
48 |
14.5
11Before version 14.5, scroll margin is not applied for scrolls to fragment target orscrollIntoView(), see bug 189265. |
10.0 |
69 |
14.5
11Before version 14.5, scroll margin is not applied for scrolls to fragment target orscrollIntoView(), see bug 189265. |
See also
- CSS scroll snap module
- Well-controlled scrolling with CSS scroll snap on web.dev (2018)
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/scroll-margin-right