理解em,rem以及rem的失效问题
在平常做网站写代码的时候一般都是使用px,在之前的学习时就略微的学习了一些关于em、rem的知识,但是由于一直没有用到过,所以几乎全部忘记了。今天在研究一些知识的时候用到了em,所以特意将学到的知识总结一下。
1.em
em是相对长度单位,相对于当先对象中的字体尺寸。比如在某个div中font-size设置为20px,那么,1em就相当于20px,0.25em就相当于5px。由于浏览器的默认字体大小为16px,所以为了简化font-size的换算,就要在body的选择器中将font-size设置为62.5%,换算成像素,就是16*62.5%=10px,这样在之后的设置尺寸大小的时候就可以用1.2em代表12px,也就是说此时的换算关系就是1em=10px。
值得注意的是em会集成父级元素的字体大小。所以不要轻易的在当前元素中改变em。
2.rem
rem和em有相似的使用方法,都是相对长度单位。不同的是rem需要在根元素html的css选择器中设置font-size,设置font-size为14px,则1rem就是14px。使用这个长度单位的好处是可以用于做适配。可以直接在<hmtl>中更改font-size就可以在不同的移动端显示不同大小的元素。我们都知道浏览器默认的字体大小都是16px,因此在一些书中会这样写到:将html的font-size设置成62.5%,这样就是10px,那么接下来的0.1rem就是1px了,这样好算。但是,在实际中我发现在谷歌浏览器中这个方法是不可行的。
因为在谷歌浏览器中的默认字体大小虽然是16px,但是在html中却不可以将字体设置小于12px,如果小于12px就会默认以12px来计算。这样的话我们的62.5%为10px就破灭了。所以在我看来可能最好的方法就是设置成为20px了,也就是在html中设置字体为125%或是直接20px。
资料来源:http://www.cnblogs.com/leejersey/p/3662612.html
理解em,rem以及rem的失效问题的更多相关文章
- css单位介绍em ex ch rem vw vh vm cm mm in pt pc px
长度单位主要有以下几种em ex ch rem vw vh vm cm mm in pt pc px %,大概可以分为几种"绝对单位"和"相对单位"和" ...
- 如何感性地理解EM算法?
https://www.jianshu.com/p/1121509ac1dc 如果使用基于最大似然估计的模型,模型中存在隐变量,就要用EM算法做参数估计.个人认为,理解EM算法背后的idea,远比看懂 ...
- 从理解开始 谈谈px rem 和 em 的区别与联系
概述 古语有云,没有规矩则不成方圆.秦灭六国之后为了促进国内生产力的发展,也是大力推进全国度量衡的统一.车同轨,书同文.与"尺寸"相关的问题(手动滑稽),从古至今一直为人们所关注. ...
- em换算px,rem换算px
<body> <style type="text/css" rel="stylesheet"> html,body{ font-size ...
- em和rem及rem在移动的应用
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <style t ...
- CSS各种度量单位----px、em、%、rem、vh/vw、vmin/vmax
本文主要讲下CSS中各类度量单位的意思和区别. 开发中最常用到的css单位是px.em.%.随着css3的出现,带来了更多的度量单位,这些单位为响应式开发,带来很大的好处.各种单位的浏览器兼容性可以去 ...
- 你不知道的css各类布局(五)之em布局、rem布局
em布局/rem布局 em和rem的区别 在了解弹性布局前我们需要先知道em和rem rem:font size of the root element,rem是相对于根元素<html>来 ...
- 响应式布局rem、rem方法封装、移动端响应式布局
相信大家在做移动端的时候都会做各个手机的适配这种适配就是响应式布局在之前做网站的响应式从pc到手机用的是媒体查询 @media screen and (max-width: 300px){} 最大宽度 ...
- 深入理解Redis中的主键失效及其实现机制
参考:http://blog.sina.com.cn/s/articlelist_1221155353_0_1.html 作为一种定期清理无效数据的重要机制,主键失效存在于大多数缓存系统中,Reids ...
随机推荐
- day6_1
一.加密模块 1.hashlib >>> data=hashlib.md5() >>> data.update(b'hello') >>> pri ...
- 10G R2 参数文件相关
CLUSTER_DATABASE Property Description Parameter type Boolean Default value false Modifiable No Range ...
- [翻译]用神经网络做回归(Using Neural Networks With Regression)
本文英文原文出自这里, 这个博客里面的内容是Java开源, 分布式深度学习项目deeplearning4j的介绍学习文档. 简介: 一般来说, 神经网络常被用来做无监督学习, 分类, 以及回归. 也就 ...
- sed 命令及shell的if语句的运用实例
if [ -f /etc/syslog.conf ]; #判断文件是否存在thensystest=`sed -n '/^auth.info/p' /etc/syslog.conf`; ...
- win10内网外网智能访问
当电脑同时连接有线和WiFi时(有线连接为内网,WiFi为外网),会出现内网和外网内容无法同时访问的情况. 本方法实现内网和外网的同时访问. 第一步: 输入指令 “route print ” 查看路由 ...
- 无法使用内置管理员账户打开Microsoft Edge
一.以管理员批准模式运行所有管理员 运行"gpedit.msc",打开本地组策略编辑器,然后依次打开"计算机配置→Windows 设置→安全设置→本地策略→安全选项&qu ...
- linux shell学习笔记
一 变量 声明变量: my_var='ddd'使用变量: ${my_var}设置为只读变量: readonly my_var删除变量: unset my_var 注意只读变量不能被删除 变量类型:( ...
- 关于ES、PES、PS/TS 码流
一.基本概念 )ES ES--Elementary Streams (原始流)是直接从编码器出来的数据流,可以是编码过的视频数据流(H.264,MJPEG等),音频数据流(AAC),或其他编码 ...
- VC++双缓冲保持背景不擦除之实现
几天前,我终于克服了C++窗体重绘时的闪烁问题,用到的技巧就是双缓冲.但是怎样保持住已经绘制的图形呢?也就是仿照Windows自带的画图程序一般,动态的做出一条直线.最容易想到的方法是在MouseMo ...
- __new__
[__new__] object.__new__(cls[, ...]) Called to create a new instance of class cls. 用于创建类对象cls的实例. __ ...