44

似乎 Android Chrome 有一个相当大的错误,有时地址栏隐藏/显示会导致固定元素将其边界框向下/向上移动浏览器的地址栏高度。所以元素在视觉上停留在同一个位置,然而,边界框实际上发生了变化。这会使可点击区域变得无用,因为它们不再注册(见下图)。

该错误是间歇性的,但我已经能够通过快速滚动然后突然停止滚动触摸屏幕来非常可靠地复制它。有没有其他人遇到过这种情况,更重要的是,有没有人有避免这种行为的解决方案?

在第一张图片中,请注意没有地址栏。它通过向下滚动隐藏。边界框是它应该在的地方。

现在使用地址栏,它将整个边界框向下移动,在这种情况下不可见。这使得按钮的点击区域无用。

4

2 回答 2

1

我记得遇到过类似的问题,据我记得有 position:fixed 的元素,他们也需要这个:

transform: translate3d(0,0,0);

也就是最后是这样的

element {
    transform: translate3d(0px, 0px, 0px);
    position: fixed;
    top: 0;
}
于 2021-10-20T13:52:23.680 回答
-1

只有你需要添加

body{
 padding-bottom: 52px;
}
于 2021-11-04T13:13:58.800 回答