【发布时间】:2020-08-08 10:57:28
【问题描述】:
我最近遇到了这种情况,我想将 css 属性添加到类而不是元素中。
当我这样做时
$('.class_with_css').css({display:'none'});
它将样式 "display:none" 添加到当前具有类 "class_with_css" 的所有元素中。
但就我而言,在执行上述代码后,我必须将"class_with_css" 类应用于新元素,并希望保留这种样式添加。有没有办法在不调用上述函数的情况下做到这一点(例如将属性添加到 css 类本身)?
例如。
- 两个元素
<div id=1 class="abc" ></div>
<div id=2 class="abc" ></div>
- 运行代码
$('.abc').css({display:'none'});
- 元素变为:
<div id=1 class="abc" style="display: none;" ></div>
<div id=2 class="abc" style="display: none;" ></div>
- 现在我将类 abc 添加到这样的元素中
<div id=3 class="abc" ></div>
有没有办法让“abc”类保存样式而不是元素,这样第 4 步的元素也有display:none
【问题讨论】:
-
没有。没有逻辑状态知道您需要将内联样式应用于将来获得该类的元素。您应该添加一个 CSS 规则,修改该类以包含您的显示设置,而不是添加内联样式更改。
-
否则在添加类的时候也要设置内联样式设置。
标签: javascript html jquery css css-selectors