微信小程序:position: fixed导致的滚动时页面元素不跟着动的问题

itlao6 原创 开发&源码 微信小程序评论1,043字数 777阅读2分35秒阅读模式

由于对js的不熟悉,花了近半个小时才解决这个问题,现在记录下:

微信小程序:position: fixed导致的滚动时页面元素不跟着动的问题
nofixed.gif

项目需要如上图所示的一个列表页面,唰唰唰...没花多长时间就完成了,在元素较少时,不需要滚动,使用一切正常;文章源自IT老刘-https://wp.itlao6.com/916.html

后来添加了更多的item后,页面需要滚动,但是滚动的效果感觉莫名其妙,如下图:文章源自IT老刘-https://wp.itlao6.com/916.html

微信小程序:position: fixed导致的滚动时页面元素不跟着动的问题
fixed.gif

OMG???居然有部分元素不随着页面一起滚动...(キ`゚Д゚´)!!...一脸懵逼中...文章源自IT老刘-https://wp.itlao6.com/916.html

没办法,有病得治,有Bug赶紧改...百度谷歌必应了一阵,后来看代码才发现,css中使用了position: fixed;文章源自IT老刘-https://wp.itlao6.com/916.html

果断去掉,修改下css,发现,果然是因为设置这个属性导致该控件位置固定,不再随着页面而滚动...文章源自IT老刘-https://wp.itlao6.com/916.html

搜了下postion属性,加强了解下:文章源自IT老刘-https://wp.itlao6.com/916.html

position有四个属性值:relative,absolute,static,fixed

  1. static(静态定位)
    默认值。没有定位,元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明)。
  2. relative(相对定位)
    生成相对定位的元素,通过top,bottom,left,right的设置相对于其正常(原先本身)位置进行定位。可通过z-index进行层次分级。
  3. absolute(绝对定位)
    生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。可通过z-index进行层次分级。
  4. fixed(固定定位)
    生成绝对定位的元素,相对于浏览器窗口进行定位。元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。可通过z-index进行层次分级。

简书:ThinkinLiu 博客: IT老五文章源自IT老刘-https://wp.itlao6.com/916.html


微信小程序:position: fixed导致的滚动时页面元素不跟着动的问题
IT老五(it-lao5):关注公众号,一起源创,一起学习!
文章源自IT老刘-https://wp.itlao6.com/916.html文章源自IT老刘-https://wp.itlao6.com/916.html
weinxin
我的微信公众号
微信扫一扫关注公众号,不定时更新
itlao6
  • 本文由 发表于 2019年 5月 25日 14:44:30
  • 转载请务必保留本文链接:https://wp.itlao6.com/916.html
评论  0  访客  0
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定