[转] iphoneX、iphoneXS、iphoneXSMax、iphoneXR适配
适配
2023-09-11 14:14:15 时间
基础知识
1. 关于iphoneX 、iphoneXS、iphoneXSMax、iphoneXR机型的大小和像素
![](http://upload-images.jianshu.io/upload_images/5393165-973cc636d2030bbc.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1000/format/webp)
机型尺寸
注意:开发人员只需要记住开发尺寸
2. 屏幕组成
齐刘海(44px) + 安全区域 + 手势区域(34px)
![](http://upload-images.jianshu.io/upload_images/5393165-c78594308b9b539a.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/767/format/webp)
屏幕组成
适配方案 1. viewport-fit viewport-fit="contain"展示区域在安全区中,不包括齐刘海和底部手势区域 viewport-fit="cover"展示区域整个屏幕中,包括齐刘海和底部手势区域 所以使用viewport-fit="contain"就可以解决适配问题,将下面的代码放在<head>标签中。 <meta name="viewport" content="width=device-width,initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=contain"> 2. css媒体查询 X、XS机型的媒体查询 /* x xs */ @media only screen and (device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3) { // iphoneX iphoneXS样式 } XR机型媒体查询 /* xr */ @media only screen and (device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 2) { // iphoneXR样式 } XS MAX机型媒体查询 /* xs max */ @media only screen and (device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 3) { // iphoneXR样式 } 3. js判断 通过window.navigator.userAgent、window.devicePixelRatio、window.screen三个属性来匹配 X、XS机型js检查 let isIphoneX = (/iphone/gi.test(window.navigator.userAgent) && window.devicePixelRatio && window.devicePixelRatio === 3 && window.screen.width === 375 && window.screen.height === 812) XR机型js检查 let isIphoneXr = (/iphone/gi.test(window.navigator.userAgent) && window.devicePixelRatio && window.devicePixelRatio === 2 && window.screen.width === 414 && window.screen.height === 896) XS MAX机型js检查 let isIphoneXsMax = (/iphone/gi.test(window.navigator.userAgent) && window.devicePixelRatio && window.devicePixelRatio === 3 && window.screen.width === 414 && window.screen.height === 896)
相关文章
- 数据源管理 | 基于JDBC模式,适配和管理动态数据源
- 基于Apollo3 Blue MCU芯片的可穿戴产品解决方案开发之六轴加速度传感器适配
- 【FAQ】从存储权限看HarmonyOS 3.0中应用适配
- Android多屏幕适配
- Android WiFi热点7.1以上版本适配
- android新版本适配-android13最全适配方案
- TextView文本大小自动适配与TextView边距的去除
- 纯IPv6环境App适配的坑
- 移动端 H5 分屏页面适配问题--设计稿比例与设备宽高比例不同
- 【Unity3D-UGUI篇】Unity3D中UGUI的屏幕适配
- 逆势获投1亿,火眼金睛下的云适配BRaaS新模式引关注
- 关于iphone5适配问题
- 【快应用】webview接口打开网页,网页会被自动放大,如何适配手机大小
- iOS9适配小结
- 移动端适配