我正在构建一个使用Java EE(使用JSF和Primefaces)创建的Web应用程序,我希望覆盖Primefaces给组件的样式。是否可以将整个样式表设置为首选?就像整个文件说“重要”一样?
答案 0 :(得分:1)
如果你可以在Primefaces CSS之后声明你的CSS,你的CSS将优先。
取自CSS规范:
6.4.1级联顺序
要查找元素/属性组合的值,用户代理必须应用以下排序顺序:
查找适用于目标媒体类型的相关元素和属性的所有声明。如果关联的选择器与相关元素匹配且目标媒体与包含声明的所有@media规则上的媒体列表以及到达样式表的路径上的所有链接匹配,则声明适用。 根据重要性(正常或重要)和来源(作者,用户或用户代理)进行排序。按升序排列:
1 user agent declarations 2 user normal declarations 3 author normal declarations 4 author important declarations 5 user important declarations
根据选择器的特异性对具有相同重要性和原点的规则进行排序:更具体的选择器将覆盖更一般的选择器。伪元素和伪类分别计为普通元素和类。
最后,按指定顺序排序:如果两个声明具有相同的权重,来源和特异性,后者指定胜利。导入样式表中的声明被认为是在样式表本身中的任何声明之前。
否则,不,你必须将每个元素标记为!important
我害怕。