如何覆盖css值?

时间:2010-11-10 03:56:54

标签: css

我对css了解不多,所以我不得不问。我有一个css文件,我相信重置值。我有另一个我想要的所有值的css文件。我可以看到重置文件正在覆盖td标记。

display: table-cell;
vertical-align: inherit;

如何阻止这种情况发生?这些是正在使用的值。我没有具体定义这些属性,因为我不知道该用什么值。有没有办法只是覆盖这些重置值?

4 个答案:

答案 0 :(得分:3)

您只需要在代码中使用覆盖而不是重置。 CSS的顺序很重要,你的链接标签对外部样式表的顺序也很重要。

您还需要确保覆盖相同或更具体。

#content p { color: red; }

不会覆盖

p { color: blue; }

即使稍后定义。

答案 1 :(得分:3)

<style type="text/css">
div#styles { color : red; }
.override { color : blue!important; }
</style>    

<div id="styles">
<div class="override">Content</div>
</div>

这是覆盖CSS特异性的“!important”属性。明智地使用它,知道它甚至会覆盖用户创建的样式表(出于可访问性原因,它可能存在。)

您可以阅读有关CSS specificity here的更多信息。

答案 2 :(得分:0)

只需从重置文件中删除这些定义即可。但实际上,你不想这样做。为什么你不能把它们留在那里?它是重置文件的一部分,因为这些值是正确的,并做正确的事情。

答案 3 :(得分:0)

您可以从重置文件中删除,或使用“标准”默认值重新定义,例如display的内联http://www.w3schools.com/css/pr_class_display.asp默认值,vertical-align的默认值为http://www.w3schools.com/css/pr_pos_vertical-align.asp,如下所示:

display: inline;
vertical-align: baseline;

应该有效,只要您在之后重新定义它们就可以重置它们。