地址栏上的背景图像偏移在 iOS/Android/Mobile Chrome 中隐藏
问题
使用 CSS 开发响应式网站时,包括完整的- 屏幕背景图像在两个 div 之间旋转和淡入淡出,出现意外行为:在 iOS Safari、Android 浏览器上向下滚动时,背景图像会轻微跳跃,或 Android Chrome。这是由于地址栏隐藏并因此调整背景 div 的大小而导致的,背景 div 的大小已固定并设置为 100% 高度。
解决方案
要解决此问题,存在两种可能的解决方案:
- 将 #bg1 和 #bg2 高度设置为 100vh:这个解决方案理论上很优雅,使用视口高度来设置合适的高度。但是,iOS 有一个 vh bug 影响了此解决方案。
- 使用 JavaScript 设置静态高度:视口大小由 JavaScript 确定时不受地址栏影响。因此,JavaScript 可以根据视口大小设置背景 div 的静态高度。由于其非纯 CSS 性质以及页面加载时轻微的图像跳转,这不是一个理想的解决方案,但考虑到 iOS 的 vh bug,它是可行的。
使用以下 JavaScript 代码将调整背景动态高度:
var bg = $("#bg1, #bg2"); function resizeBackground() { bg.height($(window).height()); } $(window).resize(resizeBackground); resizeBackground();
其他注意事项
虽然上述解决方案有效地防止了背景大小调整,但它可能当用户向下滚动时会产生明显的间隙。此间隙是由于将背景高度与屏幕匹配减去 URL 栏高度而产生的。通过在高度上增加 60px 可以解决这个问题,但这意味着当 URL 栏存在时,背景图像的底部 60px 将不可见:
function resizeBackground() { bg.height( $(window).height() + 60); }
值得注意的是,这些调整大小iOS 和 Android 中的 URL 栏因其对网站功能的影响而引起人们的关注。尽管它们的目的已被理解,但它们的行为可能会给基于 CSS 的设计带来意想不到的挑战。
以上是为什么当地址栏隐藏时,我的全屏背景图片在移动 Chrome 上会跳转?的详细内容。更多信息请关注PHP中文网其他相关文章!

React生态系统为我们提供了许多库,所有库都集中在拖放的相互作用上。我们有反应,反应,可爱dnd,

我可以说我经常使用背景折叠。 IT Wager IT几乎从未在日常CSS工作中使用。但是在斯特凡·朱迪斯(Stefan Judis)的帖子中,我想起了它,

使用RequestAnimationFrame进行动画化应该很容易,但是如果您还没有彻底阅读React的文档,那么您可能会遇到一些事情

听着,我不是GraphQL专家,但我确实喜欢与之合作。作为前端开发人员,它向我曝光数据的方式非常酷。它就像一个菜单


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

WebStorm Mac版
好用的JavaScript开发工具

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

禅工作室 13.0.1
功能强大的PHP集成开发环境