博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
移动端开发单位——rem,动态使用
阅读量:5756 次
发布时间:2019-06-18

本文共 1798 字,大约阅读时间需要 5 分钟。

移动端开发-大纲


一、移动web开发和适配

1、特点:

跑在手机端的web页面(H5页面)、 跨平台、基于webview、告别IE拥抱webkit、更高的适配和性能要求
小技巧:在调试窗口中,选中“computed -> Show all”,就会显示标签元素的全部样式。

图片描述

2、常见的移动web适配方法:

  • 定高,宽度百分比
  • flex布局 <响应式布局>
  • Media Query(媒体查询) <响应式布局>

(1)、Media Query(媒体查询)

@media 媒体类型 and (媒体特性){        /*css样式*/    }       //媒体类型:screen , print....    //媒体特性:max-width , max-height....

(2)、js配置跟页面字体大小

//在index.html中配置根元素字体大小

二、移动端实战

1、通过sass语法中function函数自动将px转为rem

//a.scss文件//以iPhone6屏幕尺寸为例,转化得到的1rem = 37.5px;@function rem2px($px) {  $rem: 37.5px;  @return ($px / $rem) + rem;}.a {  font-size: rem2px(37.5px);}//转化为a.css文件如下:.a {  font-size: 1rem;   }
前提:安装node-sass来编译scss文件为css文件。

2、实战DEMO【移动端使用此方法即可】

(1)、生成项目

npm init
项目结构:

图片描述

(2)、根据package.json文件,安装如下包:

图片描述

(3)、根目录下增加webpack.conf.js文件:

var webpack = require("webpack");var path = require("path");module.exports = {  entry: "./app.js",  output: {    path: path.resolve(__dirname, "./build"),    filename: "bundle.js"  },  module: {    rules: [      {        test: /\.scss$/,        use: ["style-loader", "css-loader", "sass-loader"]      },      {        test: /\.(png|jpg)$/,        use: [          {            loader: "url-loader",            options: {              limit: 1024            }          }        ]      }    ]  }};

(4)、根目录下增加app.js

require("./index.scss");//动态配置根元素的font-size数值let htmlWidth =  document.documentElement.clientWidth || document.body.clientWidth;let htmlDom = document.getElementsByTagName("html")[0];htmlDom.style.fontSize = htmlWidth / 10 + "px";console.log(htmlDom.style.fontSize);

(5)、index.scss文件中修改样式

//使用sass的function函数自动转换px为rem//`这里以iPhone6的UI尺寸配置`@function px2rem($px) {  $rem: 37.5px;  @return ($px / $rem) + rem;}.header {  //根据UI图将标识高度值直接传入参数即可  height: px2rem(40px);     }
注意:一般设计师给我们的UI图中的标识高度是放大一倍的值,所以需要使用 “ height: px2rem(80px/2)”,将高度值除以2在传入参数中。

转载地址:http://rqvkx.baihongyu.com/

你可能感兴趣的文章
同步手绘板——将View的内容映射成Bitmap转图片导出
查看>>
【Android游戏开发之十】(优化处理)详细剖析Android Traceview 效率检视工具!分析程序运行速度!并讲解两种创建SDcard方式!...
查看>>
微信小程序之wx.navigateback往回携带参数
查看>>
陌陌和请吃饭之类的应用,你要是能玩转,那就厉害了
查看>>
递归的运行机制简单理解
查看>>
汉字转阿斯克马值
查看>>
Java 栈与堆简介
查看>>
【supervisord】部署单进程服务的利器
查看>>
zabbix oracle监控插件orabbix部署安装
查看>>
python3 通过qq 服务器 发送邮件
查看>>
java 多线程踩过的坑
查看>>
部署Replica Sets及查看相关配置
查看>>
倒序显示数组(从右往左)
查看>>
文献综述二:UML技术在行业资源平台系统建模中的应用
查看>>
阿里云服务器 linux下载 jdk
查看>>
Swift 学习 用 swift 调用 oc
查看>>
第三章 Python 的容器: 列表、元组、字典与集合
查看>>
微信小程序开发 -- 点击右上角实现转发功能
查看>>
与MS Project相关的两个项目
查看>>
[转载]ASP.NET MVC Music Store教程(1):概述和新项目
查看>>