当您有两个CSS文件时,如何覆盖某些条件?

当您有两个CSS文件时,如何覆盖某些条件?,css,stylesheet,overwrite,Css,Stylesheet,Overwrite,我有一个叫做index.html和about.html的页面。我有一个名为main.css的css文件(由于常见的css样式,它在每个页面上都使用)和另一个名为about.css的css文件(它保存about.html特有的样式) 在main.css上,我有一个css块: html, body, form { margin: 0px; padding: 0px; height: 100%; } 这将在about.html上创建问题。在about.css中,我该怎么做才能

我有一个叫做index.html和about.html的页面。我有一个名为main.css的css文件(由于常见的css样式,它在每个页面上都使用)和另一个名为about.css的css文件(它保存about.html特有的样式)

在main.css上,我有一个css块:

html, body, form {
    margin: 0px;
    padding: 0px;
    height: 100%;
}
这将在about.html上创建问题。在about.css中,我该怎么做才能使页面上的html、body和form不使用margin:0px;,填充:0px;,身高:100%

问题:

从本质上讲,如何防止html、正文和表单{ 边际:0px; 填充:0px; 身高:100%; }
从about.html上显示?我可以使用哪些值使about.html上基本上不存在边距、填充和高度

如果在加载公共CSS样式表后编写任何规则,它将覆盖公共样式

e、 g


html、正文、表单{
填充:12px;
背景:蓝色;
边界:3px;
/*设置您想要的任何属性*/
}
注意我已经显示了内联和链接的属性


附注2。就因为你能做到这一点,对不断重置属性感到厌倦。。。您希望尽可能减少这种情况。

如果在加载公共CSS样式表后编写任何规则,它将覆盖公共样式

e、 g


html、正文、表单{
填充:12px;
背景:蓝色;
边界:3px;
/*设置您想要的任何属性*/
}
注意我已经显示了内联和链接的属性


附注2。就因为你能做到这一点,对不断重置属性感到厌倦。。。您希望尽可能减少这种情况。

在HTML标记上添加一个类,然后尝试以下CSS:

html.class,html.class body,html.class form {
    /*Set whatever properties you want*/
} 

在HTML标记上添加一个类,然后尝试以下CSS:

html.class,html.class body,html.class form {
    /*Set whatever properties you want*/
} 

这里有几件事在起作用。首先,CSS是级联的——这意味着如果一个样式在另一个样式之后使用相同的选择器存在,则后者将优先。如果在DOM中加载main.css之后的样式表,则具有相同选择器的任何样式(与main.css中的选择器完全相同)都将相互覆盖:

<link href="blah/main.css" ... />
<link href="blah/overwrite.css" ... />
即使第二组样式在第一组样式之后,第一组样式仍将优先,因为它更具体地针对元素

!重要的
修饰符实际上只适用于全局更改,这就是为什么人们告诉您要小心使用它-因为如果一切都是
!重要信息
,没有任何东西是安全的

在您的特定情况下:

尝试在about us页面html元素上添加一个类,如下所示:

<html class="about-us">

这利用了选择器的特殊性,并覆盖了样式。

这里有几件事要做。首先,CSS是级联的——这意味着如果一个样式在另一个样式之后使用相同的选择器存在,则后者将优先。如果在DOM中加载main.css之后的样式表,则具有相同选择器的任何样式(与main.css中的选择器完全相同)都将相互覆盖:

<link href="blah/main.css" ... />
<link href="blah/overwrite.css" ... />
即使第二组样式在第一组样式之后,第一组样式仍将优先,因为它更具体地针对元素

!重要的
修饰符实际上只适用于全局更改,这就是为什么人们告诉您要小心使用它-因为如果一切都是
!重要信息
,没有任何东西是安全的

在您的特定情况下:

尝试在about us页面html元素上添加一个类,如下所示:

<html class="about-us">

这将利用选择器的特殊性并覆盖样式。

您不能删除样式,但只要在主样式表之后加载“about.css”样式表,就可以覆盖它


虽然一旦定义了样式,就无法摆脱它,但有时可以将值重置为其默认值。例如,“margin:auto;”将导致页边距恢复为html、正文和表单的正常值。

您不能删除样式,但只要在主样式表之后加载“about.css”样式表,就可以覆盖它


虽然一旦定义了样式,就无法摆脱它,但有时可以将值重置为其默认值。例如,“margin:auto;”将使页边距恢复为html、正文和表单的正常值。

您可以向正文添加一个
id
,使用特定的css类将新元素添加到新元素中page@krishna我知道。我只是问,如何摆脱这些财产与!重要,是的,用!重要的是要覆盖@starbucks@eshelborn我的问题是,我应该使用哪些值来防止它们影响about.html?我是否将它们设置为“无”?我试过了,但没有成功。你可以在你的身体上添加一个
id
,在新的身体里使用特定的css类来添加新元素page@krishna我知道。我只是问,如何摆脱这些财产与!重要,是的,用!重要的是要覆盖@starbucks@eshelborn我的问题是,我应该使用哪些值来防止它们影响about.html?我是否将它们设置为“无”?我试过了,但没用。对不起,我应该提到,我不能使用内联css。对不起,我应该提到,我不能使用内联css。谢谢,但我的问题是使用什么值来防止它们影响about.html?那么,我可以在边距、高度和填充中使用什么值,以便在启用about.css时将其设置为none?谢谢,但我的问题是使用什么值来防止它们影响about.html?那么,我可以在边距、高度和填充中使用什么值,以便在启用about.css时将其设置为none?