CSS - scroll-margin-inline-start



The property scroll-margin-inline-start helps to snap the box to the snapport by establishing the margin for the scroll snap area at the start of the horizontal dimension.

This area is computed by adding the designated outsets to the rectangular bounding box of the modified border box inside the coordinate space of the scroll container.

Possible Value

<length> - An outset from the corresponding edge of the scroll container.

Applies to

All elements

Syntax

scroll-margin-inline-start = <length>     

CSS scroll-margin-inline-start - Basic Example

The following example demonstrates the usage of scroll-margin-inline-start property.

<html>
<head>
<style>
   #demoScroll {
      width: 65%;
      aspect-ratio: 16/9;
      padding: 20px;
      margin: auto;
      border: solid 3px #333;
      overflow-x: auto; 
      overflow-y: hidden;
      white-space: nowrap; 
   }
   .snap-block {
      width: 100%; 
      height: 90%;
      scroll-snap-align: start;
      scroll-margin-inline-start: 50px;
      border-radius: 10px;
      background-color: #3498db;
      display: inline-block;
   }
   .color-block:nth-child(2n) {
      background-color: #27ae60; 
   }
   .color-block:nth-child(3n) {
      background-color: #f39c12; 
   }
   .color-block:nth-child(4n) {
      background-color: #e74c3c; 
   }
   .color-block:nth-child(5n) {
      background-color: #9b59b6; 
   }
</style>
</head>
<body>
<h3>scroll-margin-inline-start</h3>
<p>Scroll through the horizontally scrollable blocks.</p>
<div id="demoScroll">
   <div class="snap-block"></div>
   <div class="snap-block"></div>
   <div class="snap-block"></div>
   <div class="snap-block"></div>
   <div class="snap-block"></div>
   <div class="snap-block"></div>
   <div class="snap-block"></div>
</div>
</body>
</html>
Advertisements