【发布时间】:2015-04-12 03:34:05
【问题描述】:
我有一个 DIV,它通过 ID 在外部样式表中应用了 CSS,例如:
<div id="myFavoriteDIVever">Stuff</div>
#myFavoriteDIVever {
display: none;
}
然后,在一个 Javascript 函数中,我将以下类设置为同一个 DIV:
document.getElementById('myFavoriteDIVever').className = 'superCoolClass';
.superCoolClass {
display: block;
}
由于某种原因,当我这样做时,DIV 未设置为显示为块。它仍然不显示在 DOM 中。但是如果我改变它,让 DIV 应用一个默认的 CSS 类来设置 display: none;然后我稍后用 Javascript 设置一个不同的 CSS 类来设置 display: block;它按预期工作并将 DIV 显示为块元素。
为什么 CSS 类会覆盖 ID CSS?因此,当我应用新的 className 时,它应该覆盖 #element 设置。没有?
【问题讨论】:
标签: javascript css