Patrick Andrieu: divs statt tables für Layouts

Beitrag lesen

Hallo Pock (und natürlich auch billy the gates und die anderen Beteiligten)!

als komplexere Layouts quasi nur mit tables zu machen waren.

Ich weiß nicht, wann "als" für Dich bedeutet, aber ich kann mich erinnern, dass es auch dam"als" nicht so einfach war. Schließlich sind Ausdrücke wie <selbstzitat title="im Archiv zu finden">"programmiertechnische Fehlgeburt"</selbstzitat> nicht umsonst gefallen!

Das fiel uns damals nur deswegen leichter, weil wir das ja alle eingermaßen beherrschten. Es gab ja schließlich nicht viel, was man anders hätte machen können. Aber ein Herumdoktoren wegen der anderen Darstellung in jenem oder diesem Browser gab es damals schon, gibt es heute noch, und ich befürchte, das wird es immer geben.

Ich habe mittlerweile aufgehört, Browser X oder Y als "Fehlgeburt" zu titulieren, mittlerweile nutze ich selbst vier oder fünf verschiedene. Man kann sich ob dieses oder jenes streiten, ob der eine dies richtig interpretiert oder nicht, auch die Entwickler sind nur Menschen, und ich (zwar kein Entwickler) zum Beispiel sehe einen Rahmen UM ein Bild HERUM (dafür ist es ja ein _Rahmen_) und nicht AUF einem Bild DRAUF (wie es der W3C anscheinend vorschreibt - Stichwort Box-Modell) - aber gut, es heißt ja "border", und die uns beherrschenden Anglophonen meinen ja vielleicht was ganz anderes als wir (ich meine die Deutschsprachigen) mit "Rahmen" oder wir (jetzt meine ich meine Landsleute) mit frz. "Cadre". So viel dazu, warum der IE den Border außerhalb der angegebenen DIV-Breite macht, sicher sitzt ein Franzmann oder ein Francokanadier bei Microsoft ;)

Und wie man früher eine andere Lösung gesucht hat (mit Tabellen), weil die erst gedachte nicht in allen Browsern funzte(TM), so macht man das auch mit CSS. Die Browser interpretieren viele CSS-Eigenschaften leider genauso unterschiedlich wie einst manch eine Tabelleneigenschaft. IE ist da eher etwas rückständig, vielleicht wird es mit Version 7 besser, aber wie es den Anschein hat, ist IE ohnehin auf dem Rückmarsch - trauern tue ich nicht.

Nichtsdestotroz haben in meinen Augen diejenigen recht, die gebetsmühlenarig wiederholen, dass Tabellen nur für tabellarische Daten da sind. Das Stichwort heißt - wie fast immer im Leben - Kompromisse machen. Wenn eine Idee nicht funzt(TM) sucht man sich halt eine andere, die fast genau zu dem selben Ergebnis (hier: der selben Darstellung) führt. Und man wird fündig. Schließlich bietet CSS eine Fülle von Möglichkeiten, die man einst mit den starren Tabellen gar nicht hatte.

Ich habe die neuen Seiten meiner Webpräsenz ohne Tabellen gestaltet. Das Layout ist drei Jahre alt (also: die Idee und meine ersten Tests), war aber nie online - bis seit 27.08.06 - 00.00 Uhr. Der Grund ist nicht, dass ich drei Jahre dafür gebraucht habe, sonder eher viel Faulheit meinerseits, wenn es um die eigenen Sachen geht, an manchen Wochen habe ich täglich dran gearbeitet - dazwischen waren oft viele Monaten untätigkeit - und zeitweise großes Desintersse (oder halt andere Interessen *lechz*). Nun jetzt sind die Seiten online: CSS/JS-DOM Layout, das auch ohne JavaScript sich einigermaßen zeigen lässt.

Gestern und heute habe ich den Bericht eines "Fremdautors" (der hier jedoch bestens bekannt sein dürfte *g*) vom Tabellenlayout auf CSS umgestellt. Ist sicherlich nicht das Gelbe vom (Atomic) Egg, aber bis auf eine Kleinigkeit, die ich morgen angehen werde, sieht es genauso aus wie das Original. Genauso? Nun ja, Pixelzähler werden hier und da feststellen, dass irgendwo irgendwas vielleicht mal ein oder zwei Pixel breiter/höher/sonstwas ist:

CSS-Seite (nur diese *.html*-seite, links u.U. nicht funktionierend): http://banzaii.homeip.net/scr/gironde/index.html *
Original mit Tables: http://www.atomic-eggs.com/scr/gironde/index.htm **

Mit Firefox und Mozilla (beide 4 Wochen alt), Opera 9.01 und IE 6 in etwa gleich.
Meine "sonstigen" Seiten: siehe Link bei meinem Namen und viel Spaß mit der Intro ;)

*) Wenn der Link nicht geht, bin ich halt nicht online... später versuchen. Für's Archiv: Dieser Link wird irgendwann zum DeadLink.
**) Wieder für's Archiv: Dieser Link wird es auch nicht lange geben - Poste neue Verlinkungen sobald diese eingerichtet!

Fazit: wo ein Wille ist, ist auch eine CSS-Lösung. Nicht verzagen. Weiter testen. Mit der Zeit kennt man seine Pappenheimer, weiß, wie damals auch mit Tabellen, welcher Browser da anders reagiert, und kann von vorne herein diese Fehldarstellungen vermeiden. Sicher, die eine oder andere Überraschung bleibt einem beschert, letztens musste ich den Opera-Leuten sogar einen Bug melden (die haben es aber genauso wenig nötig zu antworten, wie die M$-Schergen [(C) Bio]).

Das Wichtigste ist immer noch der Inhalt Deiner Seiten. Ob bei IE hier oben links ein Pixel fehlt, oder bei Opera dort einer zu viel ist, oder bei Firefox (verhält sich übrigens doch nicht synchron wie Mozilla, wie ich eben feststellen durfte) es noch etwas anders aussieht... den User interssiert es nicht, ob Deine Seite gut aussieht, wenn er nicht das finden kann, wonach er sucht. Wenn er findet, was er sucht, und er hat als willkommenen Nebeneffekt etwas "gut Aussehendes" (wobei... Geschmäcker sind verschieden), dann freut er sich um so mehr. Aber ein geniales Layout wird nichts gut machen, wenn die Informationen nicht erreichbar sind.

Viele Grüße aus Frankfurt/Main,
Patrick

--

_ - jenseits vom delirium - _