Kriegt man mit display:table nicht das Problem, dass die Spalten nicht mehr untereinander angezeigt werden können?
Sie können durch Media Queries untereinander angezeigt werden, falls erforderlich. Da die meisten Float-Layouts mit festen Breiten arbeiten, gibt es diesbezüglich keinen Unterschied zwischen Floats und CSS-Tabellen: Es sind Media Queries nötig, um sie zu serialisieren. Oder bei »Mobile First«: Es sind Media Queries nötig, um sie nebeneinander anzuzeigen.
Ich möchte eigentlich eine Mindestbreite angeben und dass bei Unterschreiten der Mindestbreite die Spalten untereinander angezeigt werden. Unabhängig vom Ausgabemedium, ich will das schließlich auch PC. Tatsächlich ärgert mich das als Anwender oft, wenn ich den Browser mal etwas kleiner mache, um mehrere Fenster nebeneinander zu haben.
Ich will, dass die Spalte eine entsprechende Länge hat, nicht dass sie nur so aussieht.
Was ist bei CSS der Unterschied zwischen »es sieht so aus« und »sie ist wirklich so lang«? In den meisten Fällen spielt er keine Rolle.
Es geht ganz einfach darum, dass es so eine Umsetzung viel näher an meinen Gedanken ist. Und wenn ich mal eine Website sehe, die ich nicht programmiert habe und eine Spalte sieht so aus als wäre sie entsprechend lang, dann bin ich erstmal verwirrt wenn sie es doch nicht ist - außer ich kenne die entsprechende Problematik. Es ist einfach überraschend und soetwas sollte man IMMER vermeiden, völlig unabhängig von der Programmiersprache.
Vom Aussehen her mag es erstmal keinen Unterschied machen, da hast du Recht.
Und wenn die Spalten immer mindestens bis zum Ende der Seite gehen sollen?
Das geht nicht mit Floats (ohne JavaScript), aber mit Flexbox und Tabellen.
Dann haben wir doch wieder die anderen Probleme, auch die von Matthias Aspel genannten.
an sich, warum sollte die drei Elemente denn einen Container haben?
Weil es eine Liste von Items ist, die in gewisser Weise angeordnet werden. Klar, das ist nicht notwendigerweise eine semantische Auszeichnung, aber Layoutsysteme erfordern diesen Container.
Eben und das ist mir zuwider. Wenn dir das egal ist, dann versteh ich auch, warum du mir so heftig widersprichst. Teilweise sind Container ja sinnvoll, aber eben nicht immer.
Wenn du mir kein Beispiel zeigen kannst (oder es anderweitig erklären kannst) dann bleibe ich eben bei meiner Meinung und die Diskussion ist für mich beendet.
Der Artikel, den ich verlinkt habe, beginnt mit einem Beispiel für display: table/table-cell, und der Rest des Artikels erklärt dieses:
http://www.digital-web.com/articles/everything_you_know_about_CSS_Is_wrong/Die Grundstruktur ist einfach:
<div style="display: table">
<div style="display: table-cell"></div>
<div style="display: table-cell"></div>
<div style="display: table-cell"></div>
<!-- … -->
</div>
Da findet kein Umbruch statt, wenn ich die Seite kleiner mache...