繁体   English   中英

如何覆盖css值?

[英]How do I override a css value?

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

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

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

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

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

#content p { color: red; }

不会被覆盖

p { color: blue; }

即使后来定义。

<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特异性的更多信

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

您可以从重置文件中删除它们 ,也可以使用“标准”默认值重新定义它们 ,例如,display具有默认值inline 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;

应该可以工作,只要你在重置它们之后重新定义它们。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM