`

Web移动端开发常规全局设置

 
阅读更多

一,两种rem解决方案

1,根据dpi来设定rem以及viewport

(美团的REM解决方案)

 

//根据屏幕大小及dpi调整缩放和大小
        (function() {
            var scale = 1.0;
            var ratio = 1;
            if (window.devicePixelRatio >= 2) {
                scale *= 0.5;
                ratio *= 2;
            }
            var text = '<meta name="viewport" content="initial-scale=' + scale + ', maximum-scale=' + scale +', minimum-scale=' + scale + ', width=device-width, user-scalable=no" />';
            document.write(text);
            document.documentElement.style.fontSize = 50*ratio + "px";
        })();

 

 

2,根据屏幕宽度来设置rem

 

var autoChange=function(maxWidth,originSize){
    var width=document.documentElement.clientWidth;
    var Standard=originSize/(maxWidth*1.0/width);
    Standard=Standard>100?100:Standard;
    document.querySelector("html").style.fontSize=Standard+"px";
};
autoChange(750,100);

 

经测试第一种更佳。

 

 

 

二,移动端默认字体设置:

无衬线字体:

<style>
body{
    font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
}
</style>

  

 

三,简单的flexbox布局

<style>
/* 父级元素 */
display: -webkit-box;
display: -webkit-flex;
display: flex;
/* 子集元素 */
-webkit-box-flex: 1;
-webkit-flex: 1;
flex: 1;
</style>

 

 

四,URL传递数据

function request(paras) {
    var url = location.href;
    url = decodeURI(url);
    var paraString = url.substring(url.indexOf("?") + 1, url.length).split("&");
    var paraObj = {};
    for (var i = 0; j = paraString[i]; i++) {
        paraObj[j.substring(0, j.indexOf("=")).toLowerCase()] = j.substring(j.indexOf("=") + 1, j.length);
    }
    var returnValue = paraObj[paras.toLowerCase()];
    if (typeof(returnValue) == "undefined") {
        return "";
    } else {
        return returnValue;
    }
}

 

 

五、常规的清浮动

<style>
  .clearfix:after {
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0;
  }
  .clearfix { display: inline-table; }
    /* Hides from IE-mac \*/
    * html .clearfix { height: 1%; }
    .clearfix { display: block; }
    /* End hide from IE-mac */
</style>

 

 

 六、弹性滑动框架

iscroll5Scroll 5 is a faster more mature code than the previous versions. It doesn’t add many new features but it fixes bugs and most notably runs smoother on old devices. Please note that previous releases are not maintained nor supported, so go get the new version!

 

分享到:
评论

相关推荐

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    鉴于市场上用户的手机型号、种类、屏幕分辨率等参差不齐,传统方式根据主流系统分别开发相应的系统耗时又耗力,为了高效开发并节约开发项目成本,本文采用Android+HTML5相结合的方式进行移动端Web系统的设计研发工作...

    微信小程序-音乐播放器源码

    对于初学者来说,这是非常关键的一步,因为微信小程序的开发环境与常规的Web开发环境有所不同。 5. **开发工具与调试**: - 微信开发者工具是开发微信小程序不可或缺的工具,它提供了编辑、预览、模拟器和真机调试...

    一个完整的demovue新闻客户端

    2. **移动端与Native端**:项目包含移动端和原生应用的实现,这表明Vue.js不仅可以用于Web开发,还可以通过如Weex或Capacitor等技术实现跨平台的原生应用开发。移动端的四个页面可能包括首页、分类页、详情页和搜索...

    基于ssm的仓库管理系统源码数据库.zip

    【标题】"基于SSM的仓库管理系统...通过研究这个项目,开发者可以深入理解SSM框架的集成使用,学习如何设计和实现一个完整的业务系统,同时也能掌握移动端接口的开发技巧,对于提升Java Web和移动开发能力大有裨益。

    langlangDental::man_health_worker: HTML5_CSS3基础学习项目 - 朗朗口腔

    适用范围:PC 端、Ipad 端、移动端 web、H5 项目、Hybrid APP 混合开发等等;web 端项目基本通用; 第1学时 1.1 认识 HTML 标签 1.2 CSSReset 不同的浏览器对不同的标签有自己内置的样式设置,这是全局性的样式,...

    HTML1-Classic模板官网落地页APP主页产品宣传页源码 landing静态页面.zip

    `style.css`是主样式表,它包含了整个网站的全局样式定义,如颜色方案、布局、字体设置等。`bootstrap.min.css`是著名的Bootstrap框架的压缩版,Bootstrap提供了响应式布局和大量的UI组件,使开发者能够轻松创建美观...

    基于微信小程序的日志系统的设计与应用.zip

    对于微信小程序来说,由于其运行环境的特殊性,日志系统的实现方式与传统的Web或移动端应用有所不同。 设计一个基于微信小程序的日志系统,首要任务是确定日志的级别。通常包括DEBUG、INFO、WARN、ERROR等,不同...

    前端开源库-can-use-dom

    `can-use-dom`是一个小巧而实用的前端开源库,它专门用于检测运行环境是否支持DOM操作,这对于跨平台的Web应用或者在非浏览器环境(如Node.js服务器端渲染)中进行前端开发至关重要。 首先,我们需要理解为什么在...

    学习使用Bootstrap页面排版样式

    Bootstrap 将全局 font-size 设置为 14px,line-height 行高设置为 1.428(即 20px);段落元素被设置等于 1/2 行高(即 10px);颜色被设置为#333。 Bootstrap 提供了多种排版样式,例如: * 文本对齐:Bootstrap ...

    微信小程序引入Vant组件库过程解析

    - 保持对微信小程序开发规范的了解,因为微信小程序有自己的运行环境和规则,不完全遵循 Web 开发的常规。 - 注意优化小程序的性能,避免引入过多的组件导致包体积过大,影响加载速度。 通过以上步骤,你就可以在...

    absensi-CodeIgniter

    2. **config**:配置文件夹,存放全局配置,如数据库连接、路由设置等。 3. **controllers**:这里是项目的控制层,每个文件代表一个控制器,负责接收用户请求并调用相应的模型和视图。 4. **models**:模型文件夹...

Global site tag (gtag.js) - Google Analytics