molily: Artikel beurteilen

Beitrag lesen

Hallo,

* Layouttabellen passen sich nicht der Größe des Browserfensters an

Natürlich können sie das, wenn man sie dazu bringt.

* Layouttabellen sind für Screenreader absolut ungeeignet und im wahrsten
      Sinne des Wortes unleserlich

Ach, das musste kommen. Trotzdem ist es absoluter Unsinn. Bitte, lies dir Diskussionen im hiesigen Archiv von vor vier Jahren durch, da wurde diese Frage diskutiert. Das Thema Layouttabellen vs. CSS-Spaltenlayout ist heute durch und viele, die diese Diskussionen nicht erlebt haben, glauben, längst widerlegte Mythen wären Argumente.

Screenreader können Layouttabellen problemlos vorlesen. Der Punkt ist eher, dass bei Layouttabellen die Spaltenaufteilung die Reihenfolge im Quelltext determiniert, bei CSS-Layout ist das nicht der Fall (siehe http://aktuell.de.selfhtml.org/weblog/css-spaltenlayout).

* Tabellenlayouts sind äußerst ungeeignet für die Darstellung von HTML-Seiten
      auf PDAs und Handhelds.

Ist auch ziemlich undifferenziert, mittlerweile sind Browser verbreitet, die ohne Probleme Tabellen- und float-Layouts serialisieren bzw. zusammenstauchen können, man denke an Operas Small Screen Rendering.

Viele Umsteiger von Tabellenlayouts auf CSS-Layouts produzieren erstmal eine
ordentliche DIV-Suppe. Allerdings sind diese Umsteiger stolz darauf, dass sie
den Umstieg von Tabellenlayouts auf ein CSS-Design geschafft haben. Dabei
setzen sie ein CSS-Layout mit einem semantisch korrektem Design gleich.

»Semantisch korrektes Design« ist semantischer Unsinn. ;) Es geht einfach um bedeutungsreiche (das meint »semantisch«) Textauszeichnung. Das Wort Design würde ich nicht mit diesem Adjektiv belegen.

Diese DIV-Suppen sind oft nur geringfügig besser als Tabellenlayouts.

div-Suppen sind genausowenig semantische Auszeichnung, ja. Dennoch steckt hinter einer div-Suppe meist ein CSS-Layout, das entsprechend auch Vorteile gegenüber einer gleichwertigen Layouttabellen-Lösung hat.

<body>
  <div id="headline">Überschrift</div>

<div id="menu">
    <div> Menüpunkt 1 </div>
    <div> Menüpunkt 2 </div>
    <div> Menüpunkt 3 </div>
    <div> Menüpunkt 4 </div>
  </div>
  <div id="content">
    <div style="padding-bottom:1em">
      Absatz 1
    </div>
    <div style="padding-bottom:1em">
      Absatz 2
    </div>
  </div>
</body>

Klar, das ist natürlich künstlich zugespitzt. Ich finde, sowas geht am Kern des Problems vorbei. div-Suppe entsteht nicht (nur) bzw. eher selten, wenn jemand die anderen, passenderen, genaueren HTML-Elemente einfach nicht kennt und HTML nur als Markierungssprache sieht, die lediglich der Adressierbarkeit durch das Stylesheet dient. div-Suppe entsteht m.M.n. in der Praxis vor allem, wenn immer mehr Elemente als Angriffspunkte für CSS und JavaScript eingefügt werden - man sehe sich mal große Sites an. Einige Elemente davon sind je nach Komplexität der Gestaltung und für die JavaScript-Interaktivität nötig, andere div-Elemente sind überflüssig. Eine div-Suppe wie im obigen Beispiel ist da glaube ich weniger ein reales Problem, gegen das man anschreiben und Leute aufklären müsste.

Mathias