一.新建 rem.js 文件,代码如下: export default function () { document.documentElement.style.fontSize = document.documentElement.clientWidth / 10 + 'px' // 禁止双击放大 document.documentElement.addEventListener('touchstart', function (event) { if (event.touches.length…
viewport(视口) 具体数值(不设置时默认为980 ,部分安卓手机不支持设置成具体数值) width=device-width 和设备宽度保持一致 user-scalable=no 是否允许用户缩放no/yes(iOS10不支持 近乎无解) initial-scale 初始缩放比例 minimum-scale 最小缩放比例 maximum-scale 最大缩放比例 页面宽度 页面宽度=device-width/scale 在页面中实现等比像素的JS代码: <!--利用页面的像素比来进行页面…
rem相对于根元素html的,em相对于父元素的.rem和em相对大小的值默认情况下如果你没有在根元素指定参照值,那浏览器默认就是 1rem 为 16px,如果你指定了值假设为 20px,那 1rem 就为 20px.html{font-size: 87.5%;}字体14pxrem 在 ie8 及以下的版本不支持外其他浏览器都支持如果要使用 rem 单位,html 的字体默认大小必须设置为 12px (function (doc, win) { var docEl = doc.documentE…
px:设备实际像素单位 dp/pt:逻辑像素单位(IOS的尺寸单位为pt,Android的尺寸单位为dp) 在设计和开发过程中,应该尽量使用逻辑像素尺寸来思考界面. UI 给默认 640 的图,采用 pxToDp 函数,即可将 UI 等比放大到机器上. import {Dimensions} from 'react-native'; // 58 app 只有竖屏模式,所以可以只获取一次 width const deviceWidthDp = Dimensions.get('window').wi…
为什么要使用rem 之前有些适配做法,是通过js动态计算viewport的缩放值(initial-scale). 例如以屏幕320像素为基准,设置1,那屏幕375像素就是375/320=1.18以此类推. 但直接这样强制页面缩放过于粗暴,会导致页面图片文字失真模糊. Px是相对固定单位,字号大小直接被定死,所以用户无法根据自己设置的浏览器字号而缩放,em和rem虽然都是相对单位,但em是相对于它的父元素的font-size,页面层级越深,em的换算就越复杂,而rem是直接相对于根元素,这就避开了…
这段时间内,涉及到的都是移动端开发,说到移动端开发,我们就会思考到,目前分辨率的问题,如果用px为单位的话,在不同移动设备和不同分辨率下,页面的效果可能会有所不同,甚至导致页面变形.所以在次我们就用到了rem,使用rem为单位,在任何移动端下显示的效果都是一样的. 只要我们在页面的head中引入下面的 rem.js : ! function(n) { var e = n.document, t = e.documentElement, i = 750, d = i / 100, o = "ori…
rem布局非常简单,首页你只需在页面引入这段原生js代码就可以了 (function (doc, win) { var docEl = doc.documentElement, resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize', recalc = function () { var clientWidth = docEl.clientWidth; if (!clientWidth) return;…
手机端页面自适应解决方案—rem布局进阶版   https://www.jianshu.com/p/985d26b40199 注:本文转载之处:https://www.cnblogs.com/annie211/p/8118733.html 该方案使用相当简单,把下面这段已压缩过的 原生JS(仅1kb,源码已在文章底部更新,2017/5/3) 放到 HTML 的 head 标签中即可(注:不要手动设置viewport,该方案自动帮你设置) <script>!function(e){functio…
转自:https://segmentfault.com/a/1190000007350680 一年前笔者写了一篇 <手机端页面自适应解决方案—rem布局>,意外受到很多朋友的关注和喜欢.但随着时间的推移,该方案已然过时,故为大家介绍一个目前我极力推荐使用的,更加完美的方案——rem布局(进阶版) 另外: 此方案仅适用于移动端web 文章底部常见问题说明第四条,笔者已给出一个相当便捷的解决方案,欢迎留言交流.(2017/9/9) 该方案使用相当简单,把下面这段已压缩过的 原生JS(仅1kb,源码…
转自:https://segmentfault.com/a/1190000004705207 相信很多刚开始写移动端页面的同学都要面对页面自适应的问题,当然解决方案很多,比如:百分比布局,弹性布局flex(什么是flex),也都能获得不错的效果,这里主要介绍的是本人在实践中用的最顺手最简单的布局方案——rem(什么是rem)布局 rem布局非常简单,首页你只需在页面引入这段原生js代码就可以了 (function (doc, win) { var docEl = doc.documentElem…