热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

顶部有白边_【iPhoneX适配】干掉应用在Safari中显示的白边

-期待你的关注和收藏-耳朵们要好好收藏原文:StephenRadford|译:程琳琳新的iPhoneX具有美观的全屏显示。但是,在浏览器的
3785c4724c2760a0946350bf54e180fb.png

- 期待你的关注和收藏 -

45fc3c93dd2d8292f2bc61c45020aee7.gif

耳朵们要好好收藏

原文:Stephen Radford | 译:程琳琳

新的iPhone X具有美观的全屏显示。但是,在浏览器的顶端有一个小小的缺口,在默认情况下,横屏查看网站时,会出现横屏显示问题。

为了适应iOS 11顶部缺口,默认会将网站限制在屏幕上的“安全区域”内。使得浏览大多数网站时,出现左右侧出现白边。

840af3c506a1681cbdc9fad231221324.png

庆幸的是有两个简单的解决思路。

一、背景色(background-color)

如果您的网站使用单一纯色作为背景,那么最适合您的解决方案就是用background-color在您的body代码上设置属性。上面的网站案例,就会得出以下结果:

411bee98fa75709c38bd2b58b49d2810.png

正如上图所示:边距保持不变,只填充背景颜色

viewport-fit

如果您更喜欢对设计进行额外的控制,或者使用渐变或图像作为背景,则只设置一个 background-color可能还不可行。在最新版本的iOS中,Apple已经在CSS Round Display Spec中添加了viewport-fit的描述符。

只需添加viewport-fit=cover到您的meta标记,即可将您的网站扩大到填补整个屏幕,而不仅仅是安全区域。

b8ec70bb011932e372748019e4dfba5f.png

这样使得上面的网站案例,得出以下结果:

1004fc0796aad30a1963871c360b3d08.png

显然,现在需要开发人员/设计师手动调整来适应屏幕的缺口。

safe-area-inset-*

为了处理可能需要的任何调整,iOS 11的Safari版本包含一些可以在使用时viewport-fit=cover使用的常量。

  • safe-area-inset-top
  • safe-area-inset-right
  • safe-area-inset-left
  • safe-area-inset-bottom

这可以被添加到margin,padding或诸如top、left一样的绝对位置值。我将以下内容添加到网站的主要容器中。

cd954dca6588eb521d0825a6d1f880a4.png

这完美解决了页面上菜单和社交媒体图标位置问题。

72a348bfbf11a239ef13791494ccce12.png

喜欢请点赞 分享朋友圈也是一种赞赏



推荐阅读
  • 在2020年8月19日的深度分析中,我们探讨了HTML标签中同时存在`a`标签的`href`和`onclick`属性时的触发顺序问题。此外,还讨论了如何在一个自适应高度的父级`div`中,使两个子`div`中的一个固定高度为300px,另一个自动填充剩余空间的方法。最后,文章详细介绍了JavaScript异步加载的多种实现方式,包括但不限于`async`、`defer`属性以及动态脚本插入技术,为开发者提供了丰富的技术参考。 ... [详细]
  • 在iOS平台上,应用的流畅操作体验一直备受赞誉。然而,过去开发者往往将更多精力集中在功能实现上,而对性能优化的关注相对较少。本文深入探讨了iOS应用性能优化的关键要点与实践方法,旨在帮助开发者提升应用的响应速度、降低功耗,并改善整体用户体验。通过具体案例分析和技术解析,文章提供了实用的优化策略,包括代码层面的改进、资源管理优化以及界面渲染效率的提升等。 ... [详细]
  • 本文详细解析了如何利用Appium与Python在真实设备上执行测试示例的方法。首先,需要开启手机的USB调试功能;其次,通过数据线将手机连接至计算机并授权USB调试权限。最后,在命令行工具中验证设备连接状态,确保一切准备就绪,以便顺利进行测试。 ... [详细]
  • Panabit应用层流量管理解决方案
    Panabit是一款国内领先的应用层流量管理解决方案,提供高度开放且免费的专业服务,尤其擅长P2P应用的精准识别与高效控制。截至2009年3月25日,该系统已实现对多种网络应用的全面支持,有效提升了网络资源的利用效率和安全性。 ... [详细]
  • 消息功能:ExchangeOnline中的电子邮件和日历功能Mac用户可以使用如下客户端程序来访问自己的ExchangeOnline邮箱和日历:*Mic ... [详细]
  • Ceph API微服务实现RBD块设备的高效创建与安全删除
    本文旨在实现Ceph块存储中RBD块设备的高效创建与安全删除功能。开发环境为CentOS 7,使用 IntelliJ IDEA 进行开发。首先介绍了 librbd 的基本概念及其在 Ceph 中的作用,随后详细描述了项目 Gradle 配置的优化过程,确保了开发环境的稳定性和兼容性。通过这一系列步骤,我们成功实现了 RBD 块设备的快速创建与安全删除,提升了系统的整体性能和可靠性。 ... [详细]
  • 在处理分享功能时,以往通常会首先考虑使用第三方SDK,如友盟等。然而,通过实际项目经验发现,利用iOS原生的UIActivityViewController不仅可以实现高效、稳定的分享功能,还能更好地控制用户体验。本文将详细介绍如何利用iOS原生技术缓存HTML内容,并结合URL分享的最佳实践,帮助开发者在实际开发中提升应用性能和用户满意度。 ... [详细]
  • 2019年后蚂蚁集团与拼多多面试经验详述与深度剖析
    2019年后蚂蚁集团与拼多多面试经验详述与深度剖析 ... [详细]
  • 在使用关系型数据库时,通常需要通过用户名和密码进行身份验证才能访问数据。然而,MongoDB默认情况下并不强制要求这种身份验证机制,使得用户无需凭据即可访问并执行各种操作。虽然这一设计简化了初学者的上手过程,但也带来了显著的安全风险。为了提升MongoDB的连接安全性,本文将探讨多种策略与实践,包括启用身份验证、配置网络访问控制、加密通信以及定期审计安全设置,以确保数据库的安全性和数据的完整性。 ... [详细]
  • 在 Linux 系统中,`/proc` 目录实现了一种特殊的文件系统,称为 proc 文件系统。与传统的文件系统不同,proc 文件系统主要用于提供内核和进程信息的动态视图,通过文件和目录的形式呈现。这些信息包括系统状态、进程细节以及各种内核参数,为系统管理员和开发者提供了强大的诊断和调试工具。此外,proc 文件系统还支持实时读取和修改某些内核参数,增强了系统的灵活性和可配置性。 ... [详细]
  • 本文探讨了将PEBuilder转换为DIBooter.sh的方法,重点介绍了如何将DI工具集成到启动层,实现离线镜像引导安装。通过使用DD命令替代传统的grub-install工具,实现了GRUB的离线安装。此外,还详细解析了bootice工具的工作原理及其在该过程中的应用,确保系统在无网络环境下也能顺利引导和安装。 ... [详细]
  • Docker网络基础探讨了如何通过高效的技术手段实现跨主机容器间的顺畅通信与访问。本文深入分析了Docker网络架构,特别是其在多主机环境下的应用,为Go语言开发者提供了宝贵的实践指导和理论支持。 ... [详细]
  • 定义Function类型:1functionsum(num1,num2){return num1+num2;}2varsumfunction(num1,num2){returnn ... [详细]
  • 2017-09-07前端日报精选JavaScriptEventLoop机制详解与Vue.js中实践应用Redux基础与实践如何用js获取虚拟键盘高度?( ... [详细]
  • 开发工具WebDeveloper1.1.8https:addons.mozilla.orgen-USfirefoxaddon60以工具栏的形式对网页的(X)HTML、脚本、多媒体、 ... [详细]
author-avatar
O八戒有点坏O
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有