1. 程式人生 > >對於iphone X 相容性處理的css適配方法和js適配方法

對於iphone X 相容性處理的css適配方法和js適配方法

1. 如果想全屏覆蓋,html裡面請使用

<meta name="viewport" content="width=device-width,initial-scale=1,viewport-fit=cover">

ps:我的實際專案裡,只在手機qq 裡面去訪問頁面時候 出現底部灰色安全區域塊,可以說現在大部分公司頁面都沒有做相容,包括百度,美團,京東...

so  html 加此屬性,網頁就可以全屏覆蓋。


2.如果想對某個元素進行底部上移或者頂部下移可以做以下適配。

   :如果想下面constant env 屬性有效果,請務必新增上面meta 標籤才能實現。

/*
 *  iphoneX pulic  css


 *  2018-01-01
 */

@media only screen and (device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3){ 

   body{
      padding-bottom: constant(safe-area-inset-bottom);
      padding-bottom: env(safe-area-inset-bottom);
   }

   .iphonex-pt{
      padding-top: constant(safe-area-inset-top);
      padding-top: env(safe-area-inset-top);
   }
   .iphonex-pb{
      padding-bottom: constant(safe-area-inset-bottom);
      padding-bottom: env(safe-area-inset-bottom);
   }
   .iphonex-mt{
      margin-top: constant(safe-area-inset-top);
      margin-top: env(safe-area-inset-top);
   }
   .iphonex-mb{
      margin-bottom: constant(safe-area-inset-bottom);
      margin-bottom: env(safe-area-inset-bottom);
   }
   .iphonex-pl{
      padding-left: constant(safe-area-inset-left);
      padding-left: env(safe-area-inset-left);
   }
   .iphonex-pr{
      padding-right: constant(safe-area-inset-right);
      padding-right: env(safe-area-inset-right);
   }
   .iphonex-ml{
      margin-left: constant(safe-area-inset-left);
      margin-left: env(safe-area-inset-left);
   }
   .iphonex-mr{
      margin-right: constant(safe-area-inset-right);
      margin-right: env(safe-area-inset-right);
   }
   .iphonex-bd-top-bg{
      border-top: 88px solid transparent;
   }
   .iphonex-bd-top{
      border-top: 44px solid transparent;
   }
   .iphonex-bd-bottom{
      border-bottom: 34px solid transparent;
   }

}

3.js 方法,有些介面必須用js 去處理,不能用css樣式實現,那麼就可以這樣做

if($(window).width() === 375 && $(window).height() === 724 && window.devicePixelRatio === 3){

        $(".phonex-pb").css("padding-bottom","34px");
}

ps: 寫在後面

對於constant(safe-area-inset-bottom) 這樣的屬性完全可以不用寫在media 媒體查詢裡面,上面只是做了公共樣式處理,safe-area-inset-bottom 意義其實相當於 底部34px。類似padding-bottom:34px;考慮其他相容問題,多做了一個透明border 處理方法,僅僅是一種解決方式而已,其實都能實現。

//這是我整理的方法,只對個人專案的相容,僅供參考。

相關推薦

對於iphone X 相容性處理css方法js方法

1. 如果想全屏覆蓋,html裡面請使用 <meta name="viewport" content="width=device-width,initial-scale=1,viewport-

iPhone X以及iOS11的一些問題以及簡單的

1、iPhone X尺寸問題解析度1125*2436  (375*812)導航欄為 44+44  原來為20+44。  ([[UIApplication sharedApplication] statusBarFrame].size.height可以獲取到當前的狀態列的高度,

dedecms織夢繫統移動端教程(JS跳轉方法

關於移動適配,很多人會選擇在百度站長工具後臺提交適配規則,不過這樣處理對於其他搜尋引擎無效,我的處理方法就是,在提交適配規則的基礎上同時也做一下JS跳轉適配。 之前發現很多站點全部頁面都JS跳轉到移動站首頁,這樣處理對於搜尋引擎是很不友好的。其實只要改下程式碼,很容易實現一對

作業系統: 最佳演算法鄰近演算法的模擬實現(記憶體分配演算法)

實現動態分割槽的分配演算法。 (1) 最佳適配演算法:選擇記憶體空閒塊中最適合程序大小的塊分配。 (2) 鄰近適配演算法:從上一次分配的地址開始查詢符合要求的塊,所查詢到的第一個滿足要求的空閒塊就分配給程序。 模擬新增程序的時候,假定記憶體是一塊完整的空閒區,對於演算法(1

關於iPhone X下Home Indicator(白條)的隱藏延遲響應

iPhone X Edge Protect在iPhone X 中通知中心和控制中心全部都移動到了由頂部劉海處下拉和右上角下拉來觸發。原本底部的所有手勢都被Home Indicator佔用。其實Edge Protect在這裡依然適用,只是對於Home Indicator的手勢有

webpack配置:css文件打包JS壓縮打包

模塊 rules rul 頁面 style 所在 語法 span 服務器 一、CSS文件打包   1、在src下新建css文件,在css文件下新建index.css文件,輸入以下代碼 body{ color:red; font-size:20px; }

CSS :focus偽類JS focus事件提高網站鍵盤可訪問性

鍵盤訪問網站的常用操作包括: Tab鍵索引控制元件元素; Enter鍵觸發當前處於focus狀態的點選行為; 上下鍵上下滾動網頁; Space空白鍵滾動一屏網頁; Home鍵返回頂部; End鍵滾動到底部; 一般的操作行為是這樣的,先Tab

canvas裡設定widthcss裡設定widthjs裡設定width的區別

 canvas.width 和 它的style.width是不一樣的:         canvas是個畫布,有他自己的寬和高(預設是沒有單位的純數字),就是canvas.width和canvas.height的寬和高,     &nb

不同的螢幕移動web的配方法 外掛的使用方法

螢幕適配需知:css畫素和物理畫素二倍屏和三倍屏瞭解Rem:rem是一個相對長度單位 1rem 是預設是多長呢? 1rem = html.fontSize. 所有的瀏覽器預設html的字型大小是 16p

iPhone X Web前端頁面(處理可愛的劉海)

一、兩個概念 iPhone X和IOS 11的釋出,不在許多技術方面造成了一定的衝擊,前端也不可以避免地也受到影響,因為iPhone X劉海的影響,在編寫前端頁面的時候要做一些處理,下面先提出一些新的概念。 安全區域 因為劉海的關係,所有的展示都

iOS開發iPhone X 齊劉海處理,程式碼iPhoneX

我的簡書新地址,歡迎點選檢視哦~ 今天手頭工作完事了,然後升級了Xcode9,變化很大啊,先說大家一直關心的適配齊劉海吧. 這個東西好像出來之後 我QQ群裡面iOS開發的很多人都炸了.確實這個齊劉海對我們開發者很不友好,往上xib的專案適配文章已經有了,但是

關於iPhone X

發現 win source chang 獲得 name 圖片 屬性 sset 1.屏幕尺寸相關變化 高度增加了145pt,變成812pt. 屏幕圓角顯示,註意至少留10pt邊距。 狀態欄高度由20pt變成44pt,留意這個距離就能避開“劉海”的尷尬,相應的導航欄以上變化6

ios11與iphone x實踐

swe bridge policy target sed table 模擬器 req 降級 一、適配iOS11 問題1:項目中有原生與H5的交互,運行在iOS11時,直接漰潰在框架WebViewJavascriptBridge內部。 報錯信息:Completion hand

iPhone X home指示鍵

以下內容由Mockplus團隊翻譯整理,僅供學習交流,Mockplus是更快更簡單的原型設計工具。 眾所周知,蘋果公司推出了iPhone X。隨之而來的是一個新的白色線條,幸福地坐在底部的觸摸板上,它替代了原有了home鍵。這也喚起了人們對物理home鍵的

iOS股票K線圖、校園助手、iPhone X、版本檢測等源碼

0.12 適配 環境 cool row 客戶端 1-1 獲取 launch iOS精選源碼 快速創建menuItem控件 YHPhotoBrowser 優化的網絡圖片瀏覽 cocoaAsynSocket demo (包含客戶端和服務端)

iOS版微信6.5.21發布 iPhone X

left 微信 升級 接受 ges image 一個 記錄 添加 昨日,iOS版微信迎來v6.5.21正式版發布,本次升級主要適配iPhone X,在聊天中查找聊天內容時,可以查找交易消息。可以給聊天中的消息設置日期提醒。上一個正式版v6.5.16發布於9月13日,時隔51

iOS11、iPhone X、Xcode9 指南

interrupt index mes radi 導航欄按鈕 content earch ima ssp 更新iOS11後,發現有些地方需要做適配,整理後按照優先級分為以下三類: 1.單純升級iOS11後造成的變化; 2.Xcode9 打包後造成的變化; 3.iPhoneX

iOS之iOS11、iPhone X、Xcode9 指南

rect 可見 器) 直接 tabbar enter home 發生 任務管理 更新iOS11後,發現有些地方需要做適配,整理後按照優先級分為以下三類: 1.單純升級iOS11後造成的變化; 2.Xcode9 打包後造成的變化; 3.iPhoneX的適配 一、單純升級iOS

iPhone X

cbc elf 內部 ted onf table 很難 tor views 1.啟動APP 對於一些老項目,在啟動圖上,可能沒有采用xib或者SB進行適配的,所以可能會出現如下圖,這樣導致整個項目運行就會不能完全貼合。 解決辦法 在項目設置裏面直接用LaunchScree

關於iPhone X

adjust pro 12px width 分享 elements ear round fixed 直接上代碼,具體原理自己搜索網上一大堆 <!DOCTYPE html> <html> <head> <meta name=