一稿設計多端適配優雅的解決方案 - rem

規範目的

爲提升前端團隊開發效率,輸出高質量的前端頁面代碼,提升UI設計還原度,特編寫該規範文檔。本文檔若有不對或者不合適的地方請及時提出。css

JS代碼塊

function (doc, win) {
    var docEl = doc.documentElement,
        resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize',
        recalc = function () {
            var clientWidth = docEl.clientWidth;
            if (!clientWidth) return;
            if (clientWidth >= 750) {
                docEl.style.fontSize = '100px';
            } else {
                docEl.style.fontSize = 100 * (clientWidth / 750) + 'px';
            }
        };
    if (!doc.addEventListener) return;
    win.addEventListener(resizeEvt, recalc, false);
    doc.addEventListener('DOMContentLoaded', recalc, false);
})(document, window);
複製代碼

使用方法

ui設計師設計界面時建議以iphone6的兩倍尺寸(750px)爲設計標準尺寸,前端開發在開發頁面先引用上述代碼塊,前端開發在選擇標註時仍按照標準px來標註,爲了計算方便js代碼塊中乘以100,在css中爲實際尺寸只須要除以100即爲rem的值。前端

如圖:標題欄在標註中高度爲88px在頁面css裏實際爲88/100=0.88rembash

image

注意事項

  • 若是設計稿尺寸寬不爲750px則代碼塊要作相應修改。
  • 此適配方法最好用在移動設備上。

參考文檔

相關文章
相關標籤/搜索