Css 如何阻止richfaces向面板和日历添加边框?

Css 如何阻止richfaces向面板和日历添加边框?,css,jsf,richfaces,border,skins,Css,Jsf,Richfaces,Border,Skins,我希望使用定制的richfaces皮肤来处理我大部分的演示工作。不幸的是,richfaces在日历组件中的每个单元格和每个面板周围渲染边框。我想关闭它们,以便在没有边界的开放网格中对站点进行编号。使用calendar控件的外观或属性并没有明显的方法可以做到这一点 我可以使用自定义CSS,但我更喜欢使用框架,从richfaces创建的样式表中完全删除与边框相关的属性,而不是使用框架,使用丑陋的CSS覆盖所有内容 那么,如何阻止richfaces向面板和日历添加边框呢 这家伙有一张RichFace

我希望使用定制的richfaces皮肤来处理我大部分的演示工作。不幸的是,richfaces在日历组件中的每个单元格和每个面板周围渲染边框。我想关闭它们,以便在没有边界的开放网格中对站点进行编号。使用calendar控件的外观或属性并没有明显的方法可以做到这一点

我可以使用自定义CSS,但我更喜欢使用框架,从richfaces创建的样式表中完全删除与边框相关的属性,而不是使用框架,使用丑陋的CSS覆盖所有内容

那么,如何阻止richfaces向面板和日历添加边框呢



这家伙有一张

RichFaces有一个内置的皮肤系统,叫做Skinnablity。Skinnability是标准CSS的高级扩展。您可以创建自己的皮肤文件以在应用程序()中使用

在richfaces impl jar中,/META-INF/skins文件夹包含所有皮肤文件(.skin.properties)。复制一个并重命名它,修改你想要的。你必须重建这个罐子


您可以使用richfaces的功能,这是我以前从未尝试过的,但看起来它也适用于您正在尝试的操作。

从3.3.0.GA版开始,无法要求richfaces停止渲染边框和背景的CSS。有必要重写内置样式表中的每个属性(org.richfaces.renderkit.html.css中包含的属性,它是richfaces-ui-3.3.0.GA.jar的一部分)

为您提供了必要的功能,就像使用常用技术添加的自定义CSS一样,尽管plug and skin可能更好,因为您可以引用抽象颜色定义来补偿缺少的背景,如下所示:

<u:style name="color" skin="abstractColorName" />
要开始使用plug和skin,可以使用以下Maven2命令序列:

mvn archetype:generate -DarchetypeGroupId=org.richfaces.cdk -DarchetypeArtifactId=maven-archetype-plug-n-skin -DarchetypeVersion=3.3.0.GA -DartifactId=fil-skins -Dpackage=com.feelitlive.richfaces -DgroupId=com.feelitlive.server -Dversion=0.0.1-SNAPSHOT -DarchetypeRepository=http://repository.jboss.com/maven2/
cd fil-skins
mvn cdk:add-skin -Dname=fil -Dpackage=com.feelitlive.richfaces.skins
这最好从命令行完成,因为不幸的是Eclipse插件无法在jboss存储库中找到原型(其他IDE可能处理得更好)。您需要更改artifactId、groupId、package、version和name属性以适合您的项目。选择反映用于保存多个蒙皮定义的工件范围的工件和包名称


虽然需要做大量工作,但可以添加对通用格式xxxBackgroundEnabled和xxxOrderEnabled中的皮肤属性的支持,以便根据具体情况关闭这些边框和背景CSS的呈现

您需要与richfaces团队一起修补org.richfaces.renderkit.html.css中的xcss文件。您还需要在一个XCSS JSF标记库(由XCSS文件中的http:/JSF.exadel.com/template/util或http:/JSF.exadel.com/template标识)中使用某种条件输出功能,我希望使用这些功能在XCSS文件中包装CSS属性组


如果您对richfaces进行了这样的修改,那么您将能够从任何蒙皮的属性文件中禁用有争议的CSS的呈现。

有一个名为
plain
的蒙皮,它几乎没有附加任何样式

这是一个:

皮肤“普通”是从3.0.2版本添加的。没有 参数。有必要将RichFaces组件嵌入到 有自己风格的现有项目

您可以通过添加

<context-param>
    <param-name>org.richfaces.SKIN</param-name>
    <param-value>plain</param-value>
</context-param>
web.xml
中设置

但是要小心,因为它。

“普通”仍然呈现太多CSS!
<context-param>
    <param-name>org.richfaces.SKIN</param-name>
    <param-value>plain</param-value>
</context-param>
<context-param>
     <param-name>org.richfaces.LoadStyleStrategy</param-name>
     <param-value>None</param-value>
</context-param>