我想知道如何忽略父样式而使用默认样式(无)。我将以我的具体案例为例,但我非常确定这是一个一般性问题。
<style>
#elementId select {
height:1em;
}
</style>
<div id="elementId">
<select name="funTimes" style="" size="5">
<option value="test1">fish</option>
<option value="test2">eat</option>
<option value="test3">cows</option>
</select>
</div>
我不想解决这个问题的方法:
样式最好不要使用
例如,使用firebug,我可以关闭父样式,一切都很好,这就是我想要的效果。
设置样式后,可以禁用它还是必须覆盖它?
发布于 2009-06-03 19:26:31
它必须被覆盖。您可以使用:
<!-- Add a class name to override -->
<select name="funTimes" class="funTimes" size="5">
#elementId select.funTimes {
/* Override styles here */
}
确保在css样式中使用!important
标志,例如margin-top: 0px !important
What does !important mean in CSS?
您可以使用属性选择器,但由于传统浏览器不支持属性选择器(请参阅IE6等),因此最好添加一个类名
发布于 2010-05-04 05:19:49
您可以通过如下方式覆盖它来关闭它:
height:自动!重要;
发布于 2018-12-28 15:38:48
因为一次编辑,这个被放到了最上面...答案已经有点过时了,而且今天没有那么有用,因为另一个解决方案已经添加到标准中。
现在有了一个"all“速记属性。
#elementId select.funTimes {
all: initial;
}
这会将所有css属性设置为其初始值...注一些初始值是继承的;这会导致元素上仍然会发生一些格式化。
因为在将来阅读代码或审查它时需要暂停,所以不要使用它,除非你在审查过程中最容易犯错误/bug!在编辑页面时。但是很明显,如果有大量的属性需要重置,那么"all“就是最佳选择。
https://stackoverflow.com/questions/946645
复制相似问题