Opera Mini 5对移动网站开发的影响
前几天,Opera宣布其用户已经超过1亿——桌面版和手机版均超过5000万。Opera Mini是一个很优秀的手机浏览器,对手机用户而言,Opera Mini为锅牛般的手机互联网访问提供了更快更好的体验。而最近最让iPhone用户惊喜的是,Opera mini 5通过了水果店的审核,已经可以免费下载。现在Opera mini 5已经发布了对各平台的版本,包括Android/oPhone、Windows mobile、黑莓、Java等,支持绝大部分手机平台。
Opera Mini 5被称为Opera公司的“下一代”手机浏览器,可见它与Opera 10.5x一样,也是一个很重要的里程碑,那么今天就让我们看一看Opera Mini 5对移动网站开发的影响吧。
Opera Mini 5的特性
- Opera Mini 5使用Presto 2.4的引擎,渲染能力与Opera Mobile 10(只有Windows Mobile和S60版本)基本持平;
- 由于Opera的 Vega图形引擎无法在其代理服务器上使用,所以,一些CSS3属性不能在Opera Mini 5中应用,比如border-radius、css transition等;(事物都有两面性,Opera Mini速度快的关键就是其代理服务器提供了内容压缩,而在这里,却成为了技术的一个鸡肋)
- 支持CSS3媒体查询;
- 完全支持CSS3选择器;
- 支持多背景图片;
- 支持RGB(a)和HSL(a)色彩;
- HTML 5的一些特性无法支持,比如网络字体、表单等,经测试,Opera mini 5在html5test.com的测试中只拿到14分(共160分),只支持html5的doctype和部分canvas;
- 部分支持SVG,只会被渲染为光栅图片;
- 支持Data URi。
Opera Mini 5与Opera桌面版和Opera mobile 10对标准的支持对比表
Zi Bin, Cheah整理了一份Opera Mini与Opeta Mobile 10以及桌面版的Opera 10.50在网页标准支持方面的对比表。通过这个表格,我们可以详细的看到三个平台的Opera对标准的支持情况了。
| 桌面版 10.5x | Mobile 10 | Mini 5 | |
| CSS3 常规属性 | |||
| 网络字体 | ![]() |
![]() |
![]() |
| 媒体查询(meidia query) | ![]() |
![]() |
![]() |
| text-shadow (包括多重text-shadow) | ![]() |
![]() |
(不支持模糊半径) |
| 选择器 | ![]() |
![]() |
![]() |
| CSS3 背景与边框 | |||
| border-radius | ![]() |
![]() |
![]() |
| background-clip | ![]() |
![]() |
![]() |
| background-origin | ![]() |
![]() |
![]() |
| 多背景图片 | ![]() |
![]() |
![]() |
| background-attachment | ![]() |
![]() |
![]() |
| box-shadow | ![]() |
![]() |
![]() |
| border-image | ![]() |
![]() |
![]() |
| CSS3 Transitions | |||
| transition-property | ![]() |
![]() |
![]() |
| transition-duration | ![]() |
![]() |
![]() |
| transition-delay | ![]() |
![]() |
![]() |
| transition-timing-function | ![]() |
![]() |
![]() |
| ease | ![]() |
![]() |
![]() |
| linear | ![]() |
![]() |
![]() |
| ease-in | ![]() |
![]() |
![]() |
| ease-out | ![]() |
![]() |
![]() |
| ease-in-out | ![]() |
![]() |
![]() |
| CSS3 2D 转换 | |||
| translate | ![]() |
![]() |
![]() |
| translateX | ![]() |
![]() |
![]() |
| translateY | ![]() |
![]() |
![]() |
| scale | ![]() |
![]() |
![]() |
| skew | ![]() |
![]() |
![]() |
| rotate | ![]() |
![]() |
![]() |
| transform-origin | ![]() |
![]() |
![]() |
| CSS3色彩 | |||
| rgba() | ![]() |
![]() |
![]() |
| hsla() | ![]() |
![]() |
![]() |
| HTML5 | |||
| Video | ![]() |
![]() |
![]() |
| Audio | ![]() |
![]() |
![]() |
| Web Forms | ![]() |
![]() |
![]() |
| 存储 | |||
| Web Storage – Local Storage | ![]() |
![]() |
![]() |
| Web Storage – Session Storage | ![]() |
![]() |
![]() |
| Web SQL Storage | ![]() |
![]() |
![]() |
| 图形 | |||
| Canvas | ![]() |
![]() |
(不支持文本) |
| SVG | ![]() |
![]() |
(简单支持) |
| 杂项 | |||
| Selectors API | ![]() |
![]() |
不支持某些事件,比如mouseover |
| Viewport元标签 | N/A | ![]() |
![]() |
Opera Mini 5的User Agent
Opera Mini 5的User Agent如下:
Opera/9.80 (J2ME/MIDP; Opera Mini/5.0.18635/1030; U; en) Presto/2.4.15
总结
最近做了一些在Android/Ophone平台上的页面,本来以为Android的浏览器是基于webkit内核的,可以放心大胆的使用各种CSS3的属性。但是后来发现在某些细节上表现很不好,而且Android各个版本之间的兼容性问题的确是比较严重的。而对于使用最为广泛的Opera,目前来看基本上是实现了“跨平台”了。保持浏览器在各个平台上表现的一致性,无论对开发人员还是用户,都是非常重要的,目前来看,Opera在这方面是个好榜样。
当然没有人会专门做一个只兼容Opera Mini的网站,我最近将研究一些关于移动互联网开发的内容,欢迎关注。这个世界常常让人很痛苦,但是只要认真面对,痛苦总会有快乐相随。

