Html5-手机移动端响应式布局

直接建立js文件,赋值粘贴进去,在需要的项目中引用此JS项目、便可使用
(function (doc, win) {
// 分辨率Resolution适配
var docEl = doc.documentElement,
    resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize',
    recalc = function () {
        var clientWidth = docEl.clientWidth;
        if (!clientWidth) return;
        docEl.style.fontSize = 100 * (clientWidth / 375) + 'px';
    };

// Abort if browser does not support addEventListener
if (!doc.addEventListener) return;
win.addEventListener(resizeEvt, recalc, false);
doc.addEventListener('DOMContentLoaded', recalc, false);

// 一物理像素在不同屏幕的显示效果不一样。要根据devicePixelRatio来修改meta标签的scale,要注释上面的meta标签
(function(){
    return;
    var dpr = scale =1;
    var isIPhone = win.navigator.appVersion.match(/iphone/gi);
    var devicePixelRatio = win.devicePixelRatio;
    if (isIPhone) {
        // iOS下,对于2和3的屏,用2倍的方案,其余的用1倍方案
        if (devicePixelRatio >= 3 && (!dpr || dpr >= 3)) {
            dpr = 3;
        } else if (devicePixelRatio >= 2 && (!dpr || dpr >= 2)){
            dpr = 2;
        } else {
            dpr = 1;
        }
    } else {
        // 其他设备下,仍旧使用1倍的方案
        dpr = 1;
    }
    scale = 1 / dpr;
    //
    var metaEl = "";
    metaEl = doc.createElement('meta');
    metaEl.setAttribute('name', 'viewport');
    metaEl.setAttribute('content', 'initial-scale=' + scale + ', maximum-scale=' + scale + ', minimum-scale=' + scale + ', user-scalable=no');
    if (docEl.firstElementChild) {
        docEl.firstElementChild.appendChild(metaEl);
    } else {
        var wrap = doc.createElement('div');
        wrap.appendChild(metaEl);
        doc.write(wrap.innerHTML);
    }
})();

参考文献
http://www.ghugo.com/mobile-h5-fluid-layout-for-iphone6/
淘宝手机适配https://github.com/amfe/article/issues/17

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 178,534评论 25 709
  • 目录: 1-------- 走进前端 2-------- jQuery 3-------- CSS ...
    vikang阅读 11,192评论 29 445
  • 小米的服务最高理念是体现对自己员工的尊重和信任。我觉得这个不太现实,因为,如果员工是非常诚实的话,这个就可以理...
    咏诗阅读 172评论 0 0
  • 青叶黄花, 结成一团团白絮绒球。 在原野中眺望着, 等候于枝端酝酿梦想的翅膀, 挺立着笔直的腰身, 静静的,那样端...
    唯一芝现阅读 515评论 1 1

友情链接更多精彩内容