手册
目录
收藏913
分享
阅读1042
更新时间2025-07-16
scroll-margin-block 属性指定在块方向上,吸附位置(snap position)与容器之间的距离。
这意味着当您停止滚动时,滚动会快速调整并停止在块方向上吸附位置与容器之间的指定距离处。
块方向是指相对于现有行位置放置下一行的方向,这也是具有 CSS display: block; 的标签(如
和
writing-mode 来定义。
吸附位置是指当你停止滚动时,子元素在容器中吸附到位的位置。
注意:此属性仅在块方向的 scroll-snap-align 属性设置为 'start' 或 'end' 时有效。
scroll-margin-block 属性是以下属性的简写属性:
scroll-margin-block-startscroll-margin-block-endscroll-margin-block 属性的值可以通过不同方式设置:
scroll-margin-block: 10px 50px;
scroll-margin-block: 10px;
要看到 scroll-margin-block 属性的效果,必须在子元素上设置 scroll-margin-block 和 scroll-snap-align 属性,并在父元素上设置 scroll-snap-type 属性。
CSS 的 scroll-margin-inline 和 scroll-margin-block 属性与 CSS 属性 CSS scroll-margin-top 属性、scroll-margin-bottom、scroll-margin-left 和 scroll-margin-right 非常相似,但 scroll-margin-block 和 scroll-margin-inline 属性依赖于块方向和行内方向。
设置块方向上吸附位置与可滚动容器之间的距离:
div {
  scroll-margin-block: 10px;
}
运行实例 »点击 "运行实例" 按钮查看在线实例
当子元素的 writing-mode 属性值设置为 vertical-rl 时,元素在块方向的起始位置从顶部移动到右侧,结束位置从底部移动到左侧。这会影响滚动吸附行为以及 scroll-margin-block 属性的工作方式:
div {
  scroll-margin-block: 20px 0;
  writing-mode: vertical-rl;
}
运行实例 »点击 "运行实例" 按钮查看在线实例
scroll-margin-block: 0|value|initial|inherit;
| 值 | 描述 | 
|---|---|
| 0 | 默认。元素的默认 scroll-margin-block 值。 | 
| length | 
	 指定以 px、pt、cm 等为单位的距离。允许负值。 请参阅:CSS 单位。  | 
| initial | 将此属性设置为其默认值。参阅 initial。 | 
| inherit | 从其父元素继承此属性。参阅 inherit。 | 
| 默认值: | 0 | 
|---|---|
| 继承性: | 否 | 
| 动画制作: | 不支持。请参阅:动画相关属性。 | 
| 版本: | CSS3 | 
| JavaScript 语法: | object.style.scrollMarginBlock="20px" | 
表格中的数字表示首个完全支持该属性的浏览器版本。
| Chrome | Edge | Firefox | Safari | Opera | 
|---|---|---|---|---|
| 69.0 | 79.0 | 68.0 | 14.1 | 56.0 | 
参考:CSS scroll-margin-block-end 属性
参考:CSS scroll-margin-block-start 属性
参考:CSS scroll-snap-align 属性
参考:CSS scroll-snap-type 属性
参考:CSS writing-mode 属性
相关
视频
RELATED VIDEOS
科技资讯
1
2
3
4
5
6
7
8
9
精选课程
							
							共5课时
17.2万人学习
							
							共49课时
77万人学习
							
							共29课时
61.7万人学习
							
							共25课时
39.3万人学习
							
							共43课时
70.9万人学习
							
							共25课时
61.6万人学习
							
							共22课时
23万人学习
							
							共28课时
33.9万人学习
							
							共89课时
125万人学习