Jsf 如何覆盖Primefaces默认CSS?

Jsf 如何覆盖Primefaces默认CSS?,jsf,primefaces,Jsf,Primefaces,我正试图覆盖Primefaces主题,我的css在file1.xhtml中是这样的 .ui-menubar { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px!important; background: #D4C5F7!important; } 在File2.xhtml中,我使用了这个css .ui-menubar { font-family: Verdana, Aria

我正试图覆盖Primefaces主题,我的cssfile1.xhtml中是这样的

.ui-menubar {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 11px!important;
    background: #D4C5F7!important;

}
在File2.xhtml中,我使用了这个css

.ui-menubar {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 14px;
    background: #557FFF!important;
}
但当我在浏览器中检查时,它在两个位置都显示file1css,我在这里做错了什么? File1.xhtmlFile2.xhtml都包含在File3.xhtml文件中

看看代码是什么样子

<p:layoutUnit position="north" size="100" id="north"
                resizable="false" closable="false" style="border:none">
                <ui:insert name="north">

                    <ui:include src="/template/top_header.xhtml" />

                    <ui:include src="/template/header_menu.xhtml" />
                </ui:insert>
        </p:layoutUnit>

CSS作为一个整体应用于HTML文档。CSS不是按每个包含文件应用的,或者像您所想的那样。CSS不在Web服务器中运行。CSS在webbrowser中运行,webbrowser解析从JSF检索的HTML输出并将其可视化地呈现给最终用户之后

如果要为特定组件指定与默认组件不同的样式,则应为其指定类名

<x:someComponent styleClass="someClass">
(不过,给它起个更合理的名字,例如
leftMenu
topMenu
,等等)



与具体问题无关,
!重要信息
在这里被用作解决方法,而不是解决方案。去掉它,仔细阅读下面的答案,包括它的所有链接,以了解如何正确覆盖PrimeFaces默认CSS:

CSS应用于整个HTML文档。CSS不是按每个包含文件应用的,或者像您所想的那样。CSS不在Web服务器中运行。CSS在webbrowser中运行,webbrowser解析从JSF检索的HTML输出并将其可视化地呈现给最终用户之后

如果要为特定组件指定与默认组件不同的样式,则应为其指定类名

<x:someComponent styleClass="someClass">
(不过,给它起个更合理的名字,例如
leftMenu
topMenu
,等等)



与具体问题无关,
!重要信息
在这里被用作解决方法,而不是解决方案。扔掉它,仔细阅读下面的答案,包括它的所有链接,为了了解如何正确覆盖PrimeFaces默认CSS:

您可以提供一个xhtml文件不工作的基本示例吗?我在LayoutUnit中使用两个xhtml。您可以提供一个xhtml文件不工作的基本示例吗?我在layoutunitAvoid中使用两个xhtml
!重要信息
不惜一切代价。@Mindwin:另请参见答案底部的链接以获取指导。@BalusC我是根据您的建议尝试的。'ui按钮文本。headerButton{…}'并在组件中添加了'styleClass=“headerButton”但它没有工作,我已经编写了所有按钮按钮CSS,就像我为'.UI按钮文本'所做的那样,那么它就可以工作了。在<>代码> UI按钮文本< /代码>和<代码>之间删除空白。再看看我的答案,我强烈建议你独立于JSF,单独学习CSS。避免
!重要信息
不惜一切代价。@Mindwin:另请参见答案底部的链接以获取指导。@BalusC我是根据您的建议尝试的。'ui按钮文本。headerButton{…}'并在组件中添加了'styleClass=“headerButton”但它没有工作,我已经编写了所有按钮按钮CSS,就像我为'.UI按钮文本'所做的那样,那么它就可以工作了。在<>代码> UI按钮文本< /代码>和<代码>之间删除空白。再看一次我的答案,我强烈建议开始单独学习CSS,独立于JSF。