移动端布局rem布局适应各种手机
2017-04-10 00:00
543 查看
我的想法是,每个公司的设计稿的宽度是固定的,比如设计稿的宽度为375px,那么我先用js获取屏幕的宽度device-width,然后,设置1rem = device-width/37.5,那么1rem相当于设计稿的10px。
理想是美满的,但是,谷歌浏览器将少于12px的字体按照12px显示,也就是说,虽然你设置了1rem=10px,在谷歌内核的浏览器相当于1rem=12px。为了解决这个问题,只能再退一步,设置1rem=device-width/18.75,这样1rem等于设计稿的20px。例如一张图片在设计稿长宽分别为200px*100px,那么它的样式这样写
js代码示范:
其他大神更完善的代码示范
理想是美满的,但是,谷歌浏览器将少于12px的字体按照12px显示,也就是说,虽然你设置了1rem=10px,在谷歌内核的浏览器相当于1rem=12px。为了解决这个问题,只能再退一步,设置1rem=device-width/18.75,这样1rem等于设计稿的20px。例如一张图片在设计稿长宽分别为200px*100px,那么它的样式这样写
{ width:10rem; //10*20=200 heigth:5rem; //5*20=100 }
js代码示范:
var deWidth = window.screen.width; console.log("deWidth:",deWidth); var remPX = deWidth/18.75; document.querySelector("html").setAttribute("style","font-size: "+remPX+"px;") console.log("remPX:",remPX);
其他大神更完善的代码示范
<script type="text/javascript"> // 计算html的font-size (function(){ function resizeBaseFontSize(){ var rootHtml = document.documentElement, deviceWidth = rootHtml.clientWidth; if(deviceWidth > 640){ deviceWidth = 640; } rootHtml.style.fontSize = deviceWidth / 7.5 + "px"; } resizeBaseFontSize(); window.addEventListener("resize", resizeBaseFontSize, false); window.addEventListener("orientationchange", resizeBaseFontSize, false); })(); </script>
相关文章推荐
- 移动端(手机)自适应rem布局
- rem自适应移动端布局
- 移动端适配不同手机 rem布局
- 移动端自适应布局----rem字体
- 响应式网站布局要适应的当下主流手机屏幕的各个版本的分辨率有哪些(media query)
- 移动端 rem 布局的一些总结
- 一看就懂得移动端rem布局、rem如何换算
- 第148天:js+rem动态计算font-size的大小,适配各种手机设备
- 手机移动端网页,按屏幕大小让图片自适应屏幕。
- 移动端rem布局背景图片使用以及sprite雪碧图
- 【转载】rem自适应布局-移动端自适应必备
- 用Rem来无脑还原Web移动端自适应的页面
- Android布局中如何精确计算以适应各种屏幕
- 关于移动端rem 布局的一些总结
- 移动端页面开发适配 rem布局原理
- 让一份程序同时适应手机和平板,动态加载布局的技巧
- rem 自适应布局 bootstrap 移动端适配
- 使用 rem 实现 适配各种屏幕布局
- 移动端rem布局雪碧图解决方案 以及分享腾讯团队的在线雪碧图工具
- 移动端页面自适应解决方案 rem布局