机型:iphone 5s
系统版本:9.3.5
微信版本:6.7.0
需求:滑动页面到指定位置 固定元素到顶部
问题:滚动到指定位置 添加fixed top属性不生效 元素固定在初始位置
关于sticky:部分Android不支持这个属性,目前是采用,position: sticky,滚动到指定位置 加position: fixed覆盖,这样支持sticky的会先生效,再加fixed不影响,不支持的fixed会生效。
框架类型 | 问题类型 | 终端类型 | 操作系统 | 微信版本 | 基础库版本 |
---|---|---|---|---|---|
小程序 | Bug | 客户端 | iOS | 6.7.0 | 2.1.1 |
1 个回答
css 的层叠上下文 (比如 flex/transform) 会使子级的 fixed 失效为普通的 absolute。
小程序的 dom 操作不太优秀,直接赋 style 不如添加 class 效果好。
非常感谢您的回答!
要固定的view父级元素就是普通的view,再外层就是page,父级只有display:block;box-sizing:border-box;应该没有叠层上下文的影响,就算失效为absolute,那top值也应该生效
现在就是通过添加class加的fixed
我目前的解决方案是: 认为ios都支持sticky(目前我们公司最低的iphone5s是支持的),Android才加fixed固定
ps: 我用远程调试的时候,审查元素,审查选中的元素位置是对的,但是实际显示的位置不对。不知道是开发者工具的问题,还是在谷歌浏览器审查元素的时候也会发生类似情况
恩恩,思路暂时都没问题,那就看具体情况吧。
截图或者代码片段来一份?
617754841
// QQ