一、移动端浏览器内核区别
全球仅有四大浏览器内: IE(Trident), FireFox(Gecko), Google&Safari(Webkit--KDE开源内核), Opera(Presto); 其他都是基于Webkit的二次开发
Android手机上面的浏览器内核都是基于webkit的二次开发; 而iOS上面的都是基于Safari优化功能和自制UI; WP7上面的都是基于Trident开发的; 封闭式系统不允许系统自带的浏览器内核以外的浏览器内核进入
目前,移动设备浏览器上常用的内核有Webkit,Blink,Trident,Gecko等,其中iPhone和iPad等苹果iOS平台主要是WebKit,Android 4.4之前的Android系统浏览器内核是WebKit,Android4.4系统浏览器切换到了Chromium(内核是Webkit的分支Blink),Windows Phone 8系统浏览器内核是Trident
-
微信内置浏览器内核问题
- iOS微信基于原系统浏览器
- Android微信基于QQ浏览器的X5内核
二、浏览器对ES6的支持情况
- 桌面版浏览器
- Chrome:51 版起便可以支持 97% 的 ES6 新特性。
- Firefox:53 版起便可以支持 97% 的 ES6 新特性。
- Safari:10 版起便可以支持 99% 的 ES6 新特性。
- IE:Edge 15可以支持 96% 的 ES6 新特性。Edge 14 可以支持 93% 的 ES6 新特性。(IE7~11 基本不支持 ES6)
- 移动端浏览器
- iOS:10.0 版起便可以支持 99% 的 ES6 新特性。
- Android:基本不支持 ES6 新特性(5.1 仅支持 25%)
- 服务器
- Node.js:6.5 版起便可以支持 97% 的 ES6 新特性。(6.0 支持 92%)
- 保证浏览器的兼容
- 针对 ES6 的兼容性问题,很多团队为此开发出了多种语法解析转换工具,把我们写的 ES6 语法转换成 ES5,相当于在 ES6 和浏览器之间做了一个翻译官。比较通用的工具方案有 babel,jsx,traceur,es6-shim 等。
三、浏览器对HTML5和CSS3的支持情况
基本支持HTML5和CSS3, 就是部分低版本浏览器(比如移动端iOS低版本的)不支持flex以及对video的兼容情况
-
最近做的视频开发的比较多, 遇到的坑也很多, 网上找到一些方法, 学习了一下, 这里分享下
四、浏览器对flash的支持情况
- 桌面浏览器利用自身插件可以支持flash;
- 移动端浏览器, iOS全面不支持flash, 安卓端部分浏览器支持flash, 因为浏览器内置了flash播放器, 而微信内置浏览器不支持flash