转帖 移动端h5页面不同尺寸屏幕适配兼容方法
1. viewport属性及html页面结构
- <meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
- // width 设置viewport宽度,为一个正整数,或字符串‘device-width’
- // height 设置viewport高度,一般设置了宽度,会自动解析出高度,可以不用设置
- // initial-scale 默认缩放比例,为一个数字,可以带小数
- // minimum-scale 允许用户最小缩放比例,为一个数字,可以带小数
- // maximum-scale 允许用户最大缩放比例,为一个数字,可以带小数
- // user-scalable 是否允许手动缩放
需要在每一个页面头都加上这句话。这里面关于maximun-scale的取值网上有几种不同说法。有人建议用1.3,公司这边用的1.5。可能是我没有理解什么是允许用户最大缩放比例吧,博主放到真机上测试发现1.0,1.3,1.5没有什么区别。下面po一个网上建议用1.3的理由吧:
为什么是1.3?
目前大部分页面都是以320px为基准的布局,而iphone6的宽度比是375/320 = 1.171875,iphone6+则是 414/320 = 1.29375那么以1.29倍也就约等于1.3了。
2. 屏幕自适应(贼好用的绝招)
<script>
(function (doc, win) {
var docEl = doc.documentElement;
resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize';
recalc = function () {
var clientWidth = docEl.clientWidth;
if (!clientWidth) return;
docEl.style.fontSize = 50 * (clientWidth / 375) + 'px';
};
if (!doc.addEventListener) return;
win.addEventListener(resizeEvt, recalc, false);
doc.addEventListener('DOMContentLoaded', recalc, false);
}(document,window)); </script>
3. iphone4/iphone5/iphone6/iphone6p 的css media query
@media (device-height:480px) and (-webkit-min-device-pixel-ratio:2){/* 兼容iphone4/4s */
.class{}
}
@media (device-height:568px) and (-webkit-min-device-pixel-ratio:2){/* 兼容iphone5 */
.class{}
}
@media(min-device-width:375px)and(max-device-width:667px)and(-webkit-min-device-pixel-ratio:2){
/*iphone6*/
}
@media(min-device-width:414px)and(max-device-width:736px)and(-webkit-min-device-pixel-ratio:3){
/*iphone6plus*/
}
最新文章
- 获取URL中的参数
- 扩展progress_timer的计时精度
- C# Winform中无焦点状态下获取键盘输入或者USB扫描枪数据
- 【转载】最完美解决Nginx部署ThinkPHP项目的办法
- scope=&#39;request&#39;的bean预加载冲突
- BZOJ4548 小奇的糖果
- LeetCode - Unique Binary Search Trees II
- 【Android Demo】获取指定网页的页面源代码
- 嵌入式 C 语言的可变参数表函数的设计
- [Django] Windows 下安装 配置Pinax 工程
- ASP.NET 异步编程
- Linux软件安装管理 - CentOS
- yii2 邮件发送(有图有真相)
- 【技术讨论】RF环境搭建手册
- P1119 灾后重建 floyd
- PBRT笔记(6)——采样和重构
- Code First
- Android sqlitedatabase 事务
- 【转】Java并发编程:同步容器
- Ai challenger 2017 image caption小结