2Danke
ERLEDIGT
JA
JA
ANTWORTEN
6
6
ZUGRIFFE
502
502
EMPFEHLEN
-
Hi,
und zwar habe ich es mittlerweile hinbekommen ein horizontales Drop-Down Menü zu erstellen. Jetzt habe ich das Problem, dass sobald ich über einen Menüpunkt mit der Maus gehe, das komplette Drop-Down sich öffnet, also nicht nur der Unterpunkt, sondern auch auch die Unterpunkte von einem Unterpunkt.
Um das ganze mal zu verdeutlichen:
http://img101.imageshack.us/img101/2630/cssmen.jpg
Gewollt ist natürlich, dass sobald ich über "Java" gehe, nur "Praktika/Java2D" zu sehen ist, und sobald ich über "Java2D" gehe, das nächste Drop-Down sich öffnet und "Pacci/Puzzle" erscheint. Jedoch ist direkt alles sichtbar sobald ich über "Java" gehe.
Dann einmal mein CSS nur vom Drop-Down teil:
Code css:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
#headPart { padding: 0em 0em 2em 0em; } #nav { text-align: center; font-size: 16px; padding: 4em 0em 2em 0em; background-image: url(Bilder/Hintergrund.png); /* margin: 3em auto 1.5em auto; /* top, right, bottom, left*/ } #nav ul li { list-style: none; float: left; position: relative; width: 160px; /* button size */ margin: 0 auto; /* button distance */ } #nav ul li ul { margin: 0; padding: 0; position: absolute; /* top: 1.5em; */ display: none; /* hide subnav*/ z-index: 5; background-image: url(Bilder/HintergrundOT.png); padding: 0.5em 0em 0.5em 0em; } #nav ul li:hover ul { display: block; /* show subnav*/ } #nav ul li ul li { /* submenu */ padding: 0.5em 0em 0.5em 0em; } #nav ul li ul li ul{ /*subnav2*/ position: absolute; left: 160px; top: 0px; display: none; /* hide subnav2*/ } #nav ul li ul li:hover ul { display: block; /* show subnav*/ } #nav ul li a{ text-decoration: none; display: block; font-weight: bold; color: #990000; /*link color */ } #nav ul a:hover, li a#current { background: url(Bilder/current.png) bottom left no-repeat; } #nav ul li a#current { background: url(Bilder/current.png) bottom left no-repeat; }
Und der HTML-Teil (könnt etwas wirr aussehen, dieser wird von PHP generiert
):
Danke auf jeden Fall schonmalHTML-Code:<div id="headPart"><div id="nav"> <ul> <li><a id="current">Start</a></li> <li><a href="index.php?seite=a.php">Lebenslauf</a></li> <li><a>CPP</a> <ul> <li><a href="index.php?seite=b.php">Strategiespiel</a></li> </ul> </li> <li><a>Java</a> <ul> <li><a href="index.php?seite=c.php">Praktika</a></li> <li><a href="index.php?seite=d.php">Java2D</a> <ul> <li><a href="index.php?seite=e.php">Pacci</a></li> <li><a href="index.php?seite=f.php">Puzzle</a></li> </ul> </li> </ul> </li> <li><a>Sonstiges</a> <ul> <li><a href="index.php?seite=">Maya</a> <ul> <li><a href="index.php?seite=g.php">Doppelkeks</a></li> <li><a href="index.php?seite=h.php">Wohnzimmer</a></li> </ul> </li> <li><a href="index.php?seite=i.php">Game Design</a></li> <li><a href="index.php?seite=j.php">Unity3D</a></li> </ul> </li> </ul> </div></div>
-
Hier ist ein weiterer Selektor für Nachfahren zu formulieren, der dafür Sorge trägt, dass beim Überfahren des oberen Menüpunktes nicht die nachfolgenden Untermenüebenen des aktuellen Untermenüs gezeigt werden, weil ansonsten zwischen dem best. Selektor #nav ul li:hover ul und allen nachfolgenden <ul>-Tags eine Übereinstimmung existiert.
Code css:1 2 3
#nav ul li:hover ul ul { display: none; /* hide subsubnav*/ }
Geändert von spicelab (29.08.10 um 09:53 Uhr) Grund: Tippex
-
Hi, super danke.
Dann mal um das ganze zu verstehen (sry bin noch relativ neu im CSS Bereich)
Das erste ul bezieht sich auf das komplette Menü. das li:hover bezieht sich auf die Menüpunkte, in disem Fall Java, das nächste ul bezieht sich auf die Unterpunkte hiervon (Praktika/Java2D) um dann an die Unterpunkte von Java2D zu kommen sprech ich das nächste ul an.
Owei ganz schön verwinkelt
Dann noch ne andere Sache, wenn ich jetzt den letzten Menüpunkt aufrufe, und dort das Drop-Down vom Drop-Down sich öffnet, ist es ja auch an der rechten Seite, nur das wäre dann ja ausserhalb des Seitenbereichs. Wie bekomm ich es hin, das es sich dann links vom Drop-Down anordnet?Geändert von MiMi (29.08.10 um 09:58 Uhr)
-
Der Kandidat hat soeben den verwinkelten Parcours mit Bravour bewältigt

Für die zweite Untermenüebene hast du im CSS ja auch schon den entsprechenden Selektor vorgesehen, um sie beim Überfahren der Menüpunkte innerhalb der ersten Submenüebene anzuzeigen.
-
Hm, also entweder hast du meine Frage falsch verstanden oder ich deine Antwort, wobei ich eher das zweite denke

Naja um das ganze nochmal zu verdeutlichen, wie du ja schon sagtest, sprech ich die zweite Unterebene mit "#nav ul li ul li ul" an. Diese habe ich standardmäßig einfach mal 160px (halt so breit wie das 1. Untermenü ist, nach rechts verschoeben mit -> left: 160px;
Das funktioniert ja auch nur sobald ich beim letzten Menüpunkt "Sonstiges" auf die Untermenüpunkte gehe, werden diese auch rechts angezeigt, wo aber eigentlich schon der Seitenbereich vorbei ist.
Gibt es eine Möglichkeit ansttatt fest zu sagen, 160px nach rechts verschieben, das es je nach Platz rechts oder links angeordnet werden soll?
-
Da wirst du für diese Untermenüebene eine gesonderte Positionierung vornehmen müssen.
Zum Vergleich siehe das Dropdown-Demo http://www.cssplay.co.uk/menus/dd_valid.html mit dem Menüpunkt "Opacity".
Hier lautet für die zweite Untermenüebene die dazugehörige Regel folgendermaßen:
Code css:1
.menu ul li:hover ul li:hover ul.left {left:-105px;}
Das betroffene <ul> des "Subsubmenüs" erhält die Klasse left (<ul class="left">), um es von den anderen <ul>-Tags im Markup abzugrenzen, und einen negativen Wert für die left-Position, womit es nach links geöffnet wird.
-
Ohje, das wird nen gefummel, das mir php das auch so generiert

Die Seite hatte ich auch schonmal gefunden, aber da der CSS-source dort meist sehr komplex ist, habe ich die Idee hiervon was zu gebrauchen direkt wieder über Bord geworfen
Dann danke nochmals für deine Hilfe. Ich meld mich wenn ich net weiterkomm
Ähnliche Themen
-
Horizontales Menü
Von Alex_T im Forum CSSAntworten: 3Letzter Beitrag: 05.08.10, 17:22 -
Horizontales Menü IE7
Von dobber812 im Forum CSSAntworten: 1Letzter Beitrag: 03.02.10, 17:47 -
Horizontales Menü / IF-IE 5,6 +7
Von dobber812 im Forum CSSAntworten: 6Letzter Beitrag: 23.11.09, 10:13 -
nach Auswahl eines Punktes im Drop Down Menü ein weiteres Drop Down Menü anzeigen
Von Dnate im Forum Javascript & AjaxAntworten: 9Letzter Beitrag: 22.08.08, 09:35 -
horizontales Menü mit CSS
Von [desty] im Forum CSSAntworten: 2Letzter Beitrag: 23.05.06, 20:35





Zitieren
Login




