# RichFaces Override CSS



## freez (27. Jul 2012)

Hallo Community,

mit RichFaces 3.x vor ein paar Jahren hatte ich nie Probleme die CSS Definitionen von Richfaces zu überschreiben um das Design anzupassen. Jetzt habe ich nach langer Zeit ein Projekt mit RichFaces 4 aufgesetzt. Nun werden meine overrides nicht angenommen. Ich sehe im Browser auch, dass das CSS File vor den Richfaces CSS geladen wird. Wie kann ich die Reihenfolge beeinflussen, oder habe ich hier vielleicht ein Konfigurationsproblem?

[XML]<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:a4j="http://richfaces.org/a4j" xmlns:rich="http://richfaces.org/rich" >

	<f:view>
		<h:head>
		<link type="text/css" rel="stylesheet" media="all" href="./vorlage.css" />
		</h:head>
	<h:body>



		<rich:dropDownMenu mode="ajax" style="width:50px;height: 30px;" hideDelay="300"  showEvent="click"  >
                <f:facet name="label">
                    <hanelGroup>
                <!--         <h:graphicImage value="/images/icons/copy.gif" styleClass="pic" alt="copy" /> -->
                        <hutputText value="File" />
                    </hanelGroup>
                </f:facet>
                <rich:menuItem label="New" >
                </rich:menuItem>
                <rich:menuItem label="Open" />
                <rich:menuGroup label="Save As...">
                    <rich:menuItem label="Save"  />
                    <rich:menuItem label="Save All">
                        <f:facet name="icon">
                            <h:graphicImage value="/images/icons/save_all.gif" alt="save_all" />
                        </f:facet>
                    </rich:menuItem>
                </rich:menuGroup>
                <rich:menuItem label="Close"  />
                <rich:menuSeparator id="menuSeparator11" />
                <rich:menuItem label="Exit"  />

            </rich:dropDownMenu>
	</h:body>
</f:view>
</ui:composition>[/XML]


Ich habe auch folgende web.xml Einträge versucht:
[XML]<context-param>
    <param-name>org.richfaces.control_skinning</param-name>
    <param-value>enable</param-value>
</context-param>
<context-param>
    <param-name>org.richfaces.control_skinning_classes</param-name>
    <param-value>enable</param-value>
</context-param>
<context-param>
    <param-name>org.richfaces.enableControlSkinning</param-name>
    <param-value>false</param-value>
</context-param>[/XML]


----------



## F.S.WhiTeY (27. Jul 2012)

Moin,

viel interessanter wäre mal deine CSS gewehsen. Hast du die Richfaces Styles in deiner CSS mit !important überschrieben und bist du dir sicher das du die richtigen Klassen überschrieben hast?

HTH

David


----------



## freez (27. Jul 2012)

OK, gern. Ich habe zum Testen im Prinzip alle CSS Klassen aus dropdownmenue in meine vorlage.css kopiert und geleert:

```
*.rf-ddm-lbl, *.rf-ddm-lbl-dis {}
*.rf-ddm-lbl {}
*.rf-ddm-unsel {}
*.rf-ddm-sel {}
*.rf-ddm-pos {}
*.rf-ddm-dis {}
*.rf-ddm-lbl-dec {}
*.rf-ddm-lst {}
*.rf-ddm-sublst {}
*.rf-ddm-lst-bg {}
*.rf-ddm-itm {}
*.rf-ddm-itm-unsel {}
*.rf-ddm-itm-sel {}
*.rf-ddm-itm-dis {}
*.rf-ddm-itm-ic {}
*.rf-ddm-itm-lbl {}
*.rf-ddm-sep {}
*.rf-ddm-nd {}
*.rf-ddm-itm-dis *.rf-ddm-nd {}
*.rf-ddm-emptyIcon {}
*.rf-ddm-itm-ic input[type="checkbox"] {}
*.rf-ddm-itm-lbl input[type="text"] {}
```

Im Prinzip dürften keine Styles mehr vorhanden sein. Diese Methode hat vor ein paar Jahren noch funktioniert. Aber ich sehe eindeutig, dass mein CSS File vor dem dropdown css File geladen wird. Damals war es anders herum und ich konnte somit die die CSS Klassen überschreiben.


----------



## F.S.WhiTeY (27. Jul 2012)

hey,
du musst die klassen mit !important überschreiben. css hat sich weiter entwickelt. wenn du es richtig machst, ist es egal was zuerst geladen wird. es gilt die mächtigkeit der ausdrücke.

ich empfehle dir css4you, einfach mal googlen.

lg

david


----------



## freez (27. Jul 2012)

Danke für den Tipp ... ich finde es toll, dass man immer wieder was lernt, wenn man grad festgefahren ist.


----------

