LINK um ein "Horizontales CSS Rollover Menu inkl. weiterem DIV"

  • Hallo zusammen,

    ich hoffe ihr könnt mir weiterhelfen. Meine Webseite ist so gut wie fertig gestellt, einzig meine "Menü-Struktur" bekomme ich bisher nicht W3C konform.

    Wie ich mittlerweile weiß, ist ein Link um ein Div nicht erlaubt (<a href="#“><div>text</div></a>). Aus diesem Grund habe ich mir schon einige Horizontal CSS Rollover Menu Beispiele angeschaut, die mit ul li ol ... Wege aufzeigen um das Problem zu lösen - auch hier im Forum.

    Mein Menü unterscheidet sich gegenüber den gefundenen Beispielen.
    Kompliziert ausgedrückt: Zwei Divs nebeneinander, bei Rollover wächst das erste Div auf die Größe des zweiten Divs daneben (das zweite Div wird dabei überdeckt, beide Divs beinhalten einen weiteren Div mit Text und Hintergrundfarbe ganz unten, Div und Beschreibung sollen zusammen einen vollwertigen Link bilden, beide Divs haben beim Rollover ein Hintergrundbild

    Da es mir schwer fällt es näher zu beschreiben, habe ich für das Forum eine simple abgespeckte Variante meiner Seite erstellt.

    Mal abgesehen von der W3C-Konformität, freue ich mich auch über weitere Empfehlungen mit Begründungen (z.B. sollte ich noch ein ein position: absolute, display:block, oder Ähnliches einbauen, z.B. beim überlappenden Div?)

    Link zur Webseite


    index.html

    style.css

  • Wenn ich das richtig sehe, hast du ja schon fast alles was du möchtest.
    Das einzige ist das überlappen. Da könnte man zb mit z-index arbeiten.
    Habe ich persönlich noch nicht wirklich mit gearbeitet. aber kommt mir spontan in den sinn.

  • Hallo,

    danke für die erste Antwort. Ich denke schon dass ich mich mit Divs mittlerweile gut auskenne. Mein Problem ist, dass ich diese Art der Menüstruktur nicht als Liste hinbekommen habe. Falls jemand eine Idee hat wie man das damit W3C konform realisieren kann, dann wäre ich sehr dankbar.

  • (Bitte den vorrigen Post löschen, ich war anscheinend nicht eingeloggt.)

    Elvis
    Danke für die erste Antwort. Ich denke schon dass ich mich mit Divs mittlerweile gut auskenne. Mein Problem ist, dass ich diese Art der Menüstruktur nicht als Liste hinbekommen habe. Falls jemand eine Idee hat wie man das damit W3C konform realisieren kann, dann wäre ich sehr dankbar.

    thilda
    z-index wird glaube ich nicht benötigt, weil ich den Text des zweiten Menüs nicht überdecken will - dann könnte ich dort mit der Maus nicht über den Bereich fahren, wenn das erste Div ausgeklappt ist. Die Ansicht ist bereits exakt wie ich es haben will. Es geht mir einzig darum es nun W3C konform zu bekommen - ohne JavaScript.

    4 Mal editiert, zuletzt von SnakeSnoke (9. April 2009 um 11:05)

  • Ich habe es erneut via Liste probiert:

    Link zur Webseite

    index2.html

    Code
    <div id="menuArea">
        <ul id="menuList">
            <li><a href="#">Menu 1</a></li>
            <li><a href="#">Menu 2</a></li>
        </ul>
    </div>

    style2.css

    Nochmal, was ich nicht hinbekomme:

    - Bei Mouseover soll Menu 1 auf die Größe von Menu 2 wachsen, so dass man das vollständige Hintergrundbild beim Mouseover erst sehen kann. Menu2 soll zwar dabei überdeckt werden, jedoch nicht der Text "Menu 2" - so dass man weiterhin mit Mouseover auch bei ausgeklappten Menu 1 auf Menu 2 gehen kann. (siehe Beispiel im ersten Post)

    - Die Hintergrundfarbe vom Menu-Text soll auch ohne Hover vorhanden sein, aber nur unten, nicht im ganzen Div. Da ich keine Divs dort einbauen darf, bräuchte ich im Li ein weiteres Listenelement das ich mit CSS definieren kann. Ist das möglich?

    3 Mal editiert, zuletzt von SnakeSnoke (13. April 2009 um 10:32)

  • Neuer Ansatz.

    "<div class="text ..." in "<span class="text ..." geändert und in der CSS bei ".text..." display: block hinzugefügt. Jetzt ist es Valid W3C HTML / CSS.

    Weblink zur neuen Version

    index3.html

    Code
    <div id="menuArea">
        <div id="bg1">
            <a href="#"><[U][B]span id[/B][/U]="text1">Menu 1</[U][B]span[/B][/U]></a>
        </div>
        <div id="bg2">
            <a href="#"><[U][B]span id[/B][/U]="text2">Menu 2</[U][B]span[/B][/U]></a>
        </div>
    </div>

    style3.css

    Bedenken oder Verbesserungsvorschläge?

    6 Mal editiert, zuletzt von SnakeSnoke (13. April 2009 um 10:46)

  • Danke für den interessanten Link.

    Sobald ich versuche meine Anforderung via ähnlichem List-Style vom genannten Beispiel zu realisieren, endet es so:

    Kein Vergleich zu meiner fertigen index3-Variante.

    7 Mal editiert, zuletzt von SnakeSnoke (14. April 2009 um 09:33)