CSS scroll-margin 属性
更多“自己尝试”的例子见下文。
定义和用法
scroll-margin 属性指定吸附位置与容器之间的距离。
这意味着当您停止滚动时,滚动会快速调整并停止在对齐点和容器之间的指定距离处。
吸附点是指当您停止滚动时,子元素在容器中吸附到的位置。
注意: 在上面的示例中,scroll-margin 设置在所有侧面,但由于设置了 scroll-snap-align 属性为“start”,因此只有顶部边距的滚动行为会发生变化。
scroll-margin 属性是以下属性的简写形式:
scroll-margin 属性的值可以以多种方式设置:
如果 scroll-margin 属性有四个值:
- scroll-margin: 15px 30px 60px 90px;
- 顶部距离为 15px
- 右侧距离为 30px
- 底部距离为 60px
- 左侧距离为 90px
如果 scroll-margin 属性有三个值:
- scroll-margin: 15px 30px 60px;
- 顶部距离为 15px
- 左右距离为 30px
- 底部距离为 60px
如果 scroll-margin 属性有两个值:
- scroll-margin: 15px 30px;
- 上下距离为 15px
- 左右距离为 30px
如果 scroll-margin 属性有一个值:
- scroll-margin: 10px;
- 所有四个距离均为 10px
要查看 scroll-margin 属性的效果,必须在子元素上设置 scroll-margin 和 scroll-snap-align 属性,并在父元素上设置 scroll-snap-type 属性。
浏览器支持
表中的数字指定了完全支持该属性的第一个浏览器版本。
| 属性 | |||||
|---|---|---|---|---|---|
| scroll-margin | 69.0 | 79.0 | 90.0 | 14.1 | 56.0 |
CSS 语法
scroll-margin: 0|值|initial|inherit;
属性值
| 值 | 描述 |
|---|---|
| 0 | scroll-margin 为零。这是默认值 |
| length | 指定 scroll-margin,单位可以是 px、pt、cm 等。允许使用负值。 阅读有关长度单位的信息 |
| initial | 将此属性设置为其默认值。阅读关于initial |
| inherit | 从其父元素继承此属性。阅读关于inherit |
更多示例
图片库
scroll-margin 属性可用于具有吸附行为的图片库。在此示例中,scroll-margin 使您可以看到左侧有一张图片。滚动到第一张图片之后,您将看到效果。
#container > img {
scroll-margin: 0 0 0 30px;
}
在底部和右侧设置 scroll-margin
scroll-margin 属性可以同时设置在元素的底部和右侧。向水平和垂直方向滚动到下一个元素以查看效果。
#container > div {
scroll-margin: 0 10px 30px 0;
}
相关页面
CSS scroll-margin-bottom 属性: CSS scroll-margin-bottom 属性
CSS scroll-margin-left 属性: CSS scroll-margin-left 属性
CSS scroll-margin-right 属性: CSS scroll-margin-right 属性
CSS scroll-margin-top 属性: CSS scroll-margin-top 属性
CSS scroll-snap-align 属性:CSS Scroll-snap-align 属性
CSS scroll-snap-type 属性:CSS Scroll-snap-type 属性