本文摘自PHP中文网,作者青灯夜游,侵删。
css属性前缀有:1、“-moz-”,代表firefox浏览器的私有属性;2、“-ms-”,代表ie浏览器的私有属性;3、“-webkit-”,代表safari、chrome浏览器的私有属性;4、“-o-”,代表Opera浏览器的私有属性。
(推荐教程:CSS视频教程)
现在主要流行的浏览器内核主要有:
Trident内核:主要代表为IE浏览器
Gecko内核:主要代表为Firefox
Presto内核:主要代表为Opera
Webkit内核:产要代表为Chrome和Safari
而这些不同内核的浏览器,CSS3属性(部分需要添加前缀的属性)对应需要添加不同的前缀,也将其称之为浏览器的私有前缀,添加上私有前缀之后的CSS3属性可以说是对应浏览器的私有属性:
Trident内核:前缀为-ms-
Gecko内核:前缀为-moz-
Presto内核:前缀为-o-
Webkit内核:前缀为-webkit-
为什么要有私有前缀呢?
因为制定HTML和CSS标准的组织W3C动作是很慢的。通常,有w3c组织成员提出一个新属性,比如说圆角border-radius,大家都觉得好,但是w3c不会为这个属性制定标准,而是要走很复杂的程序,经过很多审查。而浏览器商不愿意等那么久,他们觉得一个属性已经够成熟了,就会在浏览器中加入支持。
但是避免日后w3c公布标准时有所变更,就会加入一个私有前缀,比如-webkit-border-radius,通过这种方式来提前支持新属性,等到日后w3c公布了标准,border-radius的标准写法确立之后,再让新版的浏览器支持border-radius这种写法。
来看一个简单的示例,早期写一个圆角border-radius,需要这样写:
相关阅读 >>
vertical-align负值和margin-bottom负值的差异有哪些?
更多相关阅读请进入《css》频道 >>

Vue.js 设计与实现 基于Vue.js 3 深入解析Vue.js 设计细节
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者