Hi,
Da ich diese dynamisch errechne, ist zum Definitionszeitpunkt die Gesamtbreite normalerweise nicht bekannt (könnte man natürlich u.U. vorab schonmal berechnen).
wie berechnest Du das denn? HTML und CSS sind keine Programmiersprachen und wenn Du nicht ausschließlich Bilder verwendest, können Dir die exakten Dimensionen auch nicht bekannt sein. Bleibt Javascript - Nur Pech, wenn das deaktiviert ist.
IE: das letzte Element einer Zeile hat immer einen Abstand von 2-3 Pixeln zum Vorletzten.
Hört sich nach dem 3-Pixel-Bug oder falsch interpretierten Whitespaces an.
Dummerweise muss das float:left entfallen, da sonst die 2.te Zeile nicht realisierbar ist bzw. der Anfang von der Bildschirm-Auflösung abhängt.
Und wie sollte das sonst (ohne Positionierung) gehen?
Firefox/Opera:
Noch schlimmer, da das letzte Element (ohne float:left) auf die neue Zeile hüpft und dort dessen Inhalte vom nächsten Feld überschrieben werden.
Das klingt nach absoluter Positionierung und Berücksichtigung nur des falschen MS-Boxmodells.
- Variante: Definition mit 'absolute'
Das umgeht zwar das Problem mit dem letzten Feld, sodass eine einheitliche Darstellung auf IE u. Firefox/Opera erfolgt, dafür verliert man jedoch die Möglichkeit der zentrierten Darstellung,
oder etwa nicht?
Die 'absolute' Definition steht ja in der Hierarchie über dem Elternelement, welches für die Zentrierung nötig wäre und würde somit ignoriert.
Nein. Lies bitte genauer nach, wonach sich die absolute Positionierung richtet.
hat jemand ne Idee wie ich eine tabellarische Struktur am besten mit CSS-Mitteln umsetze ohne dass Browser-Unterschiede zum Tragen kommen?
Ja. Verwende eine Tabelle oder entscheide Dich für ein sinnvoll umsetzbares CSS-Layout.
Geht das überhaupt, wenns dynamisch generiert wird (also Zeilen- und Spaltenzahl ab und zu verändert wird)?
CSS kennt keine Spaltenaufteilung - abgesehen von der tabellarischen Darstellung, die ja vom IE nicht unterstützt wird.
Meine Test-Umgebung
IE: 6.0.29xxxxxxxxxxxxxxxxxxxxxxxxxxxx *g*
Mozilla: 1.0.3
Opera: 7.5.4
Da fehlt auf jeden Fall der Firefox oder ein aktueller Mozilla sowie der IE 5.5.
freundliche Grüße
Ingo