mer*_*esi 12 css jsf primefaces
简单地说,我试图通过FireBug在生成的HTML中查看组件的名称,之后我在JSF项目中手动定义的css中更改它,但无法覆盖PrimeFaces的CSS定义.提前感谢任何想法.
Rav*_*avi 14
如果使用primefaces 2.2.1,请使用h:outputStylesheet标记并将其包含在h:body中,而不是h:head中,以覆盖primefaces样式表,与h:outputScript相同.
例:
<h:body>
<h:outputStylesheet library="css" name="YOURSTYLES.css" />
<h:outputScript library="javascript" name="YOURSCRIPT.js" target="head" />
</h:body>
Run Code Online (Sandbox Code Playgroud)
如果使用primefaces 3,请关注此博客条目 https://www.primefaces.org/resource-rendering/
添加@Ravi已经回答的内容:
从primefaces 3.0开始,您可以自定义资源的顺序.但是,当我尝试它时,它起初没有工作.
事实证明我无法使用JSF组件来包含这样的css:
<f:facet name="last">
<h:outputStylesheet library="css" name="bootstrap.css" />
</f:facet>
Run Code Online (Sandbox Code Playgroud)
相反,我不得不使用:
<f:facet name="last">
<link rel="stylesheet" type="text/css" href="#{facesContext.externalContext.requestContextPath}/resources/css/bootstrap.css" />
</f:facet>
Run Code Online (Sandbox Code Playgroud)
只有这样,订购才开始起作用.
编辑:如果你把它facet放入body(而不是head),我的答案是多余的.就像拉维在他的回答中写道的那样.(我一定以某种方式错过了.)
这样做也是不可取的,因为这样就不会处理资源,FacesServlet而且css内部的路径问题也会出现.比较BalusC的答案.