【发布时间】:2011-12-13 09:18:36
【问题描述】:
我想这个问题已经有一段时间了。为什么不同的浏览器只支持CSS的border-radius属性,如果它带有自己的特殊前缀。我不明白我为什么要写这个:
/* For Firefox and other Gecko browsers */
-moz-border-radius: 5px;
/* For Chrome/Safari and other Webkit browsers */
-webkit-border-radius: 5px;
/* For others */
border-radius: 5px;
当我可以写这个时:
border-radius: 5px;
是否有理由要求我编写前缀?为什么浏览器不都只支持border-radius 属性?这对我来说没有意义,为什么浏览器开发人员决定都拥有不同的属性,这只会让我的生活变得更艰难。其背后是否有技术或法律原因?
【问题讨论】:
-
因为它们本身不支持标准术语?顺便说一句,你正在向合唱团布道。
-
我更想知道这一切背后是否有技术或法律原因。
-
这只是关于标准合规性。
border-radius是 CSS3 的一部分,较新的 Webkit 浏览器支持 CSS3,因此它们不再需要-webkit前缀。 -
在 css3 之前没有标准的“border-radius 属性”,所以浏览器不能只支持border-radius 属性。
-
@S0lder:这是技术问题。正如 Jared 已经说过的,他们不支持标准术语。通常这是因为它们不完全支持该标准。你已经给出了一个非常基本的例子,它看起来完全一样,但是如果你在做一些更复杂的事情,那么它就会出现。
标签: css browser webkit cross-browser gecko