sticky定位(粘性定位),指的是基于用户的滚动位置来定位。不同于前四个定位,他有点像relative和fixed的结合:当定位基点是自身默认位置时,他呈现为relative定位,而当页面滚动区域大于你的目标区域时,他则表现为fixed定位,可以固定在页面的某个位置。
粘性定位特点:
1.以浏览器的可视窗口为参照点移动元素(固定定位特点)
2.粘性定位占有原先的位置(相对定位特点)
3.必须添加 top 、left、right、bottom 其中一个才有效
如图,我们给顶部nav栏加上sticky定位,刚进入页面的时候,他会保持相对定位,如图所示:
而当我们向下滚动页面时,他又会固定在页面上方:
有时会出现设置粘性定位不起作用的情况,需要注意几点:
1、父元素不能设置overflow:hidden或overflow:auto属性
2、元素定位表现为在跨越特定阈值前为相对定位,之后为固定定位。即必须指定 top, right, bottom 或 left 四个阈值之一才可使粘性定位生效。否则只会处于相对定位。
3、父元素的高度不能低于sticky元素的高度
4、sticky元素仅在其父元素内生效
上一篇: 移动端适配
关键词: