• 微信公众号:美女很有趣。 工作之余,放松一下,关注即送10G+美女照片!

H5 rem适配

开发技术 开发技术 2周前 (04-30) 9次浏览

定义rem转换函数 rem.js

function adapt(designWidth, rem2px) {
    var d = window.document.createElement(‘div’);
    d.style.width = ‘1rem’;
    d.style.display = “none”;
    var head = window.document.getElementsByTagName(‘head’)[0];
    head.appendChild(d);
    var defaultFontSize = parseFloat(window.getComputedStyle(d, null).getPropertyValue(‘width’));
    d.remove();
    document.documentElement.style.fontSize = window.innerWidth / designWidth * rem2px / defaultFontSize * 100 + ‘%’;
    var st = document.createElement(‘style’);
    var portrait = “@media screen and (min-width: ” + window.innerWidth + “px) {html{font-size:” + ((window.innerWidth / (designWidth / rem2px) / defaultFontSize) * 100) + “%;}}”;
    var landscape = “@media screen and (min-width: ” + window.innerHeight + “px) {html{font-size:” + ((window.innerHeight / (designWidth / rem2px) / defaultFontSize) * 100) + “%;}}”
    st.innerHTML = portrait + landscape;
    head.appendChild(st);
    return defaultFontSize
};
var defaultFontSize = adapt(750, 100);
 
页面中引入rem.js
按照UI图的比例px缩小100,即为rem

程序员灯塔
转载请注明原文链接:H5 rem适配
喜欢 (0)