好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

CSS适配iPhone全面屏的方法

一、media query方式

/*iPhone X 适配*/
@media only screen and (device-width: 375px) and (device-h ei ght: 812px) and (- webkit -device-pixel-ratio: 3) {
 .fixed-bottom{
 bottom: 37px;
 }
}
/*iPhone XS max 适配*/
@media only screen and (device-width: 414px) and (device-height: 896px) and (-webk IT -device-pixel-ratio:3) {
 .fixed-bottom{
 bottom: 37px;
 }
}
/*iPhone XR max 适配*/
@media only screen and (device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio:2) {
 .fixed-bottom{
 bottom: 37px;
 }
}

存在的问题:在微信webveiw内部此 方案 能在元素底部加上安全区域 宽 度,没有问题。但是在safari等有底栏的浏览器(页面显示区域已经在安全区内部)也同样会加上安全区宽度。

二、CSS函数

苹果 在推出全面屏之后提供的CSS函数,ios<11.2为constant(),ios>11.2为 env ()。可填入safe-area -i nset -t op、safe-area-inset-left、safe-area-inset-right、safe-area-inset-bottom对应上下左右的安全区域宽度。env 和 constant 只有在 viewport-fit=cover 时候才能 生效 。

代码如下:

meta标签加入viewport-fit=cover

< ;m eta n am e="viewport" content="width=device-width, initial -s cale=1, maximum-scale=1, user-scalable=no, viewport-fit=cover">

cs S写 法,不支持env、constant的浏览器会忽略此样式

.fixed-bottom{
 bottom: 0;
 bottom: constant(safe-area-inset-bottom);
 bottom: env(safe-area-inset-bottom);
}

此方案能解决方案一的问题,且代码更简洁

到此这篇关于CSS适配iPhone全面屏的方法的 文章 就介绍到这了,更多相关CSS适配iPhone全面屏内容请搜索以前的文章或继续浏览下面的相关文章,希望大家以后多多支持!

总结

以上是 为你收集整理的 CSS适配iPhone全面屏的方法 全部内容,希望文章能够帮你解决 CSS适配iPhone全面屏的方法 所遇到的问题。

如果觉得 网站内容还不错, 推荐好友。

查看更多关于CSS适配iPhone全面屏的方法的详细内容...

  阅读:23次