如何通过 jQuery 从 CSS 应用“!important”? [复制]

Posted

技术标签:

【中文标题】如何通过 jQuery 从 CSS 应用“!important”? [复制]【英文标题】:How to apply "!important" from CSS via jQuery? [duplicate] 【发布时间】:2016-08-04 13:55:15 【问题描述】:

我正在尝试将样式应用于元素并定义其重要性,如下代码:

$('div').css('height','50px !important');

但是不行,正确的方法是什么?

【问题讨论】:

最好的做法是通过构建 CSS 规则来完全避免使用 !important,以便规则的特异性足以确保在需要的地方应用它。也就是说,我标记的重复答案对于特定问题有一个可行的解决方案。 我实际上正在寻找一种解决方案,它不会为它不必要地扩展 jQuery 【参考方案1】:

如果您必须使用 JQuery 执行此操作(不推荐)。你需要像这样修改style属性;

$('div').attr('height', '50px !important');

.css 函数不会添加!important 属性。

【讨论】:

【参考方案2】:

除非您已经在其他地方使用 !important,否则您永远不需要通过 jQuery 向元素样式添加重要元素。当 jQuery 为元素添加样式时,它会将其添加到 style 属性中,这将覆盖所有以前的样式,除非它被赋予 !important。

您应该尽量避免使用 !important 并尝试写出您的样式以使其具有特异性。

如果您确实需要添加该样式来覆盖其他样式,最好的办法是添加一个具有 !important 的类。

$('div').addClass('important-height');

【讨论】:

以上是关于如何通过 jQuery 从 CSS 应用“!important”? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何同时应用 jQuery UI 效果(滑动+翻转)?

如何通过jQuery停止鼠标离开太快而缩短背景图像过渡

jQuery Mobile 过渡效果

jQuery CSS类

从 jquery ajax 成功数据中获取 css this 和 value 选择器

通过 jQuery/Javascript 添加悬停 CSS 属性