列表通过让item高度为0,实现轮播效果。但是这个方案有个bug,会影响外部滚动条,有没有人帮忙看下原因以及怎么解决。这个问题DataV 的轮播表 也有这个问题。
我写了个简单的 demo,可以复现。
源码:https://codesandbox.io/p/sandbox/zealous-leftpad-zpmdq3?file=/src/App.vue:11,59
预览:https://zpmdq3-5173.csb.app/#target
datav 轮播表滚动影响外部滚动条
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
矫健的退堂鼓鼓手 2023-08-26 11:18关注可能是由于列表项高度变为0导致的外部滚动条异常。当你将列表项的高度设置为0时,实际上是将这些项隐藏起来了,这可能会影响外部容器的高度计算,进而影响外部滚动条的显示和滚动。
可以尝试使用CSS属性visibility而不是height来隐藏列表项。将列表项的visibility设置为hidden,而不是将高度设置为0。这样可以隐藏列表项,但不会影响外部滚动条的计算。
也使用动画效果进行隐藏。而不是立即将列表项高度设置为0,可以使用CSS动画或JavaScript动画进行平滑的高度变化。这种方式可以防止突然造成外部滚动条的异常。
(没看链接的内容,这些只是思路,仅供参考)解决 无用评论 打赏 举报