Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 重写CSS类?_Html_Css - Fatal编程技术网

Html 重写CSS类?

Html 重写CSS类?,html,css,Html,Css,我在模板文件的head或中添加了一个css文件,如下所示 <link rel="stylesheet" type="text/css" href="../resources/css/style.css" /> 我必须这样使用 .body-main{ width:90%; float:left;display: inline-block;} #body-main{ width:90%; float:left;display: inline-block;} 创建另一个文件并使用的

我在模板文件的
head
中添加了一个css文件,如下所示

<link rel="stylesheet" type="text/css" href="../resources/css/style.css" />
我必须这样使用

 .body-main{ width:90%; float:left;display: inline-block;}
#body-main{ width:90%; float:left;display: inline-block;}
创建另一个文件并使用
的一种方法!重要信息
那么它可以工作,但我不想使用
!重要信息
,有人能建议其他方法吗

我正在使用JSF/Facelet模板方法创建页面

最重要的是,这里的规则是

在特殊性相等的情况下,CSS中找到的最新声明将应用于元素


级联样式表最重要的核心特性之一是级联

由于级联,应用于元素的后续规则将始终覆盖应用于同一元素的早期规则

因此,如果你写:

.body-main {width: 800px; float: left; display: inline-block;}

.body-main {width: 90%;}

.body-main {width: 80%;}

.body-main {width: 70%;}
然后,具有
class=“body main”
的元素的宽度将为
70%


无论您在级联中为给定元素声明了多少条规则,该元素的级联中的最后一条规则将应用于该元素。

更好的解决方案是为具有主体类和
使用id选择器编写css,它将覆盖样式

正如@Allen在他的回答中提到的,我尝试在相同的CSS文件中添加CSS类,如下所示

 .body-main{ width:90%; float:left;display: inline-block;}
#body-main{ width:90%; float:left;display: inline-block;}
以前我用的是

<div class="body-main">
.....
.....
.....
</div>
<div id="body-main">
.....
.....
.....
</div>

.....
.....
.....
现在我正在使用

<div class="body-main">
.....
.....
.....
</div>
<div id="body-main">
.....
.....
.....
</div>

.....
.....
.....

现在工作正常。

确保覆盖的css低于原始css,并且遵循相同的层次结构。那你就不需要了!重要的是,在没有
的情况下,它应该可以工作!重要信息
只要覆盖规则是在原始规则之后定义的,并且/或者在其选择器中有更多的特殊性。那么,我必须在CSS文件或jsp/jsf/html页面中编写该规则吗?第二个问题是,我必须创建另一个css文件来编写此规则,因为对于某些页面,我想对新页面使用以前的css类,但我必须覆盖css。谢谢您的解决方案worked@Allen:许多这类基本问题在堆栈溢出中都有“重复项”。我理解,标记为复制不会给您声誉点数,但它会保持堆栈溢出“干净”。所以请下次考虑一下consideration@Kukeltje如果你说这是一个获得更多声誉的把戏,我想你在Stackoverflow的早期也尝试过这个把戏来获得声誉:)不,这不是一个真正的把戏,但是新手通常不知道标记为复制品的可能性。是的,寻找复制品的动机很低,所以我认为人们倾向于回答这个问题。在国际海事组织,如果一个人第一个标记一个复制品,并且最终被其他人认可,那么他应该获得5个声誉。没有必要像这样“回答”。如果你认为这些信息是相关的,建议对接受的答案进行编辑。事实上,这里最好的答案是关于专一性的!这是应该获得的基本css知识。中还有关于id或类选择器是否更具体的信息。