移动端web其实也就是小尺寸触摸屏设备的web,其中包含了两个词——1、小尺寸设备;2、触摸屏。能把这两个问题给解决掉,就已经是一个基本合格的移动web前端开发工程师了。对于前端工程师来说,前路漫漫,发展的太快,要学的东西超多,学什么感觉都是对的,不过不论怎样,还是得一步一步的迈。下面来探讨一下成为移动web前端工程师所必须要get到的一些硬技能。
一、触摸设备与桌面设备的差异化
移动端主要是手机、小平板、大平板,而这三种其中的一种都会有无数个尺寸,而且浏览器在这几种设备中都是全屏显示,所以移动端的问题主要在于设备之间的匹配和横纵向之间的适应。
桌面设备,也就是PC端,浏览器可以任意调节大小,各个尺寸并不会有太明显的跨度,可以人为分段控制,桌面浏览器之间存在不同的解析引擎,所以浏览器的兼容性是最大的问题。
总结:移动web重点在设备尺寸;桌面web重点在各个浏览器的兼容。
二、硬件问题
移动端硬件比较PC硬件水平要差得多,其计算能力对比PC也是弱爆了,所以做移动web前端,性能考虑要更多一些,考虑差一点,性能就差很多。
三、用户角度
PC用户目的性很强,比如工作、娱乐、学习等等等等,是一整块时间去利用,所以用户会花一定的时间等待,而移动端不一样,移动端大多是利用碎片时间去使用的,所以用户不会花太多时间去等待空页面加载,要尽可能的快。
四、浏览器内核问题
现在大多移动端系统内置浏览器都是webkit内核,包括iOS、Android、blackberry,但windows phone 8却是IE10,不过也支持HTML5。支持HTML5,不等于大家解析出来都一样,标准都一样,所以,测试的时候还是会看到很多“异样”,而这些“异样”在PC上开发的我们,即使用模拟器,也找不出问题所在,只能猜测、推断,这是一件很头痛的事。对了,还有一款浏览器opera mobile,opera浏览器在pc上表现极其优秀,因为超强的纠错能力,以前我最爱用的,但是在移动端就表现的有些不合群,我最开始做移动端时就是用它的移动端模拟版本在pc上模拟移动端的,后来才发现,有些地方需要单独做处理才行。还有Firefox,支持HTML5都是没问题的,就是有时候需要特殊处理一下,也算是个小麻烦吧。
五、HTML标准
移动端几乎完全支持HTML5,所以不用太考虑不支持的问题,但是因为HTML5标准确定的比较晚,而各个浏览器厂商们试实行的比较早,所以会有一些个别前缀什么的,或者自己单独开放的一些功能,随着规范确定,以后会越来越统一吧。
不过我现在仍会看到很多移动web里面用的是HTML4.0、XHTML1.0的声明,说到这里还得说一句——现在有通过脚本来实现pc转移动的,其实这样也应该会出现这种状况。当然,如果能正常显示、操作的话,这些也都不是什么大问题,不过对于未来升级或许是个障碍吧。