Cap*_*ack 5 css firefox jquery
见小提琴:http://jsfiddle.net/csaltyj/P2sLa/
在Chrome中,这种方法很好,但在Firefox中却没有,并产生Javascript警告.我知道这里不需要!important,但我有一个需要的大型项目,这导致Firefox崩溃.有任何想法吗?
rub*_*iii 11
搜索"jquery css important"提出了一篇解释"问题"的博客文章.
我会发布一些额外的信息,但总而言之,这是你的解决方案:
$('#set-bg').click(function() {
$('#box').css('cssText', 'background: blue !important');
});
Run Code Online (Sandbox Code Playgroud)
作者指出:
这不是一个错误,而是大多数浏览器不承认需要的东西,因为内联样式已经具有除用户定义的优先级之外的最高优先级.(除非您不希望您的用户更改他们查看您网站的方式).
请注意,使用cssText有一个缺点,您可能需要考虑
使用cssRules:
cssText将覆盖该特定元素的css.因此,您将不得不重新声明该特定元素的规则.
尽管如此.请听听作者的总结:
在CSS中使用!important是不可取的,因为它可能会破坏您的Web可用性.此外,没有理由要使用!important,因为内联样式已经具有最高优先级.因此,在考虑可能为用户带来的后果后,您可能需要重新考虑在脚本上应用!important.
| 归档时间: |
|
| 查看次数: |
6723 次 |
| 最近记录: |