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 是否允許手動縮放
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*/
}