rem、em 、font-size随着屏幕大小的改变而改变
rem 的根标签是html
以html标签上设置的font-size的值为参考点
如:
<div id="app">
<div id="son></div>
</div>
html{ font-size:20px; }
#app{
width :4rem; ===>4*20=80px
}
#son {
width :2rem; ===>2*20 =40px
}
如果html的font-size 的值能随便屏幕的大小变化而变化
以下js代码放在头部,不要放body里
<script>
resetrem();
//切换屏幕 (横屏竖屏)
window.addEventListener("orientationchange", resetrem);
//resize:屏幕的大小发生改变就触发监听事件resetrem
window.addEventListener("resize",resetrem);
function resetrem(){
var html = document.querySelector("html");//获取到html元素
var width = html.getBoundingClientRect().width;//获取屏幕的宽度
html.style.fontSize = width/16+"px";
}
</script>
UI图 width:414px,则css样式
在Ihone6/7/8 font-size=25.875px
{
width:16 rem; ==>414 / 25.875
}
em 根据父元素改变值
以父元素为参考点
比如:
<div id="app">
<div id="son></div>
</div>
#app{
font-size:10px;
}
#son{
font-size:1em; ==>1*10=10px
}
物理像素和css像素
正常情况下 1物理像素=1css像素
放大的时候 1css像素=3物理像素,会模糊
rem、em 、font-size随着屏幕大小的改变而改变的更多相关文章
- LaTeX :font size 修改字体大小的几种方式
调整字体大小的几种方式,大小依次增大,具体如下: \tiny \scriptsize \footnotesize \small \normalsize \large \Large \LARGE \hu ...
- rem & em初探
Rem为单位 CSS3的出现,他同时引进了一些新的单位,包括我们今天所说的rem.在W3C官网上是这样描述rem的——“font size of the root element” .下面我们就一起来 ...
- rem,em,与px的比较用法
在Web中使用什么单位来定义页面的字体大小,至今天为止都还在激烈的争论着,有人说PX做为单位好,有人说EM优点多,还有人在说百分比方便,以至于出现了CSS Font-Size: em vs. px v ...
- 根据屏幕大小动态设置字体rem
1.根据屏幕大小动态设置字体rem var docEl = document.documentElement, //当设备的方向变化(设备横向持或纵向持)此事件被触发.绑定此事件时, //注意现在当浏 ...
- 自适应布局,响应式布局以及rem,em区别
一.自适应和响应式 先说共同点: 两者都是因为越来越多的 移动设备( mobile, tablet device )加入到互联网中来而出现的为移动设备提供更好的体验的技术.用技术来使网页适应从小到大( ...
- 取得DisplayMerics手机屏幕大小的应用
DisplayMerics:A structure describing general information about a display, such as its size, density, ...
- px,rem,em的区别
PX特点 1. IE无法调整那些使用px作为单位的字体大小: 2. 国外的大部分网站能够调整的原因在于其使用了em或rem作为字体单位: 3. Firefox能够调整px和em,rem,但是96%以上 ...
- unity UGUI text font size对性能影响较大
Font Size对ugui text的性能影响非常大. <Cube Duck Run>在itouch5上测试是很流畅的,但是在iphone5上测试,在game over后显示历史最高分时 ...
- mobile css & rem & em & px
mobile css & rem & em & px 1 rem === 16px 任意浏览器的默认字体高都是 16px, 所有未经调整的浏览器都符合: 1em=16px, 那 ...
随机推荐
- php info
http://www.cnblogs.com/xiaochaohuashengmi/archive/2010/08/12/1797753.html php pdo 相关 http://blog.cs ...
- fs项目---->cron框架的学习(一)
Cron是一种允许您按计划执行某些内容的工具.这通常使用cron语法来完成.我们允许您在计划作业触发时执行函数.我们还允许您使用子进程执行javascript进程外部的作业.此外,这个库超出了基本的c ...
- Mybatis 的 xml 文件语法错误,启动项目时控制台一直循环解析但是不打印错误
重写SqlSessionFactoryBean的buildSqlSessionFactory方法: eg: package com.slp; import java.io.IOException; i ...
- NHibernate之旅(21):探索对象状态
本节内容 引入 对象状态 对象状态转换 结语 引入 在程序运行过程中使用对象的方式对数据库进行操作,这必然会产生一系列的持久化类的实例对象.这些对象可能是刚刚创建并准备存储的,也可能是从数据库中查询的 ...
- linux-Centos 7下bond与vlan技术的结合
服务器eno1与eno2作bonding,捆绑成bond0接口,服务器对端交换机端口,同属于301.302号vlan接口 vlan 301: 10.1.2.65/27 ...
- Solr7.4.0的API(Solrj)操作及项目中的使用
一.SolrJ的概念 solr单机版服务搭建:https://www.cnblogs.com/frankdeng/p/9615253.html solr集群版服务搭建:https://www.cnbl ...
- linux 修改hosts文件
1.修改hostssudo gedit /etc/hosts2.添加解析记录( . )完整案例:127.0.0.1 localhost.localdomain localhost简洁记录:127.0. ...
- nodejs yarn包管理工具
Yarn https://yarnpkg.com/zh-Hans/docs/install#windows-stable 安装包 Yarn Npm yarn npm i yarn global add ...
- ThinkPHP框架 系统规定的方法查询数据库内容!!同时也支持原生的SQL语句!
<?php namespace Admin\Controller; use Think\Controller; class MainController extends Controller{ ...
- <target>.ID 和 <source>.ID 的属性冲突: DataType 属性不匹配
ORACLE数据库主键的数据类型为number ,如果不指定长度会有 Merge报 <target>.ID 和 <source>.ID 的属性冲突: DataType 属性不匹 ...