如何覆盖标记为 !important 的外部 css?

Sas*_*dey 2 html css

我在外部 css 中有这个

body {
   color: #000000;
   font: 12px Verdana !important;
   padding: 0;
   text-align: left;
}
Run Code Online (Sandbox Code Playgroud)

我想更改字体,所以我正在做:

<body style="font-size:9px ! important;">
Run Code Online (Sandbox Code Playgroud)

Har*_*ins 5

我假设您不能简单地更改外部 CSS 文件。

这种事情很难处理,你应该给那个 CSS 文件的所有者写一封居高临下的信。完成此操作后,您必须赢得特殊性之战。CSS 选择器根据哪一个最具体来应用。当使用 !important 时,它的意思是“搞砸其他任何事情的特殊性,使用我”。

然而,当针对同一元素的两个选择器都具有一个带有 !important 的属性时,特异性又会重新发挥作用(有趣吧)。现在最好避免这种类型的战争(因此最好从有问题的文件中删除这封信和重要的内容),但是您可以在样式表中执行以下操作,这是一个更具体的选择器,而不仅仅是 body 标签,并且有 !重要的。

html body { font-size:9px !important;}
Run Code Online (Sandbox Code Playgroud)

或者

* body { font-size:9px !important;}
Run Code Online (Sandbox Code Playgroud)

这种战争就像从太空中核爆尸体标签,所以要小心这带来的附带损害。

编辑:哦,顺便说一句,内联样式击败了外部样式表和内联块,例如您的样式属性,因此可以工作,但是如果您在一个包含多个页面的站点上工作,那么这种技术显然很难维护。上述方法将允许您将覆盖保留在外部样式表中。干杯。