移动端浏览器我们主要针对webkit内核进行兼容
现在移动端碎片化比较严重,分辨率和屏幕尺寸大小不一
视口(viewport)就是浏览器显示页面内容的屏幕区域。视口可分为布局视口、视觉视口和理想视口
标准写法:
<meta name ="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
属性 | 解释说明 |
---|---|
width | 宽度设置的是viewport宽度,可以设置device-width(宽度是设备宽度)特殊值 |
initial-scale | 初始缩放比,大于0的数字(倍数,一般为1.0) |
maximum-scale | 最大缩放比,大于0的数字(倍数,一般为1.0) |
minimum-scale | 最小缩放比,大于0的数字(倍数,一般为1.0) |
user-scalable | 用户是否可以缩放,yes或no(1或0)(一般设置为no) |
常见移动端屏幕尺寸:
开发中需要用多倍图,比如需要放一个50*50px的图片,直接放到iphone8里,会放大二倍,不清晰,这时采取用一张100*100px的图片,手动缩小为50*50px
准备的图片比实际需要的大二倍,就是二倍图,当然也有3倍4倍图
通常情况下,网址域名前面加m(mobile)可以打开移动端。通过设备判断,如果是移动端打开,则自动跳转到移动端页面。
通过判断屏幕宽度来改变样式,以适应不同终端
缺点:制作麻烦,需花费很大精力去调兼容性问题
移动端浏览器基本以webkit内核为主,所以就考虑webkit兼容性问题。
移动端CSS初始化推荐使用normalize.css
官网地址:http://necolas.github.io/normalize.css/
/* *手机端点击链接会有一个蓝色背景,就是点击高亮,需清除,设置为transparent* */ div a { -webkit-tap-highlight-color: transparent; } /* *移动端浏览器默认的按钮和输入框外观要自定义更改需加上这个属性* */ div button { -webkit-appearance: none; } /* *禁用长按页面时弹出菜单* */ img, a { -webkit-touch-callout: none; }