首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >覆盖!对于css或jquery很重要

问覆盖!对于css或jquery很重要
EN

Stack Overflow用户
提问于 2012-08-15 09:23:25
回答 5查看 82.7K关注 0票数 56

(这是在chrome扩展中使用内容脚本)

我需要覆盖网页标记为!important的一些css属性。这个是可能的吗?

例如,如果我想去掉标记为重要的边框:

代码语言:javascript
复制
$(".someclass").css('border','none'); //does not work
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-08-15 09:31:18

这就是了:

代码语言:javascript
复制
$( '.someclass' ).each(function () {
    this.style.setProperty( 'border', 'none', 'important' );
});

现场演示: http://jsfiddle.net/Gtr54/

元素的style对象的.setProperty方法使您能够传递表示优先级的第三个参数。因此,您正在用自己的!important值覆盖!important值。据我所知,不可能用jQuery设置!important优先级,所以您唯一的选择就是内置的.setProperty方法。

票数 123
EN

Stack Overflow用户

发布于 2014-09-13 07:34:38

您还可以执行以下操作:

代码语言:javascript
复制
$(".someclass").css("cssText", "border: none !important;");
票数 51
EN

Stack Overflow用户

发布于 2017-11-15 17:02:17

这应该会有帮助。

代码语言:javascript
复制
$(".someclass").attr("style","border:none!important");

已更新,以便不会覆盖所有样式:

代码语言:javascript
复制
var existingStyles = $(".someclass").attr("style");
$(".someclass").attr("style", existingStyles+"border:none!important");
票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11962962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档