1.页面首部要加的meta标签
<meta name="viewport" content="width=device-width,user-scalable=no"/>
<!--
viewport 视口(可视区窗口)
默认不设置viewport一般可视区宽度在移动端是980
width可视区的宽度(number||device-width)
user-scalable是否容许用户缩放(yes||no) iOS10无效(用事件解决)
initial-scale初始缩放比例
minimum-scale最小缩放比例
maximum-scale最大缩放比例
devicePixelRatio像素比
设计图最少要750的尺寸
-->
<!--QQ强制横屏或者竖屏
portrait 竖屏
landscape 横屏
x5浏览器:qq浏览器、微信 qq内置浏览器
-->
<meta name="x5-orientation" content="portrait"/>
<!--QQ设置全屏-->
<meta name="x5-fullscreen" content="true"/>
<!--UC强制竖屏或横屏显示-->
<meta name="screen-orientation" content="portrait | landscape"/>
<!--UC全屏显示-->
<meta name="full-screen" content="yes"/>
<!--禁止识别电话号码和邮箱号码-->
<meta name="format-detection" content="telephone=no,email=no"/>
<!--
拨打电话和发邮件
href='tel:'
href='mailto:'
-->
<a href="tel:188888888">请拨打电话188888888</a>
<a href="mailto:1057889038@qq.com">发邮件</a>
2.默认样式及一些兼容性问题
/*
默认样式
1.a、input、button点击时的默认阴影样式
清除点击阴影-webkit-tap-highlight-color
2.消除按钮圆角-webkit-appearance
3.选中文字设置-webkit-user-select
4.禁止文字缩放-webkit-text-size-adjust
5.默认字体设置Helvetica
6.其他问题
(1)Font Boosting 在一段文字我们没有给它设置高度的时候,
在webkit内核下,文字的大小被浏览器放大了
解决方法:
a.设置高度
b.设置最大高度
(2)固定定位fixed兼容性问题
js解决
(3)IOS的body的overflow问题
解决:在页面最外层包一层div
* */
body{
font-family: helvetica;
}
body *{
/*禁止用户设置字体大小*/
-webkit-text-size-adjust:100%;
}
a,input,button{
-webkit-tap-highlight-color:rgba(0,0,0,0) ;
}
input,button{
-webkit-appearance:none;
border-radius: 0;
}
3.适配
/*
1.百分比适配
百分比布局一般宽度百分比,高度还是固定值
缺点:高度不好计算
2.viewport适配
<meta name="viewport" content="user-scalable=no,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0"/>
3.rem适配
4.弹性盒模型(box版和flex版)
* */
4.设置默认字体大小
<script type="text/javascript">
//获取像素比
var pixelRatio = 1 / window.devicePixelRatio;
var html=document.documentElement;
//通过js动态设置视口(viewport)
document.write('<meta name="viewport" content="width=device-width,initial-scale='+pixelRatio+',minimum-scale='+pixelRatio+',maximum-scale='+pixelRatio+'" />');
//设置字体大小
//html.style.fontSize=设置图宽度/任意数值;
html.style.fontSize=html.clientWidth/25+'px';
</script>