我正在使用 Richface 3.3.3 Final 和 JSF 1.2。我有一个自定义样式表(将包含在我的 WAR 中),它不会影响我在页面上使用的丰富元素,它应该是这样工作的——丰富的样式更接近。但是我需要以某种方式“跳过”丰富的样式:压倒丰富的样式实在是太痛苦了。有谁知道一个“开关”可以关闭丰富的样式?
4 回答
According to RichFaces Documentation you should add:
<context-param>
<param-name>org.richfaces.enableControlSkinning</param-name>
<param-value>false</param-value>
</context-param>
<context-param>
<param-name>org.richfaces.skin</param-name>
<param-value>plain</param-value>
</context-param>
To your web.xml. Skin "plain" contains no skin parameters and is intended for embedding RichFaces components into existing projects with their own styles.
即使是普通的皮肤,也包括几个 css 类。我所做的是定义一个自定义皮肤,例如
<context-param>
<param-name>org.richfaces.SKIN</param-name>
<param-value>myskin</param-value>
</context-param>
并在类路径中包含一个空文件myskin.skin.properties
我真的怀疑你是否可以“关闭”默认的 Rich faces 样式类。我遇到了这个问题,并根据我的经验提出了这个解决方案。
如果您尝试引用您外部的自定义样式表WAR
(我的意思是如果将其放置在 Web 服务器中而不是将其放置在您的 war 文件中),请尝试将其放置在您的 xhtml 页面中。
此外,如果您要从您的战争中的自定义文件夹中导入您的自定义 css 文件,请尝试将 css 类放在您的 xhtml 页面中。
下面是示例代码。正如我所说,在遇到同样的问题后,我会根据我的经验来回答这个问题。
在您的 xhtml 页面中,
<style type="text/css">
.rich-stglpanel-body {
background-color: #FFFFFF;
border: 1px solid #73C5E3;
font-family: Tahoma,Arial,Geneva,sans-serif;
font-size: 11px;
width: 877px;
}
</style>
我不认为你可以关闭造型。但是,您可以使用“普通”皮肤来避免一些造型。将此添加到您的web.xml
<param-name>org.richfaces.SKIN</param-name>
<param-value>plain</param-value>
</context-param>
但是更改皮肤会影响您的所有页面。但是,如果您不想将其应用于所有页面,则应skin
根据 bean 属性有条件地设置,如下所示。
<param-name>org.richfaces.SKIN</param-name>
<param-value>#{myBean.skinName}</param-value>
</context-param>