站长资源网页制作

WEBAPP开发技巧小结(手机网站开发注意事项)

整理:jimmy2024/12/27浏览2
简介1、要响应式开发web,也就是页面必须自适应屏幕大小,可以采用流体布局,如之前的文章(自适应宽度布局),其他具体的小问题可以采用media query解决(让IE支持CSS3 Media Query实现响应式Web设计和CSS3 Media Queries); 2、因为手机大多是高级浏览器,可以使用

1、要响应式开发web,也就是页面必须自适应屏幕大小,可以采用流体布局,如之前的文章(自适应宽度布局),其他具体的小问题可以采用media query解决(让IE支持CSS3 Media Query实现响应式Web设计和CSS3 Media Queries);
2、因为手机大多是高级浏览器,可以使用html5+css3开发;
3、合理灵活的使用meta标签,具体如下;


复制代码代码如下:
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0;" name="viewport" />
<meta content="yes" name="apple-mobile-web-app-capable" />
<meta content="black" name="apple-mobile-web-app-status-bar-style" />
<meta content="telephone=no" name="format-detection" />


第一个meta标签表示:强制让文档的宽度与设备的宽度保持1:1,并且文档最大的宽度比例是1.0,且不允许用户点击屏幕放大浏览;
第二个meta标签是iphone设备中的safari私有meta标签,它表示:允许全屏模式浏览;
第三个meta标签也是iphone的私有标签,它指定的iphone中safari顶端的状态条的样式;
第四个meta标签表示:告诉设备忽略将页面中的数字识别为电话号码
例子见:常用meta标签示例

4、一定要注意链接的大小,因为大多是触屏手机,要让用户很方便的能点击到标签(我以前看到过文章,现在找不到出处,好像是最小得42px*42px):

操作对象的大小符合手指的操作,按键的大小设置规范:
食指点击的间距 约为7*7 mm, 1mm间距,
拇指点击8*8 mm,2mm间距。当前推荐的值为9mm 大小,最小应不小于7mm。
当然一些重要操作,或者频繁点击的区域可以设置的略微更大一些。

5、要做好优雅降级(平稳退化),少用JS,图片,要用户禁止下载JS和图片的时候页面也能体现价值(因为很多APP默认设置为3G下是不自动下载图片等资源的)。
6、对于图片的处理,只要设置宽度,让图片自适应,防止图片变形,当然要兼容的设备分辨率差距很大的时候,需要利用media queries根据分辨率的不同加载不同的图片(需要同一张设置为几种不同的规格),一是防止小分辨率设备加载大图片浪费流量,二是防止大分辨率设备加载小图片导致的图片模糊问题。
7、当设置分辨率太小的话,显示正常模块显得太拥挤的情况下,可以利用media queries根据分辨率适当的显示或隐藏模块,如768px下显示2列布局,320px显示1列布局等。


复制代码代码如下:
/* Large desktop */
@media (min-width: 1200px) { ... }

/* Portrait tablet to landscape and desktop */
@media (min-width: 768px) and (max-width: 979px) { ... }

/* Landscape phone to portrait tablet */
@media (max-width: 767px) { ... }

/* Landscape phones and down */
@media (max-width: 480px) { ... }

8、当然也可以根据判断不同的终端跳转到不同的URL,见:手机平板等移动端适配跳转URL的javascript
9、手机浏览器多而乱,而且手机系统的默认处理方法也不同,兼容问题丝毫不比PC版的简单,所以要总结归纳常用的处理方法,如-webkit-tap-highlight-color:rgba(0,0,0,0);/*禁止链接高亮*/-webkit-touch-callout:none;/*禁止链接长按弹出选项菜单*/等等
10、对手机平板的移动端来说,流量是很重要的,所以webapp中class和id的命名尽量断点,如头部可以命名为hd,中间为bd,底部为ft等(此建议待定,因为考虑到后期维护是否方便等问题);