nehmen wir an, ich hätte 20 Kästen (DIVs oder ULs) mit fester Breite (250px), jedoch unterschiedlichen Höhen.
Diese liegen in einer übergeordneten Box, deren Breite sich nach der Browserfensterbreite richtet, jedoch eine feste Höhe besitzt (z.B. 600px).
Nichts davon ist absolut positioniert.
Zunächst sieht es einfach nur aus wie eine senkrechte Kette von Kästen.
Mein Ziel, das ich per JavaScript realisiert habe, jedoch gerne mit CSS verwirklichen würde:
Die senkrechte Kette soll an mehreren Stellen so umgebrochen werden, dass sich eine Art Spaltenlayout ergibt.
Jedoch ohne Absolutpositionierung o.ä., und auch so, dass auch bei Veränderung der Fensterbreite keine Spalte aus der umgebenden Box rechts hinausragt. Unten dürfen die Boxen ruhig beliebig hinausragen, Hauptsache horizontal entspricht die Gesamtbreite der Spalten ungefähr der Breite der umgebenden Box.
wenn Du das schon realisiert hast, kannst Du dann einen Link posten? Ich kann mir nämlich grad nicht wirklich vorstellen, was Du meinst.
Solltest Du darauf abzielen, dass Du die Kästen untereinander ohne Abstand positionieren willst, ohne dass da Freiräume bleiben, das geht mit CSS nicht. Die Frage war erst vor kurzem da.
Deine „Lösung“ verändert aber die logische Bedeutung des Inhalts und gruppiert Elemente, die nicht zusammengehören. Ist also in den wenigsten Fällen geeignet.
was?
etliche inhalte „spaltmäßig geordnet“ in einer box ohne
absolute…
für die „spalten“ brauchst halt html-elemente
Mit anderen Worten: „Du musst halt mogeln.“
Mit dem neuen CSS3-Multi-Column-Layout dürfte es schon gehen, aber das ist leider nicht browserübergreifend.
wie machst Du das mit JS?
Feststellen lassen, welche Box über den unteren Rand geht, diese um die gewünschte Spaötenbreite per margin-Eigenschaften nach rechts oben verschieben, der Rest zieht automatisch mit nach oben (muss aber per JS mit nach rechts verschoben werden). Dann wieder feststellen lassen, welche Box noch über den unteren Rand geht, usw.
Ein div beschreibt eine logische Gruppe, also Dinge, die zusammengehören.
Du gruppierst hier mehrere Listen, die eigentlich nicht zusammengehören und sagst damit, dass sie zusammengehören.
nicht trivial denn :
bei geschachtelten elementen nur mit einer reskursiven funktion wirklich echte werte lieftert und crossbrowser nciht vergessen. … bedenke da einiges realitve ist. … mehr auf http://w-w-w.ms/a4c7ii
nicht trivial denn :
bei geschachtelten elementen nur mit einer reskursiven
funktion wirklich echte werte lieftert und crossbrowser nciht
vergessen. … bedenke da einiges realitve ist. … mehr auf http://w-w-w.ms/a4c7ii
Stimmt, für solche Fälle habe ich zwei Funktionen getX() und getY().