CSS 前缀
主流浏览器引擎前缀:
- -webkit- (谷歌,Safari,新版Opera浏览器,以及几乎所有iOS系统中的浏览器(包括 iOS 系统中的火狐浏览器);基本上所有基于WebKit 内核的浏览器)
- -moz- (火狐浏览器)
- -o- (旧版Opera浏览器)
- -ms- (IE浏览器 和 Edge浏览器)
示例:
css
-webkit-transition: all 4s ease;
-moz-transition: all 4s ease;
-ms-transition: all 4s ease;
-o-transition: all 4s ease;
transition: all 4s ease;API 前缀
过去,浏览器引擎也使用前缀修饰实验性质的API。如果整个接口都是实验性的,前缀修饰的就是接口名(但不包括其中的属性或者方法)。如果将一个实验性的接口或者方法添加到一个标准化的接口中,这个新增的接口或者方法被前缀修饰。
接口前缀
需要使用大写的前缀修饰接口名:
- WebKit (谷歌, Safari, 新版Opera浏览器, 以及几乎所有iOS系统中的浏览器(包括iOS 系统中的火狐浏览器); 简单的说,所有基于WebKit 内核的浏览器)
- Moz (火狐浏览器)
- O (旧版Opera浏览器)
- MS (IE浏览器 和 Edge浏览器)
属性和方法前缀
需要使用小写的前缀修饰属性或者方法
- webkit (谷歌, Safari, 新版Opera浏览器, 以及几乎所有iOS系统中的浏览器(包括iOS 系统中的火狐浏览器); 简单的说,所有基于WebKit 内核的浏览器)
- moz (火狐浏览器)
- o (旧版Opera浏览器等
- ms (IE浏览器 和 Edge浏览器)
示例:
js
var requestAnimationFrame = window.requestAnimationFrame ||
window.mozRequestAnimationFrame ||
window.webkitRequestAnimationFrame ||
window.oRequestAnimationFrame ||
window.msRequestAnimationFrame;