css problem bei horizontaler navigation

  • ein herzliches hallo ins forum,

    ich habe folgendes problem: auf esskultur.at habe ich unter dem header eine horizontale navigation. (categories und pages). ich würde gerne den letzten menüpunkt rechtsbündig (mit dem headerbild) abschliessen lassen. mit dem gunnart-plugin kann ich die menüpunkte einzeln im stylesheet ansprechen.

    komischerweise funktioniert im firefox eine pixelangabe des menüs nicht, im ie schon. für beide browser eine lösung zu finden ist mir nicht geglückt.

    hier ist das css dieser navigation

    ich habe mehrere varianten probiert, auch die liste mit display: inline (damit das float: left attribut wegkommt) anzuzeigen, hat nicht zum gewünschten ergebnis geführt.

    gar nicht verstehe ich, dass die width angabe im firefox nicht zum tragen kommt.

    vielleicht hilft noch der code im header weiter:

    ich bin dankbar für hilfe, da ich nicht so ein codefreak bin.

    herzliche grüsse, horst

    • 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

  • Um das zu erreichen müssen alle <li> float:left haben und gleich breit sein sein. Inline-Elemente haben per Definition keine festlegbare Breite.

    (Was eventuell noch funktionieren könnte ist Inline-Anzeige und Blocksatz für das umschließende <ul>. Hier musst du aber auf irgendeine Weise eine 2 Zeile erzwingen.)

  • für beide browser andere Angaben machen,

    leichter ist es zuerst für den Firefox zu arbeiten, da man den IE gut im header bedienen kann,

    wobei die Rechtsbündigkeit bei Veränderung der Schriftgröße durch den User Geschichte ist ;)
    arbeite daher mit % bei den margin Werten oder mit em Werten, die sich an der Schriftgröße orientieren

    lg

  • herzlichen dank für eure antworten!
    marX

    Zitat

    Um das zu erreichen müssen alle <li> float:left haben und gleich breit sein sein. Inline-Elemente haben per Definition keine festlegbare Breite.

    ja das problem ist aber, dass die worte der navigation zu lange sind, eine gleichmässige aufteilung ist somit nicht möglich.

    Zitat

    (Was eventuell noch funktionieren könnte ist Inline-Anzeige und Blocksatz für das umschließende <ul>. Hier musst du aber auf irgendeine Weise eine 2 Zeile erzwingen.)

    habe auch schon daran gedacht, nur weiss ich momentan nicht, wie ich diese zweite zeile erzwingen soll...

    eigentlich ist aber oben genanntes genau das, wonach ich suchen würde: eine blocksatzformatierung für listenelemente. sowas gibt es aber meiner meinung nicht, weil das attribut justify nicht auf li oder ul elemente anwendbar ist?

    liebe monika ich danke auch dir ganz herzlich, ich glaube du setzt bei mir aber zu viel wissen voraus ;)

    Zitat

    da man den IE gut im header bedienen kann,

    sowas liegt weit über meinem horizont, ich wüsste nicht, wie das gehen soll...hast du dazu vielleicht nähere infos?

    und was die rechtsbündigkeit angeht, das wäre ja nur ein hifsmittel, ich weiss, es ist nicht besonders geeignet.

    und wo genau meinst du, soll ich margin angaben in prozent definieren?

    im übrigen ist mir noch immer nicht klar, warum der firefox nicht auf die width angabe der navigation eingeht.

    danke euch herzlich, vielleicht gibt es nochmals rat für mich.

    herzliche grüsse

    horst

  • ja das problem ist aber, dass die worte der navigation zu lange sind, eine gleichmässige aufteilung ist somit nicht möglich.


    Schon klar.

    Zitat

    habe auch schon daran gedacht, nur weiss ich momentan nicht, wie ich diese zweite zeile erzwingen soll...


    Mit einem <br /> vor <ul> wäre eine naheliegende Möglichkeit. Diese ergibt aber invalides HTML. Eine andere Idee hab ich aber grade auch nicht.

    Zitat

    sowas gibt es aber meiner meinung nicht, weil das attribut justify nicht auf li oder ul elemente anwendbar ist?


    Wenn die Inhalte als Inline-Elemente dargestellt werden - warum nicht?


    Zitat

    sowas liegt weit über meinem horizont, ich wüsste nicht, wie das gehen soll...hast du dazu vielleicht nähere infos?


    Such mal nach "Conditional Comments".
    About Conditional Comments


    Zitat

    im übrigen ist mir noch immer nicht klar, warum der firefox nicht auf die width angabe der navigation eingeht.


    Inline-Elemente haben keine Breite sondern sind immer so breit wie der Inhalt darin.

  • Folgendes erfolgreich on the fly mit Firebug gestyled:

    und den letzten <li> dann direkt

    Code
    <li style="float: right; text-align: right; padding-right: 0px;" class="page_item"><a href="http://www.esskultur.at/index.php/uber-esskulturat/" title="über esskultur.at">über esskultur.at</a></li>

    Dann sieht das wie im Bild aus. Setzt voraus, dass du den letzten <li> auch addressieren kannst.

  • herzlichen dank an euch alle für die antworten und anregungen.

    und danke auch an codestyling für deine bemühungen, ichbs lokal ausprobiert, leider kann man das menü für den internet explorer (vers. 6.x) so nicht verwenden.

    danke auch marx für deine hinweise, ich werde mal brav lesen.

    ich hab jetzt vielleicht eine lösung gefunden mit einem plugin ein horizontales menü zu erzeugen, interessanterweise macht das weniger mucken, als wenn ich es so versuche zu lösen.

    danke jedenfalls an alle

    horst

Jetzt mitmachen!

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