CSS - scroll-snap-align 屬性



CSS scroll-snap-align 屬性指定了已捕捉元素在其捕捉容器內的定位方式。它接受兩個值,第一個用於塊軸,第二個用於內聯軸。

可能的值

  • none − 已捕捉元素不會與捕捉容器的捕捉區域對齊。

  • start − 已捕捉元素的捕捉點與捕捉容器的捕捉區域的起始端對齊。

  • end − 已捕捉元素的捕捉點與捕捉容器的捕捉區域的結束端對齊。

  • center − 已捕捉元素的捕捉點與捕捉容器的捕捉區域的中心對齊。

捕捉區域是滾動容器中與捕捉區域對齊的區域。

應用於

所有 HTML 元素。

DOM 語法

object.style.scrollSnapAlign = "none|start|end|center";

CSS Scroll Snap Align - None 值

以下示例演示瞭如何使用 scroll-snap-align: none 屬性 −

<html>
<head>
<style>
   .scroll-container {
      display: flex;
      width: 350px;
      height: 200px;
      overflow-x: auto;
      overflow-y: hidden;
   }
   .scrolling-section1,
   .scrolling-section2,
   .scrolling-section3
   {
      flex: 0 0 auto;
      width: 300px;
      height: 200px;
      scroll-snap-align: none;
   }
   .scrolling-section1 {
      background-color: rgb(220, 235, 153);
   }
   .scrolling-section2 {
      background-color: rgb(230, 173, 218);
   }
   .scrolling-section3 {
      background-color: rgb(176, 229, 238);
   }
</style>
</head>
<body>
   <div class="scroll-container">
      <div class="scrolling-section1">scroll-snap-align: none</div>
      <div class="scrolling-section2">scroll-snap-align: none</div>
      <div class="scrolling-section3">scroll-snap-align: none</div>
   </div>
</body>
</html>

CSS Scroll Snap Align - Start 值

以下示例演示瞭如何使用 scroll-snap-align: start 屬性 −

<html>
<head>
<style>
   .scroll-container {
      display: flex;
      width: 350px;
      height: 200px;
      overflow-x: auto;
      overflow-y: hidden;
      scroll-snap-type: x mandatory;
   }
   .scrolling-section1,
   .scrolling-section2,
   .scrolling-section3 {
      flex: 0 0 auto;
      width: 300px;
      height: 200px;
      scroll-snap-stop: always;
   }
   .scrolling-section1 {
      background-color: rgb(220, 235, 153);
      scroll-snap-align: start;
   }
   .scrolling-section2 {
      background-color: rgb(230, 173, 218);
   }
   .scrolling-section3 {
      background-color: rgb(176, 229, 238);   
   }
</style>
</head>
<body>
   <div class="scroll-container">
      <div class="scrolling-section1">scroll-snap-align: start</div>
      <div class="scrolling-section2">scroll-snap-align</div>
      <div class="scrolling-section3">scroll-snap-align</div>
   </div>
</body>
</html>

CSS Scroll Snap Align - Center 值

以下示例演示瞭如何使用 scroll-snap-align: center 屬性 −

<html>
<head>
<style>
   .scroll-container {
      display: flex;
      width: 350px;
      height: 200px;
      overflow-x: auto;
      overflow-y: hidden;
      scroll-snap-type: x mandatory;
   }
   .scrolling-section1,
   .scrolling-section2,
   .scrolling-section3 {
      flex: 0 0 auto;
      width: 300px;
      height: 200px;
      scroll-snap-stop: always;
   }
   .scrolling-section1 {
      background-color: rgb(220, 235, 153);
   }
   .scrolling-section2 {
      background-color: rgb(230, 173, 218);
      scroll-snap-align: center;
   }
   .scrolling-section3 {
      background-color: rgb(176, 229, 238);  
   }
</style>
</head>
<body>
   <div class="scroll-container">
      <div class="scrolling-section1">scroll-snap-align</div>
      <div class="scrolling-section2">scroll-snap-align: center</div>
      <div class="scrolling-section3">scroll-snap-align</div>
   </div>
</body>
</html>

CSS Scroll Snap Align - End 值

以下示例演示瞭如何使用 scroll-snap-align: end 屬性 −

<html>
<head>
<style>
   .scroll-container {
      display: flex;
      width: 350px;
      height: 200px;
      overflow-x: auto;
      overflow-y: hidden;
      scroll-snap-type: x mandatory;
   }
   .scrolling-section1,
   .scrolling-section2,
   .scrolling-section3
   {
      flex: 0 0 auto;
      width: 300px;
      height: 200px;
      scroll-snap-stop: always;
   }
   .scrolling-section1 {
      background-color: rgb(220, 235, 153);
   }
   .scrolling-section2 {
      background-color: rgb(230, 173, 218);
   }
   .scrolling-section3 {
      background-color: rgb(176, 229, 238); 
      scroll-snap-align: end; 
   }
</style>
</head>
<body>
   <div class="scroll-container">
      <div class="scrolling-section1">scroll-snap-align</div>
      <div class="scrolling-section2">scroll-snap-align</div>
      <div class="scrolling-section3">scroll-snap-align: end</div>
   </div>
</body>
</html>
廣告
© . All rights reserved.