当前位置: 首页 > news >正文

要让cordova项目适配iphoneX + ios11.4,总共要几步?三步

最近新做的app被客户要求适配iphoneX,令我犯惹难,因为我不会而且本穷苦girl都没用过iphoneX,可咋办呢?
查呗
经过我在网上长时间的冲浪查找,发现适配iphoneX其实只需要三步

第一步:装一个插件吧

cordova plugin add cordova-plugin-splashscreen

安装splashscreen 插件
并在config.xml文件中添加iphoneX的启动图片(尺寸为1125 * 2436)
(有的时候在config.xml文件中添加可能会检测失败,可以尝试在Xcode中, Resources文件夹-images.xcassets中添加启动图片。方法为将图片拖动到想要设置的手机版本框内就可以了。)
效果变这样
图片描述

上面还是好丑哦!咋办呢?

第二步:meta改一下

<meta name="viewport">中加入viewport-fit=cover

效果变这样
图片描述

你们怎么挤到一起了啊!
看来不是你们太骚,就是我的header不够高
有请第三步!

第三步:加个padding

 .header{
     padding-top: **constant(safe-area-inset-top)**; 
     padding-top: **env(safe-area-inset-top);** /* 肥肠重要
 }
 

Webkit在iOS11中新增CSS Functions:env()替代constant(),文档中推荐使用env(),而constant()从Safari Techology Preview 41 和iOS11.2 Beta开始会被弃用。env()用法如同var(),在不支持env()的浏览器中,会自动忽略这一样式规则,不影响网页正常的渲染

好多文章因为发布时间较早,都只写了constant(),所以在ios11.4下完全不好用

关于这两个方法可以看文章最下的参考文章 iPhone X的缺口和CSS
我上面那段也是直接从人家文章里复制过来的嘻嘻嘻

最终效果
图片描述

哼哼,完美解决


参考文章 https://blog.phonegap.com/dis...
correctly-on-the-iphone-x-c4a85664c493

Displaying a PhoneGap App Correctly on the iPhone X
完全照这篇文章的做的,靴靴国外大佬,等我静下心来再用我幼儿园水平英语仔细拜读一遍

参考文章 https://www.w3cplus.com/css/t...

iPhone X的缺口和CSS
对safe-area-inset-top和viewport-fit=cover都有肥肠详细

相关文章:

  • PhotoShop制作gif动态广告效果示例
  • 怎样轻松将SD卡照片数据恢复
  • [总结型] HADOOP HDFS BALANCER介绍及经验总结
  • 销售财务出身的创业者,占了95%,未来却可能被他打败
  • centos搭建FTP文件服务
  • Odoo 自定义Widgets 基础教程(章节1)
  • 改maven下创建的动态网站依赖的jre版本
  • Linux 服务管理两种方式service和systemctl
  • 渗透测试(theharvester steghide)
  • Gsoap编译
  • springboot启动时可以用到的事件监听
  • 深入浅出 VuePress(一):如何做到在 Markdown 中使用 Vue 语法
  • 在首次发布三周之后,MLflow迎来了0.2版本
  • 共享文件远程读写 经常会出现 提示多重连接的问题
  • 云数据库架构演进与实践
  • 【跃迁之路】【735天】程序员高效学习方法论探索系列(实验阶段492-2019.2.25)...
  • Angular 响应式表单之下拉框
  • create-react-app项目添加less配置
  • Dubbo 整合 Pinpoint 做分布式服务请求跟踪
  • extjs4学习之配置
  • js写一个简单的选项卡
  • Laravel核心解读--Facades
  • Linux下的乱码问题
  • Lsb图片隐写
  • mysql常用命令汇总
  • react-native 安卓真机环境搭建
  • RxJS: 简单入门
  • ubuntu 下nginx安装 并支持https协议
  • vue.js框架原理浅析
  • Vue.js源码(2):初探List Rendering
  • vue-cli3搭建项目
  • 从0实现一个tiny react(三)生命周期
  • 简单易用的leetcode开发测试工具(npm)
  • 码农张的Bug人生 - 初来乍到
  • 前端面试题总结
  • 悄悄地说一个bug
  • SAP CRM里Lead通过工作流自动创建Opportunity的原理讲解 ...
  • ​Java并发新构件之Exchanger
  • ###C语言程序设计-----C语言学习(3)#
  • #Z2294. 打印树的直径
  • (1)Android开发优化---------UI优化
  • (java版)排序算法----【冒泡,选择,插入,希尔,快速排序,归并排序,基数排序】超详细~~
  • (NO.00004)iOS实现打砖块游戏(九):游戏中小球与反弹棒的碰撞
  • (差分)胡桃爱原石
  • (分布式缓存)Redis持久化
  • (蓝桥杯每日一题)love
  • .babyk勒索病毒解析:恶意更新如何威胁您的数据安全
  • .bat批处理(七):PC端从手机内复制文件到本地
  • .NET Core 中的路径问题
  • .NET Windows:删除文件夹后立即判断,有可能依然存在
  • .net 无限分类
  • .NET 依赖注入和配置系统
  • .NET 中选择合适的文件打开模式(CreateNew, Create, Open, OpenOrCreate, Truncate, Append)
  • .net对接阿里云CSB服务
  • @selector(..)警告提示