CSS scroll-padding-inline-end 属性
定义和用法
scroll-padding-inline-end
属性指定了从容器末端到子元素对齐位置之间在行内方向上的距离。
这意味着,当你停止滚动时,滚动将快速调整并停止在对齐位置与容器之间指定的距离处。
行内方向是指下一字符相对于现有字符在行中的位置放置的方向,这也是具有 CSS display: inline; 的标签(如 <a> 和 <strong> 标签)在文本中的布局方式。行内方向取决于书写语言,例如阿拉伯语的新字符是从右到左排列的,因此行内方向是从右到左的,而英文页面的行内方向是从左到右的。行内方向可以通过 CSS 属性 direction
和 writing-mode
定义。
对齐位置是指当你停止滚动时,子元素在容器中对齐到位的位置。
注意:此属性仅在 scroll-snap-align
属性为行内方向设置为 'end' 时才起作用。
要看到 scroll-padding-inline-end
属性的效果,必须在子元素上设置 scroll-snap-align
属性,并在父元素上设置 scroll-padding-inline-end
和 scroll-snap-type
属性。
实例
例子 1
设置从容器末端到对齐位置的行内方向滚动内边距为 20px:
div { scroll-padding-inline-end: 20px; }
例子 2:图片库
scroll-padding-inline-end
属性可以在具有对齐行为的图片画廊中使用,以将图片从固定元素后面推出:
#container { scroll-padding-inline-end: 30px; }
例子 3
当容器元素的 writing-mode
属性值设置为 'vertical-rl' 时,行内方向上容器和子元素的起始位置从左侧移动到顶部,而末端从右侧移动到底部。这会影响滚动对齐行为以及 scroll-padding-inline-end
属性的工作方式:
#container { scroll-padding-inline-end: 20px; writing-mode: vertical-rl; }
例子 4
当容器元素的 direction
属性值设置为 'rtl' 时,行内方向上容器和子元素的末端从右侧移动到左侧。这会影响滚动对齐行为以及 scroll-padding-inline-end
属性的工作方式:
#container { scroll-padding-inline-end: 20px; direction: rtl; }
CSS 语法
scroll-padding-inline-end: auto|value|initial|inherit;
属性值
值 | 描述 |
---|---|
auto | 默认值。浏览器计算填充。 |
length |
以 px、pt、cm 等单位指定 scroll-padding-inline-end。 不允许使用负值。请参阅:CSS 单位。 |
% | 指定包含元素宽度百分比的填充。 |
initial | 将此属性设置为其默认值。参阅 initial。 |
inherit | 从其父元素继承此属性。参阅 inherit。 |
技术细节
默认值: | auto |
---|---|
继承性: | 否 |
动画制作: | 不支持。请参阅:动画相关属性。 |
版本: | CSS3 |
JavaScript 语法: | object.style.scrollPaddingInlineEnd="20px" |
浏览器支持
表格中的数字表示首个完全支持该属性的浏览器版本。
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
69.0 | 79.0 | 68.0 | 15.0 | 56.0 |