Skip to content
Related Articles

Related Articles

Improve Article

CSS scroll-margin-block property

  • Last Updated : 07 Sep, 2020

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 verticle-rl or verticle-lr writing mode.

  • Where verticle-rl is the verticle right to left and verticle-lr is the verticle 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.




<!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:

  • Chrome
  • Firefox
  • Safari (Not Supported)
  • Edge
  • Internet Explorer (Not Supported)
  • Opera



My Personal Notes arrow_drop_up
Recommended Articles
Page :