一、什么是rem

rem(font size of the root element)是指相对于根元素`的字体大小的单位。它就是一个相对单位。

px:一个绝对单位

em:一个相对单位,根据的是当前盒子的font-size

rem:一个相对单位,根据当前页面html的font-size改变

二、rem单位开发步骤

1.首先跟距UI图大小找到模拟器窗口

750pxUI图对应iphone6/7/8的手机,640UI图对应iphone5/SE的手机。

如果是750宽的UI图,需要切换到iphone6/7/8模式进行页面开发预览

如果是640宽的UI图,需要切换到iphone5/5s模式进行页面开发预览

因为最终完成开发之后,UI人员会对UI图所对应的真机效果做首次验收,所以我们开发时的模拟器必须要和UI图对应的真机保持一致!!

禁止调到Responsive中去调试。

2.引入淘宝flexible.js文件

默认是将屏幕分成10等份。375屏幕下html的font-size是37.5,即1rem = 37.5px;320屏幕下html的font-size是32,即1rem = 32px。

效果如下



3. 确定哪些元素的尺寸需要用到rem适配

1.原本通过弹性盒子或者百分比就可以将横向盒子排布好的情况一定是不需要用rem改写的。
2.字体的大小,边距padding一般也不用rem单位做适配的,因为现在主流的设计理念是大屏幕可以看到更多的内容,而非看到更大的内容(说的白话一点,小屏下我看到4个14px的文字,大屏幕我想看到8个14px的文字,而不是看到4个20px的大字)
3.高度上用rem适配的情况相对多一些,活动页面需求需要用到rem单位的情况很多,总之将所有的单位都用rem写是过于粗暴且不符合设计规范的,不需要它的地方直接使用绝对像素px即可

4.案例说明

在750UI图下测量一个373*211大小的盒子

直接放上去会失真

将宽高都除2

转换rem

4.2 插件使用px2rem

1.修改插件值为1rem对应的px(建议)



不管是rem和px都需要手动在/2

2.将插件值修改为1rem对应的px再乘2



rem不需要再/2,px仍然需要手动/2

弊端:当你需要一个正常的盒子时,需要2才能得到正常大小



需要手动
2

07-rem的更多相关文章

  1. Android5.0如何正确启用isLoggable(二) 理分析

    转自:http://www.it165.net/pro/html/201506/43374.html 概要 在上文<Android 5.0 如何正确启用isLoggable(一)__使用详解&g ...

  2. NetAnalyzer笔记 之 五 一些抓包技巧分享(不定期更新)

    [创建时间:2016-03-12 10:00:00] [更新时间:2016-05-21 10:00:00] NetAnalyzer下载地址 前一段时间应为工作关系,NetAnalyzer笔记系列已经很 ...

  3. 本地图片上传与H5适配知识

    最近用到本地图片上传作为API的参数,在网上看了许多,记录一下,以后可能用的着(仅自己记录用,看不清请绕路) function getObjectURL(file) { var url = null ...

  4. 07. 如何实现移动端rem适配

    如何实现移动端rem适配 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...

  5. [转]响应式网页设计:rem、em设置网页字体大小自适应

    本文转自:http://www.cnblogs.com/aimyfly/archive/2013/07/19/3200742.html 「rem」是指根元素(root element,html)的字体 ...

  6. 关于响应式、媒体查询和media的关系 、流媒体布局flex 和em rem像素的使用 我有一些废话要讲.....

    一.什么是响应式 随着移动端越来遇火 网站的布局成为一个热议的话题 有的人喜欢用手机浏览网站.有的人喜欢用paid浏览网站.有人喜欢用电脑浏览网站 那么问题来了 我们怎么样才能使用一套css样式 完成 ...

  7. Rem & Viewport

    Rem布局 rem就是给根元素设置一个基准值 然后其他元素都以这个基准值作为单位 那么就可以在不同的手机上做出相同比例的元素了 事实上和百分比是同样的道理 网易和淘宝的rem 参考 http://ww ...

  8. C#使用AppDomain时的异常分析:Object ‘XXXX.rem’ has been disconnected or does not exist at the server.

    在使用C#的应用程序域的时候,碰到这么一个异常: System.Runtime.Remoting.RemotingException: Object ‘/76e7cd41_2cd2_4e89_9c03 ...

  9. 移动端rem计算

    教你如何用 lib-flexible 实现移动端H5页面适配 2017年07月22日 16:01:24 Pwcong 阅读数:18872    版权声明:本文为博主原创文章,未经博主允许不得转载. h ...

  10. 移动端适配方案-rem(基础篇)

    常见移动web适配方案一般有3种方法,如下图: ①:定高,宽度百分比(一般用来做一些适配性不高的页面,比如主要以一些文字和图片为主的网页或移动端的头部和底部) ②:flex (更多的用于复杂页面的布局 ...

随机推荐

  1. Spring bean配置 入门

    Spring 的入门案例:(IOC)  IOC 的底层实现原理(结构图2.01) 图:2.01 IOC:Inversion of Control 控制反转,指的是对象的创建权反转(交给)给Spring ...

  2. 使用SpringBoot + JavaMailSender 发送邮件报错 Mail server connection failed;Could not connect to SMTP host

    说明: 出于安全考虑,阿里云默认封禁 TCP 25 端口出方向的访问流量,无法在阿里云上的云服务器通过 TCP 25 端口连接外部地址. [官方提示]:如果您需要使用阿里云上的云服务器对外部发送邮件, ...

  3. 第二周Java实验作业

    实验二 Java基本程序设计(1) 实验时间 2018-9-6 1.实验目的与要求 (1)进一步熟悉命令行和IDE两种方式下java程序开发的基本步骤: (2)掌握Eclipse集成开发环境下导入Ja ...

  4. Java是如何实现自己的SPI机制的? JDK源码(一)

    注:该源码分析对应JDK版本为1.8 1 引言 这是[源码笔记]的JDK源码解读的第一篇文章,本篇我们来探究Java的SPI机制的相关源码. 2 什么是SPI机制 那么,什么是SPI机制呢? SPI是 ...

  5. Selenium系列(九) - 针对alert窗口的处理(警告框、确认框、对话框)

    如果你还想从头学起Selenium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1680176.html 其次,如果你不懂前端基础知识, ...

  6. Python中的数值类型总结

    本文参考书:<Learning Python>中文版--<Python 学习手册>第四版 Python中包含大量的数值类型,他们中的大部分与其他编程语言保持一致,因此学习他们就 ...

  7. 微信小程序分享转发用法大全——自定义分享、全局分享、组合分享

    官方提供的自定义分享 使用隐式页面配置函数实现的全局分享-推荐 使用隐式路由实现的全局分享-不推荐,仅供了解隐式路由 前言: 目前微信小程序只开放了页面自定义分享的API,为了能够更灵活的进行分享配置 ...

  8. 北邮oj 104. 912星球的研究生

    104. 912星球的研究生 时间限制 1000 ms 内存限制 65536 KB 题目描述 最近912星球的研究生入学了,912星球的教务处因此忙的焦头烂额,要求yzr做一个信息管理系统登陆查询研究 ...

  9. Java——写一个求和 “方法”

    在c语言中叫做函数 撸代码: import java.math.*; import java.util.Scanner; /*导入一个 math包 * BigDecimal 精确小数 * BigInt ...

  10. 面试指南」JS 模块化、组件化、工程化相关的 15 道面试题

    JS 模块化.组件化.工程化相关的 15 道面试题 1.什么是模块化? 2.简述模块化的发展历程? 3.AMD.CMD.CommonJS 与 ES6 模块化的区别? 4.它们是如何使用的? 5.exp ...