H5页面适配 iPhoneX

viewport-fit

iOS11 新增特性,苹果公司为了适配 iPhoneX 对现有 viewport meta 标签的一个扩展,用于设置网页在可视窗口的布局方式,可设置三个值:

  • contain: 可视窗口完全包含网页内容(左图)
  • cover:网页内容完全覆盖可视窗口(右图)
  • auto:默认值,跟 contain 表现一致

iOS11 新增特性,Webkit 的一个 CSS 函数,用于设定安全区域与边界的距离,有四个预定义的变量:

  • safe-area-inset-left:安全区域距离左边边界距离
  • safe-area-inset-right:安全区域距离右边边界距离
  • safe-area-inset-top:安全区域距离顶部边界距离
  • safe-area-inset-bottom:安全区域距离底部边界距离

第一步:设置网页在可视窗口的布局方式

新增 viweport-fit 属性,使得页面内容完全覆盖整个窗口:


1

<meta name=“viewport” content=“width=device-width, viewport-fit=cover”>

第二步:页面主体内容限定在安全区域内

这一步根据实际页面场景选择,如果不设置这个值,可能存在小黑条遮挡页面最底部内容的情况。


1

2

3


body {

padding-bottom: env(safe-area-inset-bottom);

}

别忘了使用 @supports

写到这里,我们常见的两种类型的 fixed 元素适配方案已经了解了吧,但别忘了,一般我们只希望 iPhoneX 才需要新增适配样式,我们可以配合 @supports 这样编写样式:


1

2

3

4

5


@supports (bottom: env(safe-area-inset-bottom)) {

div {

margin-bottom: env(safe-area-inset-bottom);

}

}

原文地址:https://www.cnblogs.com/wengwj/p/9334874.html

时间: 2024-08-01 23:54:40

H5页面适配 iPhoneX的相关文章

原生webview中使用沉浸状态栏,H5页面适配iphoneX顶部

@media only screen and (device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3) { .tit{ //顶部fix定位 加padding,具体数值自测 padding-top: .5rem !important; } .p-iphonex{//列表也需要padding,否则顶栏会遮住 padding-top: .5rem !important; } } 原文地址:h

iphoneX适配-客户端H5页面

由于iphoneX做了全面屏并且还保留一块小刘海,因此很多以前的移动端H5页面需要结合App客户端做出相应的适配,具体如下: 1.顶部通栏 之前的客户端一直采用状态栏20pt+导航栏44pt的做法.由于iphoneX多了一块小刘海,因此iphoneX单独采用状态栏44pt+导航栏44pt,意味着内嵌的H5页面整体下移24pt. 2.底部操作栏 由于iphoneX是全面屏,页面最底部会被弯曲的拐角截掉一部分,特别是有底部固定悬浮的tab条会严重受到影响.这时候需要底部留出一块空白安全区域,页面内容

iPhone X 适配手机端 H5 页面通用解决方案

一:本文提供两种解决方案 1.终端解决方案(最优,建议选择) 2.web解决方案 导语: iPhone X的出现,一方面对于整个手机行业的发展极具创新领头羊的作用,另一方面也对现有业务的页面适配带来了新的挑战. 对于手Q中的各业务来说,受iPhone X影响的H5页面挺多,应该采取什么快速有效的办法来应对呢? 目前的H5页面可以分为通栏页面和非通栏页面两种,每种页面都可能有底部操作栏,具体如下: 通栏页面 顶部通栏 某些业务的一级页面多数使用了顶部通栏banner的效果,由于iPhone X在状

收藏文章:使用Flexible实现手淘H5页面的终端适配

使用Flexible实现手淘H5页面的终端适配 曾几何时为了兼容IE低版本浏览器而头痛,以为到Mobile时代可以跟这些麻烦说拜拜.可没想到到了移动时代,为了处理各终端的适配而乱了手脚.对于混迹各社区的偶,时常发现大家拿手机淘宝的H5页面做讨论——手淘的H5页面是如何实现多终端的适配? 那么趁此Amfe阿里无线前端团队双11技术连载之际,用一个实战案例来告诉大家,手淘的H5页面是如何实现多终端适配的,希望这篇文章对大家在Mobile的世界中能过得更轻松. 虽然H5的页面与PC的Web页面相比简单

移动端H5页面高清多屏适配方案

背景 开发移动端H5页面 面对不同分辨率的手机 面对不同屏幕尺寸的手机 视觉稿 在前端开发之前,视觉MM会给我们一个psd文件,称之为视觉稿. 对于移动端开发而言,为了做到页面高清的效果,视觉稿的规范往往会遵循以下两点: 1)首先,选取一款手机的屏幕宽高作为基准(以前是iPhone4的320×480,现在更多的是iphone6的375×667). 2)对于retina屏幕(如: dpr=2),为了达到高清效果,视觉稿的画布大小会是基准的2倍,也就是说像素点个数是原来的4倍(对iphone6而言:

使用Flexible实现手淘H5页面的终端适配

/*使用方式:在页面顶部引入flexible.js,将页面视觉设计稿切成10份,例如640px宽的视觉设计稿可切分成10个64px宽,以此为基准,手动计算页面中元素宽高和字体相对于64px比值,将这个比值作为元素宽高或字体大小的rem值即可*/ 曾几何时为了兼容IE低版本浏览器而头痛,以为到Mobile时代可以跟这些麻烦说拜拜.可没想到到了移动时代,为了处理各终端的适配而乱了手脚.对于混迹各社区的偶,时常发现大家拿手机淘宝的H5页面做讨论-- 手淘的H5页面是如何实现多终端的适配 ? 那么趁此 

使用Flexible实现手淘H5页面的终端适配(转)

曾几何时为了兼容IE低版本浏览器而头痛,以为到Mobile时代可以跟这些麻烦说拜拜.可没想到到了移动时代,为了处理各终端的适配而乱了手脚.对于混迹各社区的偶,时常发现大家拿手机淘宝的H5页面做讨论——手淘的H5页面是如何实现多终端的适配? 那么趁此Amfe阿里无线前端团队双11技术连载之际,用一个实战案例来告诉大家,手淘的H5页面是如何实现多终端适配的,希望这篇文章对大家在Mobile的世界中能过得更轻松. 目标 拿一个双11的Mobile页面来做案例,比如你实现一个类似下图的一个H5页面: 目

基于rem的移动端响应式适配方案(详解) 移动端H5页面的设计稿尺寸大小规范

基于rem的移动端响应式适配方案(详解) : https://www.jb51.net/article/118067.htm 移动端H5页面的设计稿尺寸大小规范 http://www.tuyiyi.com/v/53039.html 原文地址:https://www.cnblogs.com/bydzhangxiaowei/p/9536126.html

H5页面 强制横屏显示 适配IOS和安卓

H5页面 强制横屏显示 适配IOS和安卓 <script> var evt = "onorientationchange" in window ? "orientationchange" : "resize"; $(window).resize(function(){ resize(); }); window.addEventListener(evt, resize(), false); function resize(){ var