Open In App

CSS scroll-margin-block property

Improve
Improve
Like Article
Like
Save
Share
Report

The scroll-margin-block property is used to set all the scroll margins to the start and end of a scroll element at once. This property is shorthand for the scroll-margin-block-start and scroll-margin-block-end property.

The selection of the start and end sides depends upon the writing mode. The start side and end side are top and bottom sides respectively for horizontal-tb writing mode.

  • Where horizontal-tb stands for horizontal top-to -bottom.

The start side and end side are left and right sides respectively for vertical-rl or vertical-lr writing mode.

  • Where vertical-rl is the vertical right to left and vertical-lr is the vertical left-to-right.

Syntax:

scroll-margin-block: length
/* Or */
scroll-margin-block: Global_Values

Property values: The scroll-margin-block property accepts two properties mentioned above and described below:

  • length: This property refers to the values defined with length units like em, px, rem, vh, etc.
  • Global_Values: This property refers to the global values like inherit, initial, unset, etc.

Note: scroll-margin-block doesn’t accept percentage value as the length.

Example: In this example, you can see the effect of scroll-margin-block by scrolling to a point partway between two of the “interfaces” of the example’s content.

HTML




<!DOCTYPE html>
<html>
<head>
    <style>
        .page {
            width: 278px;
            height: 296px;
            box-sizing: border-box;
            color: white;
            font-size: 60px;
            display: flex;
            align-items: center;
            justify-content: center;
            scroll-snap-align: end none;
        }
 
        .Container {
            width: 300px;
            height: 300px;
            overflow-x: hidden;
            overflow-y: auto;
            white-space: nowrap;
            scroll-snap-type: y mandatory;
        }
    </style>
</head>
<body>
    <div class="Container">
        <div class="page"
            style="background-color: rgb(95, 236, 14);
                scroll-margin-block: 90px;">
            Geeks
        </div>
        <div class="page"
            style="background-color: rgb(25, 143, 25);
                scroll-margin-block: 90px;">
            for
        </div>
        <div class="page"
            style="background-color: rgb(110, 228, 129);
                scroll-margin-block: 90px;">
            Geeks
        </div>
        <div class="page"
            style="color: black;
                scroll-margin-block: 90px;">
            for
        </div>
        <div class="page"
            style="background-color: rgb(25, 143, 25);
                scroll-margin-block: 90px;">
            Geeks
        </div>
    </div>
</body>
</html>


Output:

Browsers Supported:

  • Google Chrome 69
  • Edge 79
  • Firefox 68
  • Opera 56
  • Safari 14.1


Last Updated : 29 Aug, 2022
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads