iOS 5中safari带来的新特性
作者:神飞 mingelz
分享到:
随着iPhone4s的发布,iOS5也正是发布了,增加了很多很有用的新特性,不过对于前端开发者来说,最关心的还是浏览器,让我们来看一下苹果为iOS5中的safari新增了哪些新特性吧。
CSS
- 终于支持position:fixed了;
- 支持overflow:scroll了,通过-webkit-overflow-scrolling: touch;来实现:
selector{
overflow:scroll;
-webkit-overflow-scrolling: touch;
}
- CSS3 gradient语法更新,将-webkit-gradient(linear|radial)拆分为,-webkit-linear-gradient和-webkit-radial-gradient。PS,年初发表过一篇关于《webkit对于CSS3渐变样式语法的更新》的文章,看来现在就剩下android的webkit了。
HTML5
- 新的兼容HTML5的解释器(parser)
- 表单增强新增时间类型date, datetime, month, time和range支持,好赞:
同时iOS5中safari也增强了number类型的input的验证功能。
- 支持web workers ,传说iOS3中短暂出现过web workers,不过后来消失了,现在又回来了。。。
- 增强ECMAScript5,测试结果显示支持情况跟上PC版的Safari 5.1了。
- 终于支持contenteditable属性
- 支持async script
其它特性:
- HTTP Pipelining支持,Android中webkit和Opera都支持了,Mobile Safari也跟进了。想要具体了解的可以看下这里和这里。
- inline SVG
- UIWebView 和主屏幕webapp升级到Nitro引擎(看下面的测试数据)
- 支持MathML
- CSS和其它文件不再并行下载,这貌似挺悲剧的,不过我很感兴趣这和HTTP Pipelining的关系。。。
- GPU硬件加速,虽然这个之前也有,但是效果并不是很显著,现在,在微软用于标榜IE9硬件加速的测试中,iOS达到了40FPS,而Windows Phone 7是24FPS,Nexus 2则只有可怜的10FPS——iOS4中只有2FPS。。。
一些测试数据
- HTMLTest:267分,iOS 4.3中是206分
- Sunspider JS Benchmark,JS性能测试:
可见首页webapp是用上Nitro引擎了,但是悲剧的是UIWebView的性能却下降了。
PS:中间的home screen page,@Jeanne 美女说是主屏幕,不过我的理解就是webapp,如有更好的翻译欢迎讨论。
总结
可以看出iOS 5中Safari改进还是蛮大的,而从最后webapp和UIWebView的性能测试来看,或许苹果更加重视了webapp,而不太赞成UIWebView+webapp的这种混搭的方式,虽然很多流行的app都是这种实现,比如著名的PhoneGap框架和Facebook/twitter等流行的在国内不能用的APP。。
标签:gradient,iOS,支持,特性,safari,webkit,webapp From: https://blog.51cto.com/u_16112859/6279770