CSS3 的前缀不是必需的吗?
Posted
技术标签:
【中文标题】CSS3 的前缀不是必需的吗?【英文标题】:Prefix for CSS3 isn't required? 【发布时间】:2013-08-09 22:28:11 【问题描述】:我正忙于使用最新的 Chrome 浏览我的网站。
无缘无故,我刚开始使用Inspect Element
搜索代码。
在看到一些罕见的事件后,我向下滚动。 -moz-
-o-
-ms-
-webkit-
都被交叉了,除了 box-shadow
本身。每一个 CSS3 元素都会发生同样的情况,例如渐变、文本阴影、过渡、框阴影。
我想知道它是否仅适用于 Chrome。我将代码部分放在有前缀的地方,在/*
和*/
之间。然后开始在浏览器下面命名,使用127.0.0.1
,这一切都给了我想要的结果,没有任何前缀。
谷歌浏览器 28.0.1500.95
-webkit-
Internet Explorer 10.0.9200
-ms-
Mozilla Firefox 23.0
-moz-
Opera 15.0.1147.153
-o-
为什么每个人都一直告诉我,我需要这样做?什么时候所有浏览器都支持? (我的意思是,所有这 4 个前缀都适用于所有浏览器)。
【问题讨论】:
Chrome 不再使用 webkit(从 v28 开始) 这意味着我应该开始阅读每次下载的文档,因为我不知道。 别担心,我只是重新阅读,我的评论并不能真正帮助回答您的问题!我认为答案应该有所帮助 - 如果您想支持旧版本的 chrome 等,请使用前缀。 【参考方案1】:根据 caniuse.com(第一个 google 搜索结果),供应商前缀将支持一些过时版本的 Mozilla 和基于 Webkit 的浏览器。
链接:http://caniuse.com/css-boxshadow
【讨论】:
具体是哪个查询? "box-shadow 浏览器支持"【参考方案2】:当前版本的 Chrome/Opera 使用已弃用供应商前缀的渲染引擎。所以从技术上讲,你至少不需要再使用它们了。但是,由于很多人仍在使用旧版本以及其他 webkit 浏览器,因此最好仍然包含它们 :)
【讨论】:
好的,但是呢?为什么浏览器需要一个前缀,他们不能只是挂在相同的 CSS3 规则上,内容还是一样的。 之所以使用它们是因为生产浏览器的软件供应商希望实现 CSS 规范预发布的新功能。使用供应商前缀可确保以后页面的功能不会发生任何变化。以上是关于CSS3 的前缀不是必需的吗?的主要内容,如果未能解决你的问题,请参考以下文章