浏览器的默认字体高是16px

  • 兼容性:

目前,IE9+,Firefox、Chrome、Safari、Opera 的主流版本都支持了rem。

对于不支持的浏览器,要多写一个绝对单位的声明,这样浏览器就会忽略用rem设定的字体大小。

  • %
css中的body先全局声明font-size=62.5%,%的算法和rem一样。
因为16px=100%,1px=6.25%,所以10px=62.5%。
1rem=10px,所以12px=1.2rem。px与rem的转换倍率是10,很方便。
  •  使用方法

rem是相对于根元素html的font-size,所以设置根元素的font-size,其它元素使用rem单位设置成相应的百分比即可。

一般情况下,这样使用:

html{font-size:62.5%;}
body{
font-size:12px;
font-size:1.2rem ; /* 为兼容不支持rem的浏览器,要在rem前写上对应的px值,不支持的浏览器可以优雅降级 */
}
p{
font-size:14px;
font-size:1.4rem;
}
  • 优点

其他元素字体大小都是基于html的,所以在移动端做适配的时候,可以使用这样的方法:

@media only screen and (min-width: 320px){
html {
font-size: 62.5% !important;
}
}
@media only screen and (min-width: 640px){
html {
font-size: 125% !important;
}
}
@media only screen and (min-width: 750px){
html {
font-size: 150% !important;
}
}
@media only screen and (min-width: 1242px){
html {
font-size: 187.5% !important;
}
}

这样就可以仅改变html的字体大小,其他字体具有“响应式”。。。

刚刚忘记写了,之前有看到使用em设置字体大小的,不过比较而言, rem比em要方便多了,因为em 的计算是基于父级元素的,在实际使用中给计算带来了很大的不便。而rem不用担心父级元素的 font-size,可以放心使用。

附加:::::::::::

谈rem不谈base font毫无意义,谈base font不谈屏幕尺寸也毫无意义。

/*手机端的标准字体大小为16px*/
html {
font-size: 16px;
} @media only screen and (min-width : 320px) { } /*当屏幕宽度大于480像素时,将采用以下字体大小为标准大小,下同*/
@media only screen and (min-width : 480px) {
html {
font-size: 18px;
}
} @media only screen and (min-width : 768px) {
html {
font-size: 20px;
}
} @media only screen and (min-width : 992px) {
html {
font-size: 20px;
}
} @media only screen and (min-width : 1200px) {
html {
font-size: 22px;
}
}

这里所设置的字体大小不会影响到你的任何直接定义为px的字体大小,这里的字体大小只有在一种情况下发生作用,那就是使用rem的时候。

注意:调的时候的顺序要搞清,不要两边来回乱调,一定要手机优先,先在小屏幕上用px确保字体显示正常了,再放到大屏幕上看,如果哪块需要放大字体,再回到小屏幕上,改写为rem,然后再放到大屏上看。

移动端页面字体——rem的使用的更多相关文章

  1. 移动端页面以rem为单位设置字体大小不生效解决方法

    这个问题在前端H5页面开发可以说是一个老生常谈的问题了.由于以前所有遇到的问题以及解决方法都会以文档的形式记录在电脑里,而非github或者blog,所以现在才一点一滴的整理上来,就当是一个心路历程吧 ...

  2. 移动端页面使用rem来做适配

    文/九彩拼盘(简书作者)原文链接:http://www.jianshu.com/p/eb05c775d3c6著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”. rem介绍 rem(font ...

  3. 移动端页面使用rem布局

    阿里团队的高清布局方案代码 所谓高清方案就是根据设备屏幕的DPR(设备像素比,又称DPPX,比如dpr=2时,表示1个CSS像素由4个物理像素点组成) 动态设置 html 的font-size, 同时 ...

  4. pc和移动端页面字体设置

    移动端项目:font-family:Tahoma,Arial,Roboto,”Droid Sans”,”Helvetica Neue”,”Droid Sans Fallback”,”Heiti SC” ...

  5. 移动端页面使用单位的问题:关于px、百分比、em、rem开发中逐渐转换的问题记录

    开始写前端页面也有了快两年时间,从一开始的懵逼到现在的淡定,但是不能改变我还是一只小菜鸟的事实,平时遇到的一些问题都会记录在文件夹里,现在都整理一下大家一起分享自己平时也翻翻看看~ 不知道大家平时写的 ...

  6. 移动端页面开发适配 rem布局原理

    主题 HTML移动端页面开发适配 rem布局原理 什么是适配,为什么要适配 我们拿到的设计图一般是以640,750,1080分辨率为基准设计的,而现在的手机终端各式各样,分辨率不同,逻辑像素不同 ,适 ...

  7. html5移动端页面分辨率设置及相应字体大小设置的靠谱使用方式

    对于html5移动端网页编写CSS网上有很多介绍的文章,但在实际使用过程中还是会纠结. 网上的资料太多,且大多都是技术介绍型,特别是针对android上,网上写的各种麻烦,各种复杂,各种不接地气儿.. ...

  8. 轻松使用px为单位开发移动端页面

    研究移动端页面已经有许久了,一直执着于rem来开发,不谈性能怎么样,单从工作效率上看影响了不少,首先要固定设计稿的宽度,一般都是固定在640px,然后在根据根目录的字体大小来计算出每个元素的rem的值 ...

  9. 【移动端 Web】怎么循序渐进地开发一个移动端页面

    1. 移动页面开发基础 1.1 像素——什么是像素 像素是 Web 页面布局的基础,那么到底什么才是一个像素呢? 像素:一个像素就是计算机屏幕所能显示一种特定颜色的最小区域.这是像素的概念,实际上,W ...

随机推荐

  1. django inclusion用法

    概述: inclusion主要的是生成html标签, 返回的是一个字典,大分部跟simple_tag类似, simple_tag可返回任意类型的值 定义inclusion from django im ...

  2. django 中自定义方法simple_tag

    simple_tag定义以及使用 模板中自定义方法 1. 在app下创建一个名为templatetags的python包 2. 在python中创建python文件 my_tag.py 3. 在pyt ...

  3. axios 简单二次封装

    import axios from 'axios' import { Message } from 'element-ui'; // 设置baseURL //axios.defaults.baseUR ...

  4. cent os 7.0 出现的问题解决方法

    https://www.jb51.net/article/34012.htm       python重编译,并进行安装 https://www.jb51.net/os/RedHat/211444.h ...

  5. 第五章、Django之模型层----多表查询

    目录 第五章.Django之模型层----多表查询 一.一对多字段增删改查 1.增 2.查 3.改 4. 删除 二.多对多的增删改查 1. 增 2. 改 3. 删 三.ORM跨表查询 四.正反向的概念 ...

  6. Python 内置函数进制转换的用法(十进制转二进制、八进制、十六进制)

    ↓ 2进制 8进制 10进制 16进制 2进制 - bin(int(x, 8)) bin(int(x, 10)) bin(int(x, 16)) 8进制 oct(int(x, 2)) - oct(in ...

  7. Training #2 cell battle (BFS)

    Constraints: 1 <= R, C <= 500 1 <= T <= 5 Sample Input: 5 3 5 ##### a...b ##### 3 4 #### ...

  8. u-boot器件驱动模型(Device&Drivers)之uclass (转)

    一.剧情回顾 在上一篇链接器的秘密里面我们讲到我们用一些特殊的宏让链接器帮我们把一些初始化好的结构体列好队并安排在程序的某一个段里面,这里我例举出了三个和我们主题相关段的分布情况,它们大概如下图所示: ...

  9. new一个对象的过程

    不用死记硬背,理解才是硬道理.只需要写个例子,然后输出看一下就清楚了 首先我们看下new Person输出什么? var Person = function(name, age) { this.nam ...

  10. 4、docker镜像:花卷结构、commit镜像

    1.是什么 docker images 镜像是一种轻量级.可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件,它包含运行某个软件所需的所有内容,包括代码.运行时.库.环境变量和配置文件. ...