Sticky是粘滞效CSS3的一个定位属性,它可以让元素在滚动过程中“粘”在屏幕上的粘滞效某个位置,直到滚动到某个临界点后才会跟随滚动。粘滞效Sticky定位可以使得页面更具交互性和易用性,粘滞效也提高了页面的粘滞效可读性。 Sticky定位可以通过以下代码实现:
position: sticky;top: 0;
其中,top属性定义了元素“粘”在屏幕上的粘滞效位置。当元素到达指定位置时,粘滞效它将会变成固定定位,粘滞效直到滚动到指定位置后才会解除固定定位。粘滞效 Sticky定位的特点:
场景:客户需要这样一个动态效果,就是网站的顶部导航栏在未触及到页面顶部时,它的高度为 100px ,随着页面向下滚动,顶部导航栏在触及页面顶部时,保持在页面顶部显示,当页面继续向下滚动时,顶部导航栏导航栏随滚动减少高度,直到高度减少到50px时不再继续减少。在以前:我们基本使用js来实现此效果,基本原理就是监听滚动条,计算滚动距离,动态赋值高度和样式。在现在:我们直接使用 position: sticky; 即可实现此效果:
<div class="header">
<div class="header2">
这是吸附
</div>
</div>
.header {
position: sticky;
top: -50px;
width: 100%;
height: 100px;
background-color: #f0f;
}
.header2 {
position: sticky;
top: 0;
background-color: rgba(25,25,25,.5);
height: 50px;
}
是不是很简单就能实现此效果啦,相比js一大堆逻辑代码, position: sticky; 可简洁的不是一点两点啦。
可见,对现代浏览器,兼容还是不错哒,当然老项目ie浏览器还是只有乖乖的写js啦。
责任编辑:华轩 来源: 今日头条 CSSSticky前端(责任编辑:综合)
冀东装备(000856.SZ)公布消息:拟向冀东集团申请总额不超4亿元借款
荣盛发展大股东质押公司7599万股股份 占公司总股本比例的1.75%