2024-02-07 08:00:06

如何覆盖!重要?

我已经创建了一个自定义样式表,它覆盖了我的Wordpress模板的原始CSS。然而,在我的日历页面上,原始CSS有每个表单元格的高度设置!重要声明:

td {height: 100px !important}

有什么办法能让我无视它吗?


当前回答

使用JavaScript重写

$('.mytable td').attr('style', 'display: none !important');

为我工作。

其他回答

在任何情况下,您都可以使用max-height覆盖height。

除了覆盖由style属性设置的样式外,只有当样式表中的选择器具有冲突的特异性时,才应该使用!important。

但是,即使您有冲突的专一性,最好为异常创建一个更专一的选择器。在你的情况下,最好在你的HTML中有一个类,你可以用它来创建一个不需要!important规则的更特定的选择器。

td.a-semantic-class-name { height: 100px; }

我个人从未在样式表中使用!important。记住,CSS中的C表示级联。使用!important会破坏这个。

使用JavaScript重写

$('.mytable td').attr('style', 'display: none !important');

为我工作。

我发现了一个很酷的技巧:不。 如果上面的方法对你没有帮助,那么试试这个:

.page-width:not(.anything) {

}

我想补充一个没有提到的答案,因为我尝试了以上所有的方法都没有效果。我的具体情况是我正在使用semantic-ui,它在元素上内置了!important属性(非常烦人)。我尝试了一切重写它,只有在最后做了一件事(使用jquery)。具体如下:

$('.active').css('cssText', 'border-radius: 0px !important');