zoukankan      html  css  js  c++  java
  • 简单粗暴的移动端页面开发技能

    移动端响应式页面开发说简单也简单,根据屏幕尺寸调节根字体大小。

    大宽度用%,高度和小宽度全部使用rem,简单粗暴。

    之前阅读过大漠老师的使用Flexible实现手淘H5页面的终端适配,介绍了手淘项目的H5制作规范。

    在手淘的设计师和前端开发协作过程中:手淘设计师常选择iPhone6作为基准设计尺寸,交付给前端的设计尺寸是按750px * 1334px为准(高度会随着内容多少而改变)。前端开发人员通过一套适配规则自动适配到其他的尺寸。

    而我这次负责的项目为公司刚上线的手游内置网页,展示游戏公告和游戏角色信息。

    因为手游是横屏的,所以设计稿也有了些改变。内容尽可能集中在横向,减少用户上下滑动的次数。所以设计师按照960px出的稿。

    前端步骤

    • 设置根字体大小
    html{font-size:100px;}
    
    • js调节 1rem 对应的px大小
    $(document).ready(function() {
        // put all your jQuery goodness in here.
        function adjust(){
          // 设计稿宽度是960px
          var scale = $('body').width() / 960;
          $('html').css('font-size', 100 * scale + 'px');
        }
        // 进入、刷新页面时执行函数,调整根字体
        adjust();
        //视口大小调整时执行函数,调整根字体
        // 目测游戏内置页面用不到,用户不会产生resize事件
        $(window).resize(function(){
          adjust();
        });
    });
    
    • 样式
      量取尺寸大小,换成对应的rem。比如:100px = 1rem;

    因为javascript代码是最后加载的,所以打开页面后会有短暂布局混乱现象,之后js代码才生效。

    为了解决这个问题,需要在页面加载完成之前就运行这段js代码。所以需要把这段代码放到<head></head>里。要注意的是这时jq插件还没加载,所以要用原生的写法。

    
    <script>
      function adjust(){
        // 设计稿宽度是960px
        var $html = document.getElementsByTagName('html')[0];
        var viewh = document.documentElement.clientWidth;
        var scale = viewh / 960;
        $html.style.fontSize = 100 * scale + 'px';
        alert("test");
      }
      // 进入、刷新页面时执行函数,调整根字体
      window.onload=adjust();
      </script>
    
    

    可以测试一下,当页面没有任何内容的时候就会弹出“test”。

    OVER!

    网上关于响应式开发的优秀总结有很多,自己写这篇只是初窥门径,简单粗暴,酌情使用。 —> __—>

  • 相关阅读:
    mysql主从之双主配置
    mysql主从之binlog的工作模式
    mysql主从之主机名导致主从机制失败的问题
    python_文件 处理
    python_字典 学习
    python_元组 学习
    python 基础内置函数表及简单介绍
    python 列表学习
    python函数基础学习
    python迭代器、生成器、列表推倒式
  • 原文地址:https://www.cnblogs.com/qjqcs/p/6149485.html
Copyright © 2011-2022 走看看