Hallo Mathias und alle Anderen!
Jetzt möchte ich doch auch noch meinen Senf zu dieser Diskussion dazu geben, auch wenn mir bewußt ist, dass meine Meinung zum Thema wenig Gleichgesinnte hat, und vielleicht teilweise auch etwas 'extrem' ist.
In meinen Augen liegt die Grundproblematik dieser ganzen Diskussion ganz woanders, nämlich darin, dass viele Leute meinen, das Internet MÜSSE ein universelles Medium sein. Unbestritten liegt sein Vorteil darin, dass es dies SEIN KANN. Mit anderen Worten, will sagen: In meinen Augen ist Presentation auch abhängig vom Inhalt. Und imho lässt sich nicht jeder Inhalt 'sinnvoll' auf jedem Ausgabegerät darstellen.
Natürlich kann man einem Handy-Surfer nicht 'verbieten' eine Site anzusurfen, aber ob das auch sinnvoll ist, ist doch eine ganz andere Frage.
@media handheld;
* {display: none;}
Dieser zwanghafte Versuch bei Layouts (egal mit welcher Technik), diese für Viewports von 100px bis unendlich zu gestalten, ist imho schon unsinnig (was nicht heissen soll, dass man da, wo es Sinn macht, die unterschiedlichen Möglichkeiten wie bspw. Mediastylesheets, einsetzen sollte).
Momentan müsste man im Besonderen Kritik an CSS-Layouts üben, denn diese sind i.d.R. nicht einmal so anpassungsfähig wie gängige halbwegs flexible Tabellenlayouts
Nana, Mathias, hier vergleichst du schlechte CSS-Layouts mit guten Tabellenlayouts.
Genau. Denn die gängige Argumentation für CSS-Layout vergleicht reale, schlechte Tabellenlayouts mit idealen, guten CSS-Layouts. Das konnte man im Jahr 2001 noch machen, denn damals waren schlechte Tabellenlayouts verbreitet und CSS-Layouts versprachen eine rosige Zukunft mit anpassungsfähigen Layouts.
Im Jahr 2005 ist CSS etabliert und Kritik an Layouttabellen tendenziell anachronistisch, aber in puncto anpassungsfähige Layouts hat sich das Web durch den CSS-Aufschwung nicht grundsätzlich verbessert.
Das sehe ich zwar vom Grundsatz her ähnlich, allerdings die Ursache dafür weniger beim Layouter, als bei den Programmen zur Anzeige/Ausgabe des selbigen. HTML & CSS so korrekt zu verwenden, wie es von der Theorie her angedacht ist, ist doch heutzutage defakto 'unmöglich'. Wenn man sich nur Mal alleine die Browser zur visuellen Ausgabe auf 'normalen' Monitoren/Displays anguckt: IE, Mozilla, Firefox, Opera, Safari, Konqueror und was weiß ich noch für andere! Dazu kommen noch unterschiedliche Betriebssysteme und wer weiß wie viele Versionen der jeweiligen Browser und jeder, aber auch wirklich jeder hat seine eigene 'fehlerhafte' und unvollständige Interpretation.
Daraus resultierend orientiert sich doch heutzutage ein Layout doch eher an einer halbwegs "Cross-Browserfähigkeit", als an irgendetwas anderem.
Erschwerend hinzukommt, dass es für kaum ein anderes Medium (wenn überhaupt) soviele verschiedene mögliche Aus-/Wiedergabegeräte gibt, wie für eine Webseite. Viele 'Webdesigner' haben die meisten davon wahrscheinlich noch nie gesehen, geschweige denn selber zum Testen zur Verfügung mit den unterschiedlichsten sich daraus ergebenden Konsequenzen (auf die ich hier nicht näher eingehen will).
Für CSS-Layout wurde ordentlich Werbung gemacht, aber niemand hat jemals klipp und klar gesagt: Starre Layouts sind und bleiben starre Layouts, ob mit Layouttabellen oder CSS realisiert. Wenn ihr das Layoutmittel, aber nicht eure Layoutkonzepte ändert, wird beim Wechsel zu CSS nicht das Erhoffte dabei herumkommen. Hinsichtlich Flexibilität bleiben die Vorteile von CSS sonst nur theoretisch, CSS löst die Probleme von starrem Layout nicht automatisch. Den meisten Seitenbesuchern bleibt lediglich die Ultima Ratio, alle Autorenstylesheets gänzlich abzuschalten oder ein umstürzlerisches Benutzerstylesheet hinzuzuschalten. Abgesehen davon, dass das für das ganz normale Surfen im WWW keine praktikable Option ist – der Benutzer will, dass die Seite von selbst unter der gegenwärtigen Umgebung problemlos lesbar ist –, ist das dem Normalverbraucher sowieso unmöglich. So bringt die Trennung von Layout und Markup letztlich wenig für die Anpassungsfähigkeit.
Genau!
Neben der Möglichkeit für verschiedene Ausgabemedien auch verschiedene Stylesheets zu benutzen, mangelt es imho in erster Linie zum einen an den Möglichkeiten von CSS selber, und zum anderen an deren Umsetzung in den Ausgabegeräten (wobei ich mich hier mangels genauerer Kenntnisse nur auf die oben aufgezählten Browser beziehen möchte). Man denke nur z.B. an so Dinge wie:
- vertikales Zentrieren
- mehrspaltiger Fließtext
- volle (Viewport-)Breite einer Box mit Border und/oder Margin und/oder Padding
- u.v.m.
Mir ist durchaus bekannt, dass vieles davon in CSS3 eingeführt werden soll/ wird. Eben - hat schon bis CSS3 gedauert und wann man es in der Praxis einsetzen kann, wage ich nicht einmal vorsichtig zu schätzen...!
Man kann auch bei Tabellenlayouts die Spaltenbreite in Pixeln festzementiert angeben, und man kann dies auch bei CSS-Layouts vermeiden.
Natürlich kann man das. Fakt ist, dass die meisten CSS-Layouts genausowenig wie die meisten Tabellenlayout auf festzementierte Größen verzichten.
Was natürlich nicht unbedingt so ideal ist. Wobei es imho halt schon bei vielen Inhalten 'sinnvol' ist, dass diesem Inhalt ein gewisser Mindestraum zur Verfügung steht, bzw. er sich bei mehr zur Verfügung stehendem Platz nicht unbegrenzt ausdehnt (Kenner werden jetzt anmerken:"Dafür gibbet doch min- & max-width"). Richtig! Aber auch hier bin ich der Meinung, dass dieses bis jetzt weder praxistauglich noch ausreichend ist. Wenn ich bspw. meinem 2-Spalten Layout, dessen Größe von der Schriftgröße des Users abhängt, einen Außenabstand geben möchte, dessen Größe mit zunehmender Schriftgröße kleiner wird, bin ich (mit CSS) schon am Ende!
Noch eine Anregung zum Schluß:
Das eigentliche Problem bei Layouts liegt ja nicht in der theoretischen Verwendung der jeweiligen CSS-Elemente, als vielmehr in den sich in der Praxis daraus ergebenden verschiedensten Anzeigeproblemen in den jeweiligen Browsern, insbesondere bei Kombination der einzelnen Elemente.
Dies sieht man ja auch hier im Forum an den vielen Beiträgen & Fragen. Da ein komplettes Layout mitunter recht komplex werden kann, ist es schon mit einigem Aufwand verbunden sich da rein zu lesen und nach möglichen Fehlern zu suchen. Oftmals kriegt man dann auch so Antworten wie "wenn ich deine Divitis sehe...", oder "warum machst du das so wie du es machst...", weil die Gründe vielleicht nicht auf den ersten Blick erkennbar sind (mir fehlen gerade bei diesen Leuten immer die Beispiele dafür, wie man es anders "besser" machen könnte).
Daher würde ich gerne ein Projekt starten nach dem Motto "Bessere Layouts mit CSS - oder auf der Suche nach dem perfekten Layout", welches entsprechend kommentierte Beispiele enthält und wo Interessierte im Vorfeld diskutieren können, welche Layouttechnik für ein bestimmtes Ziel am idealsten ist.
Gruß Gunther