Mobile Web开发实践

时间:2014-08-12 17:26:14   收藏:0   阅读:350

移动设备的快速发展给用户带来了很大的便利。用户使用Android、iPhone和其它移动设备很容易接入互联网。移动设备对网页的性能要求比较高,下面就说说Mobile Web开发的一些心得。

Viewport

当你用iPhone访问一个没有面向移动设备优化过的网站时(最好选取960px宽度的网站),你会发现iPhone上面刚好可以把整个页面显示出来,但是页面被缩小了非常多,字体非常小。这其实是Sarari默认把自己当成980px宽度来处理的,而所有iPhone(竖屏)的真实宽度为320px,事实上几乎所有的移动设备都有类似的情况,iPhone的请参考iPhone 5 Display Size and Web Design Tips。这就牵扯到Viewport的概念了。

Viewport是浏览器的可视区域,也是浏览器的宽度,在PC上面问题比较简单,宽度是多少就多少,但是在移动设备上,浏览器尝试去把整个页面都显示出来,所以就会Viewport值不准确的情况,例如上面提到的Safari从iPhone那里获取到宽度是980px(浏览器只能从系统那里获取宽度),所以我们要做第一件事就是要浏览器用真实的宽度去解析页面,代码如下:

<meta name="viewport" content="width=device-width, initial-scale=1.0">

"width=device-width"表示浏览器用它自己真实的宽度,如iPhone上面就是320px,initial-scale=1.0表示默认不进行缩放。关于Viewport更多请参考:Using the viewport meta tag to control layout on mobile browsers

补充一下:设备像素不等于CSS像素,例如用户放大页面300%,CSS像素也跟着放大300%,但设备像素肯定不会有变化。很多设备为了保证良好浏览效果,通常会告诉浏览器一个假的分辨率,例如iPhone5s的设备分辨率是640x1136,但是却告诉浏览器它的分辨率是320x568(网站要加width=device-width,否则是980宽度),否则真的以640x1136在那点屏幕上进行浏览页面肯定要近视了。

响应式设计

移动设备的分辨率多种多样,这就要求我们要在所有设备上都能很好的展示,而响应式设计就是非常好的解决方案。BootStrap等框架都号称移动优先,当然缺点是文件比较大,如果网站比较简单的话可以自己用百分比写写就可以了。更多响应式设计请参考:响应式设计介绍

图片精度

现在新的手机配置都比较高,绝大部分手机的像素比例(devicePixeRatio)都超过1,iPhone的Retina屏幕的像素比例为2,Nexus5的像素比例为3。像素比例高的屏幕必须要有高清的图片,这样显示效果才好,比如iPhone5s的竖屏宽度为320px,但是只有使用640px宽度的图片才能完美显示。我们的开发经验是图片以iPhone5s为标准进行处理,就是在iPhone5s上面必须是高清显示,其它广大Anroid设备上自适应处理。可以参考:移动Web——CSS为Retina屏幕替换图片

性能相关

HTML5 & CSS3

移动设备上的浏览器都是比较新的浏览器,基本上都支持HMTL5和CSS3的新的功能,因此我们应该多使用它们。最起码我们可以使用CSS3的圆角效果来替换图片。下面列出一些非常实用的CSS3特性。

参考文档

Mobile Web开发实践,布布扣,bubuko.com

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!