2011-12-28 70 views
1

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

+0

如果你想支持仅支持带有这些前缀的属性的浏览器,那么是的。如果没有,没有。 – 2011-12-28 07:47:03

+0

是否有人不得不每隔几个月重复一次这个问题? – BoltClock 2011-12-28 07:51:51

+3

我没有看到使用无效CSS只是为了支持一些奇怪的功能。前缀版本确实用于测试。我不使用任何形式的前缀属性,因为这些效果对于显示内容并不重要,*不应该是*。这些是奖励效果,所以浏览器是否支持它们应该没有关系。如果他们这样做,很好。如果他们不这样做,该网站仍然是完全可见的。如果这种说法不对,你做错了什么。 – animuson 2011-12-28 07:53:47

回答

2

需要考虑的一个重要问题是,如果您使用的是供应商前缀,那么您明确使用实验性功能 - 不仅这个属性会不会在您定位的浏览器的旧版本中工作,因此不应该用于任何重要的东西,但它们也可能会发生变化。你真的不应该在生产环境中使用实验性功能。

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

1

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

Css3 info

1

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

1

如果你只想支持最新的浏览器,那么没有。但是,许多公司仍在使用旧版本的Firefox或IE。因此,通过删除扩展名,即使浏览器支持这些功能,您也不会拥有这些功能。

2

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

+0

但是,这是如何回答这个问题的? – BoltClock 2011-12-28 07:57:21

+0

他在问是否使用浏览器前缀。他有很多回答说“是”,所以我给了他一种方法来使用一个属性,但保持浏览器兼容。随意删除答案,如果它不属于这里。 – sascha 2011-12-28 07:59:34

1

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

webkit-border-radius: 6px; 
-moz-border-radius:6px; 
border-radius:6px; 
相关问题