关于rem换算
2017-10-11 18:55
483 查看
//designWidth:设计稿的实际宽度值,需要根据实际设置 //maxWidth:制作稿的最大宽度值,需要根据实际设置 //这段js的最后面有两个参数记得要设置,一个为设计稿实际宽度,一个为制作稿最大宽度,例如设计稿为750,最大宽度为750,则为(750,750) (function(designWidth, maxWidth) { var doc = document, win = window, docEl = doc.documentElement, remStyle = document.createElement("style"), tid; function refreshRem() { var width = docEl.getBoundingClientRect().width; maxWidth = maxWidth || 540; width>maxWidth && (width=maxWidth); var rem = width * 100 / designWidth; remStyle.innerHTML = 'html{font-size:' + rem + 'px;}'; } if (docEl.firstElementChild) { docEl.firstElementChild.appendChild(remStyle); } else { var wrap = doc.createElement("div"); wrap.appendChild(remStyle); doc.write(wrap.innerHTML); wrap = null; } //要等 wiewport 设置好后才能执行 refreshRem,不然 refreshRem 会执行2次; refreshRem(); win.addEventListener("resize", function() { clearTimeout(tid); //防止执行两次 tid = setTimeout(refreshRem, 300); }, false); win.addEventListener("pageshow", function(e) { if (e.persisted) { // 浏览器后退的时候重新计算 clearTimeout(tid); tid = setTimeout(refreshRem, 300); } }, false); if (doc.readyState === "complete") { doc.body.style.fontSize = "16px"; } else { doc.addEventListener("DOMContentLoaded", function(e) { doc.body.style.fontSize = "16px"; }, false); } })(750, 750);
在用的时候把最后末尾括号里的数据(750, 750)改成你相应的psd宽度和你的页面最大宽度即可,其它不用改
相关文章推荐
- 关于android 图标标准 ,效果图切图标准, 单位标准换算
- sublime text 3将px换算为rem的插件的安装及使用
- 关于rem这个东西我要说一句
- 一看就懂得移动端rem布局、rem如何换算
- px rem em 单位的理解和单位换算
- 行业知识:关于发电量与碳排放和等效植树的换算关系
- 移动端页面使用单位的问题:关于px、百分比、em、rem开发中逐渐转换的问题记录
- 用JAVA写一个关于英寸和厘米之间的换算
- rem单位换算
- CSS3中的rem值与px之间的换算
- 前端页面适配的rem换算
- 关于 dBm计算和换算问题
- 前端页面适配的rem换算
- 关于rem的网页适配以及JS实现页面滑动(jquery)
- CSS中的rem的换算
- 【CSS3】CSS3中的Rem值与Px之间的换算
- 使用了js控制根元素的font-size大小,然后进行rem换算
- Sublime Text中安装插件来实现px与rem间的换算
- 关于PX像素、PT点数、CM厘米、MM毫米之间的换算
- 关于rem布局