Fixen und Variablen Container nbeneinander floaten

  • Also erstmal mein CSS:


    und mein HTML (eigentlich KTPL (nicht fragen)):

    und jetzt mein Problem:
    da <!-- -content- --> zu einem langem fließtext wird, ist der #text div breiter als zwischen der rechten außenkante von #navigation und der rechten innenkante von #content übrigbleibt daher wird (obwohl er einfach die zeile umbrechen könnte) #text eifnach unter #navi geschoben was ich natürlich vermeiden will ;)

    die frage ist jetzt nur wie....

    am besten wäre dann noch wenn ich dafür sorgen kann, das ätext bündig zu #content aufhört.
    normalerweise würde #text ja einfach die maximal-mögliche größe bekommen, und damit genau das tun, allerdings bekommt er die anscheinend aus irgendeinem Grund nicht (zumindest nicht wenn #naviagtion und #text doch nebeneinanderstehen, wenn der inhalt von #text nicht so lang ist)

    schonmal danke für die antworten ;)

    Orthografie und Grammatik in diesem Beitrag sind frei erfunden und eine eventuell gefundene Übereinstimmung mit einer lebenden oder toten Sprache sollte von allen Beteiligten unverzüglich ignoriert werden.

    K-Progs (In bearbeitung)
    Der inoffizielle Forum-hilfe IRC-Channel
    (Server: irc.freenode.net ; Channel: #forum-hilfe) (Client für FF)
    Ich hab auch 'n Jabber-Account beim CCC ;)

    Einmal editiert, zuletzt von Greg10 (8. September 2008 um 01:44)

  • Moin,

    also, wenn ich dich richtig verstehe willst du zwei container nebeneinander haben, einen mit fixer Breite und der andere soll immer den restlichen zur Verfügung stehenden Platz einnehmen (horizontal) und sich nicht unterhalb der gefloatenden navi auf die ganze Breite des Viewports ausdehnen.

    Außerdem soll das Ganze möglichst flexibel sein.

    Ich hab dir ein lauffähiges Beispiel gemacht damit du siehst wie es funktioniert:

    Einfach in deinen Editor reinkopieren und im Browser betrachten.

    Der umschließende #wrapper bekommt ein margin-left mit der Breite von #navigation.
    In diesen freigewordenen Bereich wird #navigation mittels negativem margin-left reingezogen.

    #navigation und #text floaten damit sie nebeneinander stehen.
    Einen clearenden #footer habe ich der Ordnung halber definiert.

    #navigation bekommt noch per CC für den IE6 display:inline; (double-margin-Bug!) ;)

    Hoffe ich hab dich richtig verstanden.

    koslowski

    edit. Der von dir gewählte Doctype ist nicht sonderlich brauchbar. Bei diesem Doctype ( XHTML 1.1) ist der content-type nicht text/html sondern applikation/xml. Damit hat derIE6 und kleiner ein Problem. Besser ist z.B. der Doctype in meinem Beispiel (XHTML 1.0 strict), damit bist du im always Standard-Mode.

    Einmal editiert, zuletzt von koslowski (8. September 2008 um 07:43)

  • Zunächst würde ich auf sämtliche absoluten Positionierungen verzichten. Das führt dazu, dass diese Elemente aus dem HTML-Fluss genommen sind.
    Wenn du dafür mit float und margin arbeitest, dann ist das weitaus einfacher und wird auch übersichtlicher.

    #text steht rechts neben der #navigation und soll diese mit dem #text-Inhalt nicht "unterlaufen".
    Das erreichst du durch einen entsprechenden margin-left-Wert. Wenn nur diese beiden Div's nebeneinander angeordnet sind, reicht es, wenn #navigation gefloatet ist.

    Versuch's mal so:

    Code
    div#text {
    margin-left: 234px;
    padding:15px;
    padding-top:6px;
    background-color:#ffffff;
    }
  • mit seumas methode funktioniert es soweit (@kowloski: ich habe deine nicht ausprobiert, d mir sejuma einfacher erschien und ich deswegen mit der angefangen hab)
    werde dann mal den doctype ändern

    und noch ein dickes danke an beide :D

    Orthografie und Grammatik in diesem Beitrag sind frei erfunden und eine eventuell gefundene Übereinstimmung mit einer lebenden oder toten Sprache sollte von allen Beteiligten unverzüglich ignoriert werden.

    K-Progs (In bearbeitung)
    Der inoffizielle Forum-hilfe IRC-Channel
    (Server: irc.freenode.net ; Channel: #forum-hilfe) (Client für FF)
    Ich hab auch 'n Jabber-Account beim CCC ;)