rem 单位在做移动端的h5开发的时候是最常常使用的单位。

为解决自适应的问题。我们须要动态的给文档的更节点加入font-size 值。使用mediaquery 能够解决问题,可是每个文件都引用一大串的font-size 值非常繁琐,并且值也不能达到连续的效果。

就使用js动态计算给文档的fopnt-size 动态赋值解决问题。

使用的时候,请将以下的代码放到页面的顶部(head标签内);

/**
* [以iPhone6的设计稿为例js动态设置文档 rem 值]
* @param {[type]} currClientWidth [当前客户端的宽度]
* @param {[type]} fontValue [计算后的 fontvalue值]
* @return {[type]} [description]
*/
<script>
var currClientWidth, fontValue,originWidth;
//originWidth用来设置设计稿原型的屏幕宽度(这里是以 Iphone 6为原型的设计稿)
originWidth=375;
__resize(); //注冊 resize事件
window.addEventListener('resize', __resize, false); function __resize() {
currClientWidth = document.documentElement.clientWidth;
//这里是设置屏幕的最大和最小值时候给一个默认值
if (currClientWidth > 640) currClientWidth = 640;
if (currClientWidth < 320) currClientWidth = 320;
//
fontValue = ((62.5 * currClientWidth) /originWidth).toFixed(2);
document.documentElement.style.fontSize = fontValue + '%';
}
</script>

最新文章

  1. HTML登录注册界面怎么制作?
  2. 语义化HTML:i、b、em和strong标签
  3. LoadRunner11录制APP脚本(2)
  4. 用Unity开发HTC VIVE——手柄控制篇
  5. C#中事件的继承
  6. WCF入门教程[WCF基本应用]
  7. 2013长沙网络赛H题Hypersphere (蛋疼的题目 神似邀请赛A题)
  8. BZOJ 1901: Zju2112 Dynamic Rankings( BIT 套 BST )
  9. Flex Label自动截取、自动换行
  10. ios字体大小适应不同屏幕
  11. docker核心概念及centos6下安装
  12. mybatis自动生成
  13. how tomcat works 总结 三
  14. 关于mysql的报错的1366
  15. ASP.NET 一个数据访问层的封装
  16. [转]RabbitMQ入门教程(概念,应用场景,安装,使用)
  17. 设置漂亮的eclipse主题(Theme)风格
  18. vistual studio 去除 git 源代码 绑定
  19. python的rsa公钥解密方法
  20. Yahoo团队总结的关于网站性能优化的经验(转)

热门文章

  1. TMG 模拟公司网络架构要点
  2. windows下在指定目录下打开命令行
  3. 2017ACM/ICPC广西邀请赛-重现赛(感谢广西大学)
  4. php 注册与登录
  5. DefaultActionInvocation 源码
  6. Codeforces 547B. Mike and Feet[单调栈/队列]
  7. 【Luogu】P2912牧场散步(TarjanLCA)
  8. 刷题总结——spoj1812(后缀自动机+DP)
  9. Vue &amp;&amp; Angular 双向绑定检测不到对象属性的添加和删除
  10. Mysql字符集与校对规则