谷歌浏览器垂直滚动条神秘出现又消失?

新手上路,请多包涵

我一直在处理的网站有这个奇怪的、看似不一致的问题,它似乎只发生在谷歌浏览器上。

我的主要内容部分偶尔会出现垂直和水平滚动条。

当我将页面作为文件打开时,滚动条会在打开页面和刷新页面时间歇性地弹出。它们通常不会出现,但每隔几次刷新左右,它们就会弹出。

当我使用 NGiNX 在本地运行页面时,滚动条会在打开页面时弹出,但在我刷新时会消失,再多的刷新也无法将其恢复。如果我在我设置的两个不同的测试页面之间来回点击,滚动条会一直停留。只有在重新加载时,它们才会消失。

当我从我的临时免费网站托管网站 Zymic 运行它时,我没有看到这个问题。实际上我什至不打算担心它,因为它在直播时没有出现,但当我注意到本地运行的 Web 服务器弹出问题时,我认为我应该调查一下。

我不知道从哪里开始寻找可能导致问题的原因,但我提供了一个可以清楚地显示问题的视频,以及指向我当前实时站点的链接。根据其他人的报告和我自己的经验,该问题不会出现在实时站点上,但它会提供对我当前所有代码的访问权限(当前的代码,我正在尝试一些东西)并且我很乐意提供任何特别要求的代码片段。我会尝试立即提供可能导致问题的位,除了我不知道:\ 但如果我缩小任何范围,我将包括那部分代码以及我发现的内容。

问题的 58 秒短视频:http: //youtu.be/K7tjGJ8hIV0

实时站点(此链接不应出现问题):http: //jrltest.zxq.net/

非常感谢大家!

原文由 Soundfx4 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.3k
2 个回答

这是由您的 overflow:auto; 样式引起的 #maincontent div。只需将样式更改为 overflow:hidden; 即可使滚动条永久消失。

如果溢出的内容适合容器,自动溢出将不对溢出的内容执行任何操作,但如果它溢出哪怕一点点,它都会插入滚动条以允许用户滚动。在您的情况下,Chrome 可能会识别单个溢出像素,因此插入滚动条。这可能与缓存和图像加载有关。我的想法是,如果图像已经在缓存中,Chrome 会确切地知道它有多大,并且它知道图像将适合容器,但是当它尚未缓存时,它会保留一些空间供图像加载,并且由于该空间明显比实际图像略大,因此会占用一些额外的空间。

原文由 Joeytje50 发布,翻译遵循 CC BY-SA 3.0 许可协议

检查您的 body 值是否设置为 overflow:hidden; 如果是,则更改它;)

原文由 Andris 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题