移动端web开发之流失布局、flex布局
1 视口
视口(viewport)就是浏览器显示页面内容的屏幕区域。 视口可以分为布局视口、视觉视口和理想视口
1.1 布局视口 layout viewport
● 一般移动设备的浏览器都默认设置了一个布局视口,用于解决早期的PC端页面在手机上显示的问题。
● iOS, Android基本都将这个视口分辨率设置为 980px,所以PC上的网页大多都能在手机上呈现,只不过元 素看上去很小,一般默认可以通过手动缩放网页。
1.2 视觉视口 visual viewport
● 字面意思,它是用户正在看到的网站的区域。注意:是网站的区域。
● 我们可以通过缩放去操作视觉视口,但不会影响布局视口,布局视口仍保持原来的宽度。
1.3 理想视口 ideal viewport
● 为了使网站在移动端有最理想的浏览和阅读宽度而设定
● 理想视口,对设备来讲,是最理想的视口尺寸
● 需要手动添写meta视口标签通知浏览器操作
● meta视口标签的主要目的:布局视口的宽度应该与理想视口的宽度一致,简单理解就是设备有多宽,我们布 局的视口就多宽
1.4 总结
● 视口就是浏览器显示页面内容的屏幕区域
● 视口分为布局视口、视觉视口和理想视口
● 我们移动端布局想要的是理想视口就是手机屏幕有多宽,我们的布局视口就有多宽
● 想要理想视口,我们需要给我们的移动端页面添加 meta视口标签
1.5 meta视口标签
<meta name="viewport" content="width=device-width, user-scalable=no,
initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
1.6 标准的viewport设置
● 视口宽度和设备保持一致
● 视口的默认缩放比例1.0
● 不允许用户自行缩放
● 最大允许的缩放比例1.0
● 最小允许的缩放比例1.0
2 二倍图
● 对于一张 50px * 50px 的图片,在手机 Retina 屏中打开,按照刚才的物理像素比会放大倍数,这样会造成图片模糊
● 在标准的viewport设置中,使用倍图来提高图片质量,解决在高清设备中的模糊问题
● 通常使用二倍图, 因为iPhone 6\7\8 的影响,但是现在还存在3倍图4倍图的情况,这个看实际开发公司需求
● 背景图片 注意缩放问题
/* 在 iphone8 下面 */
img{
/*原始图片100*100px*/
width: 50px;
height: 50px;
}
.box{
/*原始图片100*100px*/
background-size: 50px 50px;
}
3 移动端技术解决方案
3.1 移动端浏览器
● 移动端浏览器基本以 webkit 内核为主,因此我们就考虑webkit兼容性问题。
● 我们可以放心使用 H5 标签和 CSS3 样式。
● 同时我们浏览器的私有前缀我们只需要考虑添加 webkit 即可