【css3】记录列表滚动位置

列表滚动互相影响?

因为列表并非在自己内部进行滚动,而是在整个body页面进行滚动。不论在哪个频道栏目下都会滚动body元素。

调试工具:查看当前滚动元素

function findScroller (element) {
     element.onscroll = function() { 
        console.log(element)
    }
        Array.from(element.children).forEach(findScroller)
}
findScroller(document.body)

解决:

让当前页面标签产生自己的滚动容器 :

  • 固定高度:height: xxx;
  • 溢出滚动:overflow-y: auto;

需要注意高度应使用vh作为单位
CSS3 中新增了一种视口单位 vw 和vh,即根据你浏览器窗口的大小的单位,不受父元素影响。
PS:在移动端,视口单位相对于布局视口。

  • 1w=可视窗口宽度的百分之一,比如窗口宽度是 750,则1vw=7.5px
  • 1vh=可视窗口高度的百分之一,比如窗口高度是 667,则1vh=6.67px

使用唯一需要注意的就是它的兼容性:
在PC端已兼容到 IE9
在移动端 iOS 8以上以及Android 4.4 以上获得支持,并且在微信 x5 内核中也得到完美的全面支持

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值