Taro: H5 page 页下拉刷新组件, 导致页面内的 position:fixed 元素失效的问题

Created on 3 Jun 2019  ·  12Comments  ·  Source: NervJS/taro

PullDownRefresh组件有 transform , 在他里面的子组件有 固定定位的元素的话, 会无法基于浏览器视口做定位. 而变成基于 PullDownRefresh 组件定位, 导致弹窗定位错误

Most helpful comment

PullDownRefresh组件有 transform , 在他里面的子组件有 固定定位的元素的话, 会无法基于浏览器视口做定位. 而变成基于 PullDownRefresh 组件定位, 导致弹窗定位错误

这个问题可以通过覆盖样式解决
.rmc-pull-to-refresh-transition {
transform: none !important;
}

All 12 comments

欢迎提交 Issue~

如果你提交的是 bug 报告,请务必遵循 Issue 模板的规范,尽量用简洁的语言描述你的问题,最好能提供一个稳定简单的复现。🙏🙏🙏

如果你的信息提供过于模糊或不足,或者已经其他 issue 已经存在相关内容,你的 issue 有可能会被关闭。

Good luck and happy coding~

CC @Littly

出现同样问题固定定位position:fixed:会失效,去掉onPullDownRefresh 显示效果正常

顶一下

@qianzhaoy @Xyspeaker h5下能看到这个动画吗:
image

试过createPortal,会有异常

@guxingke201 没有吧

@guxingke201 没有吧

h5没有动画,那h5下要自己弄个动画吗?
那应该是bug吧...没空去看源码修改,坐等修复

@guxingke201 是报 Nerv 找不到吗?

我把 Nerv 导出给全局就可以了

import Nerv, { createPortal } from 'nervjs'
window['Nerv'] = Nerv

不记得了,后面提了一个pr,不知道为啥一直没合并

PullDownRefresh组件有 transform , 在他里面的子组件有 固定定位的元素的话, 会无法基于浏览器视口做定位. 而变成基于 PullDownRefresh 组件定位, 导致弹窗定位错误

这个问题可以通过覆盖样式解决
.rmc-pull-to-refresh-transition {
transform: none !important;
}

PullDownRefresh组件有 transform , 在他里面的子组件有 固定定位的元素的话, 会无法基于浏览器视口做定位. 而变成基于 PullDownRefresh 组件定位, 导致弹窗定位错误

这个问题可以通过覆盖样式解决
.rmc-pull-to-refresh-transition {
transform: none !important;
}

完美解决了我目前遇到的问题。改了好多东西没想到最后这么容易解决了。非常感谢

Was this page helpful?
0 / 5 - 0 ratings