我很难应用这样的风格!重要的我尝试过:
$("#elem").css("width", "100px !important");
这没有任何作用;不应用任何宽度样式。有没有类似jQuery的方法来应用这样的样式而不必覆盖cssText(这意味着我需要先解析它,等等)?
编辑:我应该补充一下,我有一个带有!我试图用!重要的样式内联,因此使用.width()等不会起作用,因为它会被我的外部重写!重要的风格。
此外,将覆盖上一个值的值是计算出来的,因此我不能简单地创建另一个外部样式。
我很难应用这样的风格!重要的我尝试过:
$("#elem").css("width", "100px !important");
这没有任何作用;不应用任何宽度样式。有没有类似jQuery的方法来应用这样的样式而不必覆盖cssText(这意味着我需要先解析它,等等)?
编辑:我应该补充一下,我有一个带有!我试图用!重要的样式内联,因此使用.width()等不会起作用,因为它会被我的外部重写!重要的风格。
此外,将覆盖上一个值的值是计算出来的,因此我不能简单地创建另一个外部样式。
当前回答
我们可以使用setProperty或cssText来添加!对于使用JavaScript的DOM元素来说很重要。
示例1:
elem.style.setProperty ("color", "green", "important");
示例2:
elem.style.cssText='color: red !important;'
其他回答
我想你没有添加就尝试了!重要的
内联CSS(这是JavaScript添加样式的方式)覆盖样式表CSS。我很确定,即使样式表CSS规则有这种情况!重要的
另一个问题(可能是一个愚蠢的问题,但必须要问。):您正在尝试的元素是否显示:block;或显示:内联块;?
不知道你在CSS方面的专业知识。。。内联元素的行为并不总是如您所期望的那样。
如果它不那么相关,并且由于您正在处理一个元素#elem,那么您可以将其id更改为其他元素,并根据您的意愿对其进行样式设置。。。
$('#elem').attr('id', 'cheaterId');
在CSS中:
#cheaterId { width: 100px;}
您可以这样做:
$("#elem").css("cssText", "width: 100px !important;");
使用“cssText”作为属性名,并将您希望添加到CSS中的任何内容作为其值。
可能是这样的:
隐藏物
var node = $('.selector')[0]; OR var node = document.querySelector('.selector');
设置CSS
node.style.setProperty('width', '100px', 'important');
删除CSS
node.style.removeProperty('width'); OR node.style.width = '';
我们可以使用setProperty或cssText来添加!对于使用JavaScript的DOM元素来说很重要。
示例1:
elem.style.setProperty ("color", "green", "important");
示例2:
elem.style.cssText='color: red !important;'