Franz Steinmetz: 2 Spalten á 50% ohne float

In einem DIV mit 100% * 100% (also der ganze Bildschirm) liegt ein weiterer DIV mit einem margin-left (in Pixeln), um einen festen Abstand nach links für ein Menü zu haben (wird später absolut positioniert eingefügt).
In diesem inneren DIV möchte ich nun 2 Spalten zu á 50% haben.

Soweit habe ich das auch geschafft, allerdings nur mit float. Das Problem mit float ist allerdings, dass der Bezug verloren geht und somit der Elterndiv kleiner sein kann als der Kinddiv.
Was ich schon probiert habe, ist die rechte Spalte über ein weiteres DIV in DIV einzufügen mit width:50%; margin-left:0px; margin-right:auto;. In den kann ich auch Text schreiben. Sobald ich aber Text in die linke Spalte schreibe, verschiebt sich der rechte DIV aber nach unten (ans Textende).

Mit einer Tabelle wäre das wahrscheinlich kein Problem, das ist aber wohl nicht der richtige Weg :-/

Gibt es also noch eine Möglichkeit, neben float und position:absolut, 2 Spalten mit 50% Breite des Elterndivs zu realisieren?

Wäre echt Spitze.

Bei meinem jetzigen Versuch (http://franzl.r-u-s.de/neu/testneu.htm) sieht man, dass die rechte Spalte (ist mit float gemacht) den Bezug verliert.

  1. Hallo Franz.

    In einem DIV mit 100% * 100% (also der ganze Bildschirm)

    Das glaube ich nicht.

    Das Problem mit float ist allerdings, dass der Bezug verloren geht und somit der Elterndiv kleiner sein kann als der Kinddiv.

    Das ist kein Problem sondern normal, da jedes gefloatete Element aus dem normalen Dokumentenfluss herausgenommen wird.

    Gibt es also noch eine Möglichkeit, neben float und position:absolut, 2 Spalten mit 50% Breite des Elterndivs zu realisieren?

    Sowohl bei float, als auch bei absoluter Postionierung interessiert sich ein Element nicht mehr für Elternelemente, es ist sozusagen in die Pubertät gekommen.
    Du hast nun also 2 Möglichkeiten: Entweder wartest du ab und hoffst, dass sich das Element selbst wieder beruhigt, oder du greifst selbst ein und versuchst es mit anderen Positionierungsarten.

    Gruß, Ashura

    --
    Selfcode: sh:( fo:) ch:? rl:( br:^ n4:& ie:{ mo:) va:) de:> zu:) fl:( ss:| ls:[ js:|
    Try it: Become an Opera Lover in 30 days
    1. In einem DIV mit 100% * 100% (also der ganze Bildschirm)
      Das glaube ich nicht.

      Warum nicht?

      Das Problem mit float ist allerdings, dass der Bezug verloren geht und somit der Elterndiv kleiner sein kann als der Kinddiv.
      Das ist kein Problem sondern normal, da jedes gefloatete Element aus dem normalen Dokumentenfluss herausgenommen wird.

      Für mich ist das schon ein Problem

      Gibt es also noch eine Möglichkeit, neben float und position:absolut, 2 Spalten mit 50% Breite des Elterndivs zu realisieren?
      Sowohl bei float, als auch bei absoluter Postionierung interessiert sich ein Element nicht mehr für Elternelemente, es ist sozusagen in die Pubertät gekommen.
      Du hast nun also 2 Möglichkeiten: Entweder wartest du ab und hoffst, dass sich das Element selbst wieder beruhigt, oder du greifst selbst ein und versuchst es mit anderen Positionierungsarten.

      Hab lange genug gewartet, es scheint sich zu langsam zu entwickeln. ;-)
      Schön das du mir den Vorschlag machst, andere Positionierungsarten zu nutzen. Das Anliegen dieses Threads ist es nämlich, diese andere Arten herrauszufinden. Ich kenne nämlich keine mehr.

      MfG

      Franz

      1. Hallo Franz.

        In einem DIV mit 100% * 100% (also der ganze Bildschirm)
        Das glaube ich nicht.
        Warum nicht?

        Weil ein DIV nie im Leben Zugriff auf meinen Bildschirm haben kann.
        Suche einmal im Internet nach dem Begriff "Viewport" und dir wird sicher einiges klar werden.

        Das Anliegen dieses Threads ist es nämlich, diese andere Arten herrauszufinden. Ich kenne nämlich keine mehr.

        Also:

        Wir hätten da zum Ersten das althergebrachte text-align, was sich für alle Elemente anbietet, die regulär ausgerichtet werden sollen, ohne sie aus dem Dokumenten- (oder auch Text-) fluss heraus zu nehmen.

        Als zweites haben wir die Möglichkeit, Elemente floaten zu lassen. Dabei werden Elemente, wie bereits erwähnt, aus dem Dokumentenfluss herausgenommen und idealerweise mit margin an die gewünschte Stelle gebracht.
        Erwähnenswert ist hierbei, dass Elemente mit clear wieder in den normalen Dokumentenfluss zurück gebracht werden.

        Als letztes haben wir natürlich noch die Möglichkeit, die grundlegende postitionierung nach Bedarf zu ändern.
        Hierbei postionieren wir Elemente mit left, top, right oder bottom.

        War diese kleine Exkursion hilfreich?

        Gruß, Ashura

        --
        Selfcode: sh:( fo:) ch:? rl:( br:^ n4:& ie:{ mo:) va:) de:> zu:) fl:( ss:| ls:[ js:|
        Try it: Become an Opera Lover in 30 days
        1. Hallo,

          Weil ein DIV nie im Leben Zugriff auf meinen Bildschirm haben kann.

          Dann hatte ich das wohl falsch formuliert, eben 100% des "sichtbaren Browserinhalts", o.ä.

          Wir hätten da zum Ersten das althergebrachte text-align

          Damit kann ich aber (glaube ich) keine 2 Spalten erzeugen.

          Erwähnenswert ist hierbei, dass Elemente mit clear wieder in den normalen Dokumentenfluss zurück gebracht werden.

          Ich denke das war der richtige Tipp. Bin gerade am Testen.

          Als letztes haben wir natürlich noch die Möglichkeit, die grundlegende postitionierung nach Bedarf zu ändern.

          Geht nicht, da ich hier keine 50% Breite der restlichen Breite (nach margin-left) hinbringen kann.

          War diese kleine Exkursion hilfreich?

          Ich denke schon.

          Vielen Dank

          Franz