x
 
<!DOCTYPE html>
<html>
<head>
<style>
#container {
  width: 80%;
  aspect-ratio: 3/1;
  margin: auto;
  border: solid black 2px;
  overflow-x: hidden;
  overflow-y: scroll;
  scroll-snap-type: y mandatory;
  scroll-padding-top: 20px;
}
.blue {
  background-color: lightblue;
  width: 95%;
  aspect-ratio: 3/1;
}
.green {
  background-color: lightgreen;
  width: 80%;
  aspect-ratio: 4/1;
}
.blue, .green {
  margin: 2px;
  scroll-snap-align: start;
}
</style>
</head>
<body>
<h1>CSS scroll-padding-top 属性</h1>
<p>在容器上设置了 scroll-padding-top 属性,以便子元素的吸附位置相对于容器顶部有一个偏移距离。</p>
<p>在此情况下,y 方向的吸附位置设置为开始位置,因此焦点元素应该吸附到容器的最顶部。但由于 scroll-padding-top 的值,焦点元素与容器顶部之间有一个 20px 的偏移距离。</p>
<div id="container">
  <div class="blue"></div>
  <div class="green"></div>
  <div class="blue"></div>
  <div class="green"></div>
  <div class="blue"></div>
  <div class="green"></div>
  <div class="blue"></div>
</div>
</body>
</html>