美文网首页
移动端布局

移动端布局

作者: 小唱同学 | 来源:发表于2019-06-25 22:16 被阅读0次

    viewport详解

    viewport: 视口  ,指的是浏览器中放网页内容的区域

    移动端的viewport不会自动随着设备的变化而变化,被设定为一个固定值  980 或者 1024,为了能够在移动端正常查看pc端页面.

    做移动端布局时,需要把viewport设置为随着设备的变化而变化

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <meta name="viewport" content="width=device-width, initial-scale=1.0,user-scalable=no">

    参数说明:

        width :  设置视口的宽度  device-width设备宽度

        initial-scale:  页面的初始缩放比例  1.0  原始大小

        maximum-scale=1  : 最大缩放值

        minimum-scale=1  :最小缩放值

        user-scalable=no : 用户是否可缩放  一般就设置为no

        height:设置视口的高度,一般不用

3-常见移动端布局解决方案

    1)-固定布局

        将网页设置为固定的宽度,左右两边留白,布局和pc端相同

        优点: 简单,容易上手

        缺点: 大屏幕设备留白较大,体验不好

    2)-流式布局

        宽度都用百分比 ,高度固定

        优点: 能够轻松实现响应式效果

        缺点: 由于垂直方向是固定高度,所以元素会进行拉伸或者压缩,用户体验不好

    3)-响应式布局

        利用媒体查询根据不同的设备做3套或者4套代码

        优点: 根据不同的设备会有不同的布局,用户体验好

        缺点: 工作量大,代码繁杂,不便于后期维护

    4)-rem布局

      rem 单位 : 指的是 html标签的font-size

      rem布局原理: 通过js动态根据不同的设备尺寸计算一个不同的html标签的font-size值,布局的时候单位由px换算成rem  (除以100)

      步骤:

        1- viewport设置:  让网页宽度等于设备宽度

            <meta name="viewport" content="width=device-width, initial-scale=1.0,user-scalable=no">

        2- 引入一段js动态计算html的font-size  (项目中直接引入remScale.js)

            //先获取html文档的宽度(相当于设备宽度) 

            var deviceWidth = document.documentElement.clientWidth;

            var fs = deviceWidth*100/640;  //640可以根据设计稿去调整

            // 设置htmlfont-size

            document.documentElement.style.fontSize = fs + 'px';

     完整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>=720){ //设计稿宽度

                    docEl.style.fontSize = '100px';

                }else{                              

                    docEl.style.fontSize = 100 * (clientWidth / 720) + 'px';

                }

            };

        if (!doc.addEventListener) return;

        win.addEventListener(resizeEvt, recalc, false); //绑定事件

        doc.addEventListener('DOMContentLoaded', recalc, false);

})(document, window);

        3- 按照pc端方式正常布局,把单位换算成rem  注意图片都要设置大小

相关文章

  • web移动端布局之流式布局

    移动端布局之流式布局meta视口标签,写移动端布局必须加入视口标签: 二倍图:在移动端布局中,我们需要一个5050...

  • 补充8: flex布局

    flex 布局与传统布局 传统布局兼容性好, 但是布局繁琐, 且不适合移动端flex布局更方便, 更适用移动端. ...

  • 移动端css(三)

    目录: 1 移动端特点 2 百分比布局 3 Flex布局 一 移动端特点 • 移动端和PC端网页不同点• 谷歌模拟...

  • 网络编程(七)移动端布局(1)

    pink老师移动端布局还有最后一小部分,坚持下,很快就能把网页端及移动端布局学完了。这篇博客主要讲述的是移动端布局...

  • 移动端布局

    移动端布局 移动端h5、Android、iOS的各自实现方式不同,布局方式也不同。但,随着移动终端的普及,用户展示...

  • web移动端常见面试题以及适配兼容问题

    1、移动端你们一般采用什么布局?移动端设计稿是多大的尺寸? ● 定宽布局 ● 一般移动端设计稿是640或者750的...

  • 移动端布局方案 rem

    移动端布局方案 rem 示例

  • 移动端

    app Web App Hybird App 移动端页面 设计图 测试 移动端的设置 移动端的布局 弹性 fl...

  • 移动布局

    移动web开发流式布局 ====================== 1.0 移动端基础 1.1浏览器现状 PC端...

  • 移动端布局

    1、大的背景图: 2、背景图里面的Input框

网友评论

      本文标题:移动端布局

      本文链接:https://www.haomeiwen.com/subject/pbkfcctx.html