css ms是什么意思,CSS 3中-webkit-, -moz-, -o-, -ms-这些私有前缀的含义和兼容

css3作为页面样式的表现语言,增加了很多新的属性,但是部分css3属性在一些浏览器上还处于试验阶段,所以为了有效的显示css3的样式,对应不同的浏览器内核需要不同的前缀声明,例如:

-moz- :Firefox,GEcko引擎

-webkit-: Safari和Chrome,Webkit引擎

-o- :Opera(早期),Presto引擎,后改为Webkit引擎

-ms- :Internet Explorer,Trident引擎

使用这些前缀,才能保证css3的属性在特定浏览器渲染引擎下生效。统一引擎一般不识别其它引擎的前缀,目前移动端的浏览器相对比较统一,都是采用的webkit引擎,所以如果我们只需要兼容移动端,只需要带-webkit-前缀即可。

在使用css3新属性的时候,一般需要把带有前缀的属性放于前面,把不带前缀的版本放到最后一行:

1 -webkit-box-shadow: 0 5px 5px rgba(0, 0, 0, .5);2 -moz-box-shadow: 0 5px 5px rgba(0, 0, 0, .5);3 -o-box-shadow: 0 5px 5px rgba(0, 0, 0, .5);4 box-shadow: 0 5px 5px rgba(0, 0, 0, .5);

随着浏览器的升级,目前大多数新版本浏览器都已经支持不带前缀的写法了,所以带前缀只是为了兼容低版本,不带前端的才是标准属性。

那么如果想移除这些前缀,同时又满足兼容的办法也是有的。我们可以选择Autoprefixer工具,一个以最好的方式处理浏览器前缀的后处理插件​​,无论你是用webpack、gulp、grunt还是fis,它都能完美配合。

使用Autoprefixer你可以完全忘记有CSS前缀这东西,尽管按照最新的W3C规范来正常书写你的CSS而不需要浏览器前缀。像这样:

1 a {2 display: flex;3 }

Autoprefixer使用一个数据库根据当前浏览器的普及度以及属性支持提供给你前缀,输出:

1 a {2 display: -webkit-box;3 display: -webkit-flex;4 display: -ms-flexbox;5 display: flex6 }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值