【发布时间】:2013-07-03 11:42:39
【问题描述】:
我有一些代码:
$("#" + this.id).css("border-radius",this.radius + "px");
$("#" + this.id).css("-moz-border-radius",this.radius + "px");
$("#" + this.id).css("-webkit-border-radius",this.radius + "px");
我正在尝试通过使用 JSON 来应用它们(如 jQuery 的文档中所示)或完全删除供应商前缀版本来改进这样的行。
在更改元素的 CSS 属性时,jQuery 的 .css() 方法是否会自动应用任何必需的供应商前缀?
【问题讨论】:
-
你为什么不使用样式文件而不是 javascript,只需添加带有 venodrs 的类,许多扩展都添加了这样的功能。而且它更具可读性
-
您真的应该以相反的顺序编写这些 CSS 行,这样如果两个版本都存在,则标准版本会覆盖实验/供应商版本。
-
特别是在
border-radius方面,您可能无论如何都可以删除前缀;它已经标准化了足够长的时间,以至于在野外确实没有多少浏览器仍然需要前缀。见caniuse.com/#search=border-radius -
如果您不介意使用库prefix free 会有所帮助。
标签: javascript jquery css vendor-prefix