移动Web开发规范
2015-07-21 14:50
190 查看
1.字体设置
使用无衬线字体body { font-family: "Helvetica Neue", Helvetica, STHeiTi, sans-serif; }
2.设置全局的CSS样式,避免图中的长按弹出菜单与选中文本的行为
a, img { -webkit-touch-callout: none; /* 禁止长按链接与图片弹出菜单 */ } html, body { -webkit-user-select: none; /* 禁止选中文本(如无文本选中需求,此为必选项) */ user-select: none; }
3.移动性能
要考虑Android
低端机与2G
网络场景下性能 注意!
发布前必要检查项所有图片必须有进行过压缩
考虑适度的有损压缩,如转化为80%质量的jpg图片
考虑把大图切成多张小图,常见在banner图过大的场景
加载性能优化, 达到打开足够快
数据离线化,考虑将数据缓存在 localStorage
初始请求资源数
< 4注意!
图片使用CSS Sprites 或 DataURI
外链 CSS 中避免 @import 引入
考虑内嵌小型的静态资源内容
初始请求资源gzip后总体积
< 50kb
静态资源(HTML/CSS/JS/Image)是否优化压缩?
避免打包大型类库
确保接入层已开启Gzip压缩(考虑提升Gzip级别,使用CPU开销换取加载时间) 注意!
尽量使用CSS3代替图片
初始首屏之外的静态资源(JS/CSS)延迟加载 注意!
初始首屏之外的图片资源按需加载(判断可视区域) 注意!
单页面应用(SPA)考虑延迟加载非首屏业务模块
开启Keep-Alive链路复用
运行性能优化, 达到操作足够流畅
避免 iOS 300+ms 点击延时问题 注意!
缓存 DOM 选择与计算
避免触发页面重绘的操作
Debounce连续触发的事件(scroll / resize / touchmove等),避免高频繁触发执行 注意!
尽可能使用事件代理,避免批量绑定事件
使用CSS3动画代替JS动画
避免在低端机上使用大量CSS3渐变阴影效果,可考虑降级效果来提升流畅度
HTML结构层级保持足够简单
尽能少的使用CSS高级选择器与通配选择器
Keep it simple
相关文章推荐
- Coursera台大机器学习技法课程笔记04-Soft-Margin Support Vector Machine
- The connection to adb is down
- 收藏网站74
- nodejs模块
- 收藏网站73
- 我们是如何设计支付表单的
- 2015年全国谷歌卫星地图离线数据存储方案
- Oracle学习笔记(1)-------------Oracle体系结构
- shell中$0,$?,$!等的特殊用法
- QPushButton
- ZendStudio10.6.1如何安装最新的集成svn小工具?
- 在VS 2015 RTM 版中 提示 未能正确加载 NuGetPackage包
- java调用oracle存储过程,返回结果集
- ThreadPoolExecutor运转机制详解
- 收藏网站72
- Swift2.0语言教程之类的方法
- 页面缓存问题
- 重学java23种设计模式(1)工厂方法模式
- centos7新装系统基础配置
- 构建Linux 0.1(BeagleBone Black)