Closed jianhuagao closed 1 month ago
你好,我认为您这个问题是由于Tour组件内部使用的蒙层-Overlay组件导致的。 在Overlay组件的配置项中存在一个lockScroll的属性,它用于控制展示蒙层是是否允许底层滚动。而它的方式非常粗暴,直接在根节点添加一个nut-overlay-hidden的类并强行选中页面节点设置滚动属性为hidden。而这就是现象所在的原因,当底层滚动时,右侧存在一个滚动条,因此内容偏左。当展示蒙层时,滚动条被强制消失,因此内容恢复原位,表现形式为内容相对于蒙层偏右,而蒙版消失时页面又会恢复滚动条,内容又偏左。 解决方案1:直接给滚动节点把滚动条宽度设置为0,可以使用-webkit-scrollbar伪元素来实现 解决方案2:在滚动节点通过id+!i的方式强行提高权重,阻止样式的覆盖 解决方案3:从底层修改Overlay锁定滚动的方式,用dom操作的方式阻止/允许滚动默认事件
NutUI React 包名
@nutui/nutui-react
NutUI React 版本号
2.6.21
平台
weapp
重现链接
https://nutui.jd.com/taro/react/2x/#/zh-CN/component/tour
重现步骤
去掉
nut-overflow-hidden
后正常期望的结果是什么?
不出现错位
实际的结果是什么?
出现错位
环境信息
No response
其他补充信息
No response