Hallo,
Ganz einfach: nimm dir eine Division, floate sie rechts und gebe ihr keine Breite. Sie ist ohne Inhalt nicht sichtbar. Wenn aber Inhalt drin ist, ist die Division genauso breit wie das längste Wort (weil selbiges nicht umgebrochen wird).
Das macht die Sache klarer, aber warum rechts fließen lassen, wenn die Spalte links sein soll? Witzig, dass du ein CSS beispiel verwendest ;)
War ja nur ein Beispiel =((
Eher nicht so kompliziert, weil ich Tabellen nur dann nutze, wenn ich bei CSS weniger Vorteile sehe. Ich selbst habe bis jetzt erst eine einzige (dynamische (PHP & MySQL)) Seite mit Tabellenlayout erzeugt und auch dort nur eine einzige Tabelle verwendet.
Nun, man sollte nicht immer nur nach der Anzahl der Vor- und Nachteile gehen sondern diese auch bewerten. Und den Nachteil der Tabelle, die Inhaltsstruktur zu zerstören, kann kein Vorteil wett machen.
Auch nach der Bewertung überwiegen die Vorteile...
Solche Angaben sind böse und unflexibel.
Wie kommst du darauf? Die Angabe von Maximalbreiten ist durchaus Sinnvoll, um z.B. die Zeilenbreite zu begrenzen. Das ist deshalb sinnvoll, weil Menschen Schwirigkeiten haben einen Text mit langen Zeilen zu lesen. Zudem verschlechtert es allgemein die Wahrnehmung des Inhalts.
Aber nicht für eine Navigation?!
Kopier dir mal den Quelltext vom Zen Garden und schreib in einen der Navigationspunkte mal "WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW" hinein. Der Text geht über die Navigation hinaus. Das ist imho schlecht und sollte wenn möglich vermieden werden. Dafür muss die Navigation ihre Größe ausschließlich dem Inhalt anpassen.
So lange Navigationspunkte müsste aber schon im grundliegenden konzept beachtet werden.
Nein! Nein, nein, nein, nein, nein!
Genau _das_ ist Aufgabe des Layouts. Ich will mir keine Gedanken darüber machen, ob ein Listenpunkt nun lang genug ist oder nicht. Dann kann ich gleich ein Pixelgenaues Layout entwerfen.
Ich möchte meinen Inhalt schreiben und schreiben und schreiben und den Rest soll gefälligst das Layout übernehmen. Dazu ist es da.
Anderes Beispiel: wie mache ich eine fixe Navigation (float:left; position:fixed) mit wie oben genannter flexibler Breite und einen Content, der rechts daneben liegt? Es geht schlicht und einfach nicht.
Es stimmt, dass der Zen Garden nicht das beste ist, was es gibt. Das Problem, dass Seiten nicht skalierbar sind ist auch ein bekanntes Problem, hat aber eher damit zu tun, dass diesem Aspekt früher kaum Beachtung geschenkt wurde.
Imho haben auf einer Seite em Angaben nichts zu suchen. Die einzige Ausnahmen machen Elemente, die eine fixe Größe haben müssen (z.B. Bilder) weil sie (noch) nicht skalierbar sind.
[url:http://forum.de.selfhtml.org/?t=168677&m=1100720@title=Dieser Thread hier] ist ein Beispiel dafür, wie es _nicht_ sein sollte. Hier hat Navigation (nach der ersten Antwort) eine feste Größe. Nagut, nicht fest sondern abhängig von der Schriftgröße, aber ansonsten doch fest. Wird nun ein längerer Listenpunkt hinzugefügt als die Navi lang ist, passt sie sich nicht an sondern der Text "overflowed".
Die angesprochene Lösung ist sicher nicht ideal, da stimme ich zu. Ich muss auch zugeben, Probleme mit Begriffen wie „Größe“ und „Länge“ zu haben. Breite (width) und Höhe (height) sollten die angemessene Terminologie fürs Webdesign sein.
Finde ich auch, einigen wir uns auf width und height
Das stimmt natürlich, aber in manchen Fällen lohnt sich der Aufwand nicht für diese Vorteile.
Nenn doch mal ein konkretes Beispiel, bei dem die Nachteile der Tabellen für dich überwiegen. (Ein Beispiel wie aus meinen anderen Beiträgen, bitte kein 0815 Layout, welches man mit CSS machen kann)