Lzh on GitHub

scroll-padding

用于控制吸附容器中元素滚动偏移量的工具类。

快速参考

类名样式
scroll-p-<number>scroll-padding: calc(var(--spacing) * <number>);
-scroll-p-<number>scroll-padding: calc(var(--spacing) * -<number>);
scroll-p-(<custom-property>)scroll-padding: var(<custom-property>);
scroll-p-[<value>]scroll-padding: <value>;
scroll-px-<number>scroll-padding-inline: calc(var(--spacing) * <number>);
-scroll-px-<number>scroll-padding-inline: calc(var(--spacing) * -<number>);
scroll-px-(<custom-property>)scroll-padding-inline: var(<custom-property>);
scroll-px-[<value>]scroll-padding-inline: <value>;
scroll-py-<number>scroll-padding-block: calc(var(--spacing) * <number>);
-scroll-py-<number>scroll-padding-block: calc(var(--spacing) * -<number>);
scroll-py-(<custom-property>)scroll-padding-block: var(<custom-property>);
scroll-py-[<value>]scroll-padding-block: <value>;
scroll-ps-<number>scroll-padding-inline-start: calc(var(--spacing) * <number>);
-scroll-ps-<number>scroll-padding-inline-start: calc(var(--spacing) * -<number>);
scroll-ps-(<custom-property>)scroll-padding-inline-start: var(<custom-property>);
scroll-ps-[<value>]scroll-padding-inline-start: <value>;
scroll-pe-<number>scroll-padding-inline-end: calc(var(--spacing) * <number>);
-scroll-pe-<number>scroll-padding-inline-end: calc(var(--spacing) * -<number>);
scroll-pe-(<custom-property>)scroll-padding-inline-end: var(<custom-property>);
scroll-pe-[<value>]scroll-padding-inline-end: <value>;
scroll-pt-<number>scroll-padding-top: calc(var(--spacing) * <number>);
-scroll-pt-<number>scroll-padding-top: calc(var(--spacing) * -<number>);
scroll-pt-(<custom-property>)scroll-padding-top: var(<custom-property>);
scroll-pt-[<value>]scroll-padding-top: <value>;
scroll-pr-<number>scroll-padding-right: calc(var(--spacing) * <number>);
-scroll-pr-<number>scroll-padding-right: calc(var(--spacing) * -<number>);
scroll-pr-(<custom-property>)scroll-padding-right: var(<custom-property>);
scroll-pr-[<value>]scroll-padding-right: <value>;
scroll-pb-<number>scroll-padding-bottom: calc(var(--spacing) * <number>);
-scroll-pb-<number>scroll-padding-bottom: calc(var(--spacing) * -<number>);
scroll-pb-(<custom-property>)scroll-padding-bottom: var(<custom-property>);
scroll-pb-[<value>]scroll-padding-bottom: <value>;
scroll-pl-<number>scroll-padding-left: calc(var(--spacing) * <number>);
-scroll-pl-<number>scroll-padding-left: calc(var(--spacing) * -<number>);
scroll-pl-(<custom-property>)scroll-padding-left: var(<custom-property>);
scroll-pl-[<value>]scroll-padding-left: <value>;

示例

基本示例

使用 scroll-pt-<number>scroll-pr-<number>scroll-pb-<number>scroll-pl-<number> 等工具类,例如 scroll-pl-4scroll-pt-6,可以设置吸附容器内元素的滚动偏移量:

在图片网格中滚动以查看预期行为

<div class="snap-x scroll-pl-6 ...">
  <div class="snap-start ...">
    <img src="/img/vacation-01.jpg" />
  </div>
  <div class="snap-start ...">
    <img src="/img/vacation-02.jpg" />
  </div>
  <div class="snap-start ...">
    <img src="/img/vacation-03.jpg" />
  </div>
  <div class="snap-start ...">
    <img src="/img/vacation-04.jpg" />
  </div>
  <div class="snap-start ...">
    <img src="/img/vacation-05.jpg" />
  </div>
</div>

使用逻辑属性

使用 scroll-ps-<number>scroll-pe-<number> 工具类来设置 scroll-padding-inline-startscroll-padding-inline-end 逻辑属性。这些属性会根据文本方向映射到左侧或右侧:

在图片网格中滚动以查看预期行为

Left-to-right

Right-to-left

<div dir="ltr">
  <div class="snap-x scroll-ps-6 ...">
    <!-- ... -->
  </div>
</div>
<div dir="rtl">
  <div class="snap-x scroll-ps-6 ...">
    <!-- ... -->
  </div>
</div>

使用负值

要使用负的滚动内边距值,请在类名前加上一个破折号以将其转换为负值:

<div class="-scroll-ps-6 snap-x ...">
  <!-- ... -->
</div>

使用自定义值

使用 scroll-pl-[<value>]scroll-pe-[<value>] 等工具类,可以根据完全自定义的值来设置滚动内边距

<div class="scroll-pl-[24rem] ...">
  <!-- ... -->
</div>

对于 CSS 变量,你还可以使用 scroll-pl-(<custom-property>) 语法:

<div class="scroll-pl-(--my-scroll-padding) ...">
  <!-- ... -->
</div>

这只是 scroll-pl-[var(<custom-property>)] 的一个简写,它会自动为你添加 var() 函数。

响应式设计

scroll-padding 工具类前加上 md:断点变体,使其仅在中等屏幕尺寸及以上应用:

<div class="scroll-p-8 md:scroll-p-0 ...">
  <!-- ... -->
</div>

变体文档 中了解更多关于使用变体的信息。

自定义你的主题

scroll-p-<number>scroll-px-<number>scroll-py-<number>scroll-ps-<number>scroll-pe-<number>scroll-pt-<number>scroll-pr-<number>scroll-pb-<number>scroll-pl-<number> 等工具类由 --spacing 主题变量驱动,该变量可以在你自己的主题中进行自定义:

@theme {
  --spacing: 1px; 
}

主题变量文档 中了解更多关于自定义间距比例的信息。