我们是不是必须再使用非标准/浏览器特定的 CSS 供应商前缀?

Posted

技术标签:

【中文标题】我们是不是必须再使用非标准/浏览器特定的 CSS 供应商前缀?【英文标题】:Do we have to use non-standard/browser specific CSS vendor prefixes anymore?我们是否必须再使用非标准/浏览器特定的 CSS 供应商前缀? 【发布时间】:2012-03-13 04:42:21 【问题描述】:

鉴于我并不真正关心向后兼容性(我正在探索基于 CSS3 和 html5 的设计,而不是依赖于图形等)使用 css 有什么好处,例如:

-moz-box-shadow:    3px 3px 5px 6px #ccc;
-webkit-box-shadow: 3px 3px 5px 6px #ccc;

只是使用:

box-shadow: 3px 3px 5px 6px #ccc;

后者似乎在大多数现代浏览器中都能正常工作(除了显而易见的!:p 看着你的 IE!虽然我假设它可能在 IE9 中工作,但我无法测试,因为我在 Mac 上瞬间)。

我在看东西吗?我们是否需要使用上面的浏览器特定代码?还是所有浏览器都在朝着支持标准的方向发展?

【问题讨论】:

***.com/questions/9211602/… ***.com/questions/7261208/… ***.com/questions/7757622/… 的可能重复项 我喜欢你完全避免使用术语“供应商前缀”并将其称为非标准 CSS,因为供应商前缀非标准 CSS :) 是的,IE9支持不带前缀的box-shadow 属性。 @boltclock - 哈哈!我不知道他们是这样称呼的!我想不出该怎么称呼它,这可能是我在 t'internets 上也找不到任何信息的原因。 :p 感谢您的链接 【参考方案1】:

这实际上取决于您想要完全支持哪些功能和哪些浏览器。即使是现在,一些浏览器也落后了。

这里有一个非常棒的指南:http://caniuse.com/

【讨论】:

哇,很棒的网站!虽然对搜索功能感到羞耻!哈哈,只是玩弄它,不得不按大约 80 次才能回到这篇文章!【参考方案2】:

所有浏览器通常都转向标准支持。

有两个问题

    许多可供我们使用的 CSS3 规则仍在审查中 - 即尚未成为任何标准的一部分。 有些人坚持使用旧版本的浏览器,可能不支持无前缀规则。

出于这两个原因,我们继续在样式表中使用供应商前缀的 CSS 规则。

【讨论】:

嗯,很公平。但是,如果您不介意不支持旧版浏览器,就没有理由将它们排除在外?在我工作的地方,人们要么不支持任何东西(ie6/ie7),要么处于领先地位。也总是有优雅的退化。 :) 只是想尽可能减少 http 请求和图像等。 :)【参考方案3】:

您现在唯一需要的前缀是用于 chrome 和 safari 支持的 -webkit。 -webkit-animation、-webkit-font-feature-settings、显示:-webkit-flex、-webkit-filter等需要Webkit。

-ms、-o 和 -moz 为甚至他们自己的公司已经停止支持的浏览器提供支持。

【讨论】:

以上是关于我们是不是必须再使用非标准/浏览器特定的 CSS 供应商前缀?的主要内容,如果未能解决你的问题,请参考以下文章

前端面试总结(Html)

如何仅为特定的 IE 浏览器设置 CSS?

浏览器标准模式与怪异模式的区别

标准模式(严格模式)和怪异模式相关问题总结

双正斜杠是不是指示 IE 使用特定的 css?

使用 CSS 隐藏动画 GIF 是不是可以节省浏览器资源?