Contao CSS3 Navigation mit transition
Hallo liebe Forumsgemeinde,
hier habe ich an 2 Contao-Dropdown-Menues gearbeitet, die ich, sofern alles darin in Ordnung und verwendbar wäre, der Allgemeinheit zur Verfügung stellen würde. Da ja das Menumatic vom Entwickler nicht weiter gepflegt wird und in Anbetracht der Tatsache, dass inzwischen - mit Ausnahmen vom IE - die meisten Browser mit CSS3 umgehen können, habe ich versucht für das Contao-Naviagtionsmodul ein CSS zu schreiben, was ein Dropdown basierend auf transitions ermöglicht.
Hier meine beiden Ergebnisse
Mit transition height
http://www.jukenetbox.de/dropdown1/
Der Trick bei transition height ist der, dass im Hintergrund die Höhe der ul für zwei Zustände fest definiert ist. Im Normalzustand ist die Höhe 0, bei hover wird sie 250px groß. Das ist aber auch zugleich der Nachteil, denn durch die fixe Höhe ist die ul wesentlich länger als es die Anzahl der li vermuten lassen. Transistion height funktioniert nur leider nicht mit height:auto. Deswegen muss man beim Einsatz in Webseiten darauf achten, die Höhe immer auf das längste Submenu anzupassen. Ganz Fleißge können via Seitenstruktur und body-class die Höhen auch unterschiedlich anpassen.
Mit transistion opacity
http://www.jukenetbox.de/dropdown2/
Bei der Lösung mit opacity macht man sich die Sichtbarkeit zunutze. Der Normalzustand ist unsichtbar, also opacity=0, bei hover ändert sich das in 0.9 oder 1.
Bei beiden Menüs sind 2 Lösungen enthalten.
Mit Ausnahme vom Menüpunkt Service slidet / blendet das Menü bei :hover ein bzw. wieder aus.
Um zu zeigen, dass auch das möglich ist habe ich es beim Menüpunkt "Services" so eingerichtet, dass das Menü sichtbar bleibt.
Beide Menüs können aber (bisher?) nur 1 Unterebene.
Da ich aber ohnehin der Ansicht bin, dass ein Menü mit 2 Unterebenen erstens mal auf keiner Webseite schön aussieht und zweites die Bedienung, auch für nicht motorisch-gehandicapte User, eine Herausforderung darstellt, habe ich auf eine weitere, zweite Ebene verzichtet.
Was mir jedoch noch am Herzen liegen würde ist das Öffnen des Untermenues bei :focus.
Das geht, soweit ich ich das feststellen konnte, mit CSS gar nicht.
Hier würde man wahrscheinlich doch MooTools und onFocus einsetzen müssen - ich muss aber gestehen, dass ich mir diesem Bereich die Kenntnisse fehlen um das einzubauen.
So, dann hoffe ich mal im Allgemeinen, als auch in Sachen MooTools im Besonderen, auf eure Meinungen und Mithilfe.
Beste Grüße
juke