2022-06-28 分類: 網站建設
adaptivejs利用rem解決移動端頁面開發的自適應問題
頁面模板初始化的時候不用設置viewport標簽,由js生成。
我們在head標簽的頂部引入js,按以下方法使用即可
大優點:
計算html元素的font-size,使1rem等于100px,方便快速開發
使用方法:
在頁面head寫入以下代碼,實時更新html的fontsize:
adaptive.js// 有縮放,精確還原設計圖
adaptive-version2.js// 沒有縮放,能快速開發的版本
window[’adaptive’].desinWidth = 640;// 設計圖寬度
window[’adaptive’].baseFont = 18;// 沒有縮放時的字體大小
window[’adaptive’].maxWidth = 480;// 頁面大寬度 默認540
window[’adaptive’].init();// 調用初始化方法
<script>
window[’adaptive’].desinWidth = 640;
window[’adaptive’].baseFont = 18;
window[’adaptive’].init();
</script>
然后在css中設置相應樣式即可:
.main-info {
height: 0.88rem;
padding-bottom: 0.24rem;
}
.fund-info {
position: relative;
font-weight: normal;
padding: 0.2rem 0;
padding-right: 1.7rem;
padding-left: 0.23rem;
font-size: 0.32rem;
line-height: 1;
}
adaptivejs原理:
利用rem布局,根據公式
html元素字體大小 = document根節點(html)寬度 * 100 / 設計圖寬度
計算html元素的font-size,使1rem等于100px,方便快速開發
開發時,一個div設計圖寬度為89px,那么在css中我們可以這樣書寫:width:0.89rem;
如果是文字,我們也建議使用rem
對于iphone的retina高清顯示屏,基本版本(adaptive.js)我們做了縮放處理,以達到好顯示效果。
對于快速開發版本(adaptive-version2.js),viewport的width等于設備寬度,不會縮放
注意:如果設計圖寬度大于document的寬度,0.01rem將小于1px,故如果設計圖是1px,在css中仍然用1px顯示。
可用的全局變量:window.devicePixelRatioValue 當前頁面設置的設備像素比
優化寬度問題
新增大寬度,解決平板或手機橫屏時體驗不佳的問題
window[’adaptive’].maxWidth = 480; // 設置大寬度,默認540px
需要css配合使用,添加如下代碼:
body {
max-width: 6.4rem; // 設計圖寬度為640px時為6.4rem ,750時為7.5rem ,以此類推
margin: 0 auto;
}
body * {
max-width: 6.4rem; // 設計圖寬度為640px時為6.4rem ,750時為7.5rem ,以此類推
}
新聞名稱:關于手機適配中的rem的學習隨筆
文章位置:http://m.newbst.com/news23/172573.html
成都網站建設公司_創新互聯,為您提供云服務器、關鍵詞優化、Google、品牌網站設計、網站收錄、網頁設計公司
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯
猜你還喜歡下面的內容