CSS scroll-margin-block 属性
下面还有更多“亲自试一试”示例。
定义和用法
scroll-margin-block
属性指定了块方向上捕捉位置与容器之间的距离。
这意味着当您停止滚动时,滚动将快速调整并在块方向上与捕捉位置和容器之间指定的距离处停止。
块方向指的是下一行相对于现有行的位置,这也是具有 CSS display: block;
属性的标签(如 <p> 和 <div> 标签)在页面上布局的方式。块方向取决于书写语言,例如,蒙古语中新行从左到右排列,因此块方向为从左到右,而英语页面则具有向下块方向。块方向可以通过 CSS 属性 writing-mode
定义。
捕捉位置是子元素在容器中停止滚动时捕捉到的位置。
注意:此属性仅在 scroll-snap-align 属性针对块方向设置为 'start' 或 'end' 时才有效。
scroll-margin-block
属性是以下属性的简写属性
scroll-margin-block
属性的值可以通过多种方式设置
如果 scroll-margin-block 属性具有两个值
- scroll-margin-block: 10px 50px;
- 起始处的距离为 10px
- 结束处的距离为 50px
如果 scroll-margin-block 属性具有一个值
- scroll-margin-block: 10px;
- 起始处和结束处的距离均为 10px
要查看 scroll-margin-block
属性的效果,必须在子元素上设置 scroll-margin-block
和 scroll-snap-align
属性,并且必须在父元素上设置 scroll-snap-type
属性。
CSS scroll-margin-inline
和 scroll-margin-block
属性与 CSS 属性 scroll-margin-top
、scroll-margin-bottom
、scroll-margin-left
和 scroll-margin-right
非常相似,但 scroll-margin-block
和 scroll-margin-inline
属性取决于块方向和内联方向。
默认值 | 0 |
---|---|
继承 | no |
可动画 | no. 阅读有关可动画的信息 |
版本 | CSS3 |
JavaScript 语法 | object.style.scrollMarginBlock="20px" 试一试 |
浏览器支持
表中的数字指定了完全支持该属性的第一个浏览器版本。
属性 | |||||
---|---|---|---|---|---|
scroll-margin-block | 69.0 | 79.0 | 68.0 | 14.1 | 56.0 |
CSS 语法
scroll-margin-block: 0|value|initial|inherit;
属性值
值 | 描述 |
---|---|
0 | 默认。元素的默认 scroll-margin-block 值。 |
length | 指定以 px、pt、cm 等为单位的距离。允许负值。 阅读有关长度单位的信息 |
initial | 将此属性设置为其默认值。 阅读有关initial的信息 |
inherit | 从其父元素继承此属性。 阅读有关inherit的信息 |
更多示例
示例
如果子元素的 writing-mode
属性值为 vertical-rl,则元素在块方向上的起始位置将从顶部移动到右侧,元素的结束位置将从底部移动到左侧。这会影响滚动捕捉行为,以及 scroll-margin-block 属性的工作方式
div {
scroll-margin-block: 20px 0;
writing-mode: vertical-rl;
}
亲自试一试 »
相关页面
CSS scroll-margin-block-end 属性:CSS scroll-margin-block-end 属性
CSS scroll-margin-block-start 属性:CSS scroll-margin-block-start 属性
CSS scroll-snap-align 属性:CSS Scroll-snap-align 属性
CSS scroll-snap-type 属性:CSS Scroll-snap-type 属性
CSS writing-mode 属性:CSS Writing-mode 属性