1. 程式人生 > >手機端頁面自適應解決方案—rem布局

手機端頁面自適應解決方案—rem布局

syn posit var cells document false 為什麽 gin element

只需在頁面引入這段原生js代碼就可以了

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 (function (doc, win) { var docEl = doc.documentElement, resizeEvt = ‘orientationchange‘ in window ? ‘orientationchange‘ : ‘resize‘, recalc = function () { var clientWidth = docEl.clientWidth;
if (!clientWidth) return; if(clientWidth>=640){ docEl.style.fontSize = ‘100px‘; }else{ docEl.style.fontSize = 100 * (clientWidth / 640) + ‘px‘; } }; if (!doc.addEventListener) return;
win.addEventListener(resizeEvt, recalc, false); doc.addEventListener(‘DOMContentLoaded‘, recalc, false); })(document, window);

如何使用?

這是rem布局的核心代碼,這段代碼的大意是:
如果頁面的寬度超過了640px,那麽頁面中html的font-size恒為100px,否則,頁面中html的font-size的大小為: 100 * (當前頁面寬度 / 640)

為什麽是640px?

設計圖一般是640px的,這樣相當於100px = 1rem,可以方便計算;

因為是640px所以應限制下頁面的大小,所以最外層的盒子應該是:

1 2 3 4 5 position: relative; width: 100%; max-width: 640px; min-width: 320px; margin: 0 auto;

手機端頁面自適應解決方案—rem布局