CSS-Tüftelei: Drei Navigationselemente Nebeneinander

  • Hier ist die Testseite, um die es geht.

    Ich habe eine waagrechte Menüleiste, die eigentlich aus drei Teilen besteht, aber aussehen soll wie aus zwei Teilen. Ich habe ein Bild, Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist. , angehängt, das zeigt, wie ich es gerne hätte (verkleinert).

    Das sind die Bestandteile:

    1. Seitenlinks (links)
    2. Funktion des Plugins qTranslate (rechts)
    3. Ein Seitenlink zu einer Seite auf Arabisch (rechts)

    As gibt keine arabischen Beiträge, sondern nur eine einzige arabische Seite, aber trotzdem sollen 2 und 3 wie ein zusammenhängendes Menü aussehen.

    Problem:

    1. Wenn man auf die Testseite geht, fällt auf dass, der arabische Seitenlink aus dem rechten Menücontainer fällt; ich bekomme ihn einfach nicht in eine Linie.
    2. So sollen die Trennlinien verteilt sein: Deutsch | Englisch | Arabisch, ich kriege es aber nicht dargestellt.
    3. Die Trennlinie zwischen Deutsch und Englisch ist eine Spur zu kurz, verglichen mit denen in der Seitennavigation links; außerdem sind auch die Eigenschaften der Links etwas anders.

    Wieso werden ul und li des Plugins nicht vollständig vom Stylesheet angesprochen? Es gibt da ein Widget, das ebenfalls die Klasse qtrans_langauge_chooser enthält, aber ich nutze ja kein Sidebar Widget, und ich sehe in den Plugin-Dateien auch keine CSS-Definitionen.

    Code des Menüs:


    CSS

    Einmal editiert, zuletzt von Frau_Braun (23. Oktober 2008 um 13:00)

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Mit "float:left" für #qtrans_language_chooser rutscht arabisch schon mal neben das Menü. Aber zu weit rechts. Da liegt hieran:

    Code
    #menu-right .page_item {[COLOR="DeepSkyBlue"]style.css (line 255)[/COLOR]
    left:130px;
    position:relative;
    }


    Mit den Rahmen solltest du dann selbst weiter kommen, denke ich. Wenn nicht, sag einfach bescheid. ;-)

  • Lieber Marx, das habe ich nicht verstanden.
    Wenn ich float:left für #qtrans_language_chooser definiere (das ja von #menu-right mit float:right umgeben ist), passiert nichts.
    Wenn ich #menu-right .page_item, also die Definition für "Arabisch" wegnehme, steht es direkt unter "Deutsch". Könntest Du nochmal helfen?

    Edit: Es ist auch nicht gut, die Weite von #menu-right zu beschränken, denn eventuell kommt noch eine weitere Sprache hinzu.

    Einmal editiert, zuletzt von Frau_Braun (23. Oktober 2008 um 13:34)

  • Du bist ein Engel!


    Etwas später:

    So, jetzt komme ich der Sache schon näher: Im Quelltext finde ich einen Code, der durch das Plugin erzeugt wird - aus Platzersparnisgründen gelöscht.

    Jetzt muss ich noch die Stelle wissen, an der das Plugin dieses CSS erzeugt.

    Einmal editiert, zuletzt von Frau_Braun (23. Oktober 2008 um 14:57)

  • Jetzt muss ich noch die Stelle wissen, an der das Plugin dieses CSS erzeugt.


    Wozu? Der Code ist ja erstmal irrelevant - *_flag hast du ja nirgends drin.
    Und falls es doch damit Probleme gibt kannst du ihn immernoch in deiner style.css überschreiben. ;-)

    Aber ich bin derweil auch voran gekommen:

    Code
    #menu-right .qtrans_widget_end {
    float:left;
    display:none;
    }


    (doppelt hält besser ;-))

    und für das <ul> um die arabische Seite noch ein float:left; (entweder Inline-CSS, oder gib dem <ul> ne Klasse/ID)

    Dann siehts schon recht ordentlich aus finde ich.

  • Allmählich kommt es, aber es klappt noch nicht ganz. Jetzt ist die Schrift falsch positioniert, und ich habe keine Trennstriche mehr.

    Der Code für's Menü sieht jetzt so aus, ich habe jetzt das rechte und linke Menü gleichgeordet, so dass auf beiden Seiten ul auf der selben Ebene stehen (vielleicht ist das der Fehler)

    Hier das CSS, wie es momentan auf dem Server liegt:

  • Warum das?

    Code
    #menu #qtrans_language_chooser span {
    	padding: 10px;
    	[COLOR="Red"]float: left;[/COLOR]
    }


    Mit der Verschachtelung von Blockelementen (was gefloatete Elemente immer sind!) in Inline-Elementen (<a>, Inline-<li>) schaffst du dir nur Probleme...

    Und das

    Code
    #menu_right #qtrans_language_chooser {
    float:left
    }


    ist auch wieder weg... :| Mein Tipp von oben sah - bis auf die Rahmen - eigentlich schon ganz okay aus, fand ich...

  • Warum das?

    Code
    #menu #qtrans_language_chooser span {
    	padding: 10px;
    	[COLOR="Red"]float: left;[/COLOR]
    }


    Das habe ich gemacht, um die Striche so lang zu bekommen wie im linken Menü. Wurde zwischendurch auch mal angezeigt.
    Bis ich alles in eine Reihe bekommen habe. Ummph. Da waren die Striche weg.

    Und das

    Code
    #menu_right #qtrans_language_chooser {
    float:left
    }


    ist auch wieder weg... :| Mein Tipp von oben sah - bis auf die Rahmen - eigentlich schon ganz okay aus, fand ich...


    Stimmt, jetzt ist das Ganze nur noch auf span beschränkt.


    Mit der Verschachtelung von Blockelementen (was gefloatete Elemente immer sind!) in Inline-Elementen (<a>, Inline-<li>) schaffst du dir nur Probleme...


    Das schaue ich mir gleich noch mal an.

    Mein Tipp von oben sah - bis auf die Rahmen - eigentlich schon ganz okay aus, fand ich...


    Was meinst Du mit "Rahmen"?

  • Erstmal danke für heute. Mir raucht der Kopf. Ich kriege die linke Hälfte des rechten Menüs nur zum floaten, wenn ich das float:left dem span zuweise. Der Code ist auch valide auf diese Art und Weise. Sieht jetzt ganz gut aus, nur fehlt noch der Strich zwischen den beiden Plugin-Sprachen. Weiß der Teufel, warum. Vielen Dank, Marx, Du machst hier eine tolle Arbeit!

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!