【问题标题】:CSS3: Do we still need to use browser prefixes?CSS3:我们还需要使用浏览器前缀吗?
【发布时间】:2011-12-28 07:46:01
【问题描述】:

我们是否还需要为 css3 属性使用浏览器前缀,例如 -moz-box-shadow-moz-transition: all 0.3s ease-out; 等?

【问题讨论】:

  • 如果您想支持只支持带有这些前缀的属性的浏览器,那么可以。如果没有,没有。
  • 有人需要每隔几个月重复一次这个问题吗?
  • 我看不出使用无效的 CSS 来支持一些奇怪的功能有什么意义。带前缀的版本实际上是用于测试的。我不使用任何形式的前缀属性,因为这些效果对于内容的显示根本不重要,而且不应该如此。这些是附加效果,因此浏览器是否支持它们并不重要。如果他们这样做,那就太好了。如果他们不这样做,该网站仍然是完全可见的。如果该陈述不正确,则说明您做错了。
  • @animuson - 我们中的一些人希望我们的网站在尽可能多的浏览器中看起来最好。这意味着在某些情况下使用前缀属性。如果你愿意,你可以高高在上,但如果你想这样做,你只是放弃了许多浏览器的功能——你的选择。

标签: css


【解决方案1】:

需要考虑的重要一点是,如果您使用供应商前缀,那么您显然使用的是实验性功能 - 此属性不仅在您所针对的旧版本浏览器中不起作用,因此也不应该用于任何必要的事情,但它们也可能会发生变化。您真的不应该在生产环境中使用实验性功能。

要回答您的问题,如果您想定位仅支持 CSS 属性的供应商前缀版本的浏览器,那么是的,您确实需要这样做。但是,如果您也包含它的非供应商前缀版本,那么所有浏览器最终都会支持该声明。

【讨论】:

    【解决方案2】:

    在某人的博客上找到entry,我认为它很有用。您可以使用 Javascript 使其与所有浏览器兼容,而无需为每个浏览器编写 CSS 属性

    【讨论】:

    • 但这如何回答这个问题?
    • 他在问是否使用浏览器前缀。他有很多回答说“是”,所以我给了他一种使用单个属性但保持浏览器兼容的方法。如果答案不属于这里,请随意删除。
    【解决方案3】:

    现在,是的。由于并非所有属性都在标准中设置,因此并非所有浏览器或以不同方式支持某些属性。

    Css3 info

    【讨论】:

      【解决方案4】:

      是的(此时)。由于现代浏览器还不支持同一组 CSS3 效果,因此仍然需要前缀。

      【讨论】:

        【解决方案5】:

        如果你只想支持最新的浏览器,那就不行。然而,许多公司仍在使用旧版本的 Firefox 或 IE。因此,即使浏览器支持这些扩展,您也不会拥有这些扩展。

        【讨论】:

          【解决方案6】:

          重要的一点是确保在其他规则之后使用“正确”的 CSS3 规则,这样浏览器将在该规则可用时使用它。例如:

          webkit-border-radius: 6px; 
          -moz-border-radius:6px;
          border-radius:6px;
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2013-12-30
            • 2010-09-24
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2019-03-18
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多