23.01.06DIVlos sinnlos
Die Layout-Tabellen-Diskussion ist kaum überstanden, schon werden sehr merkwürdige Ansätze verbreitet. Die DIVlose Website. Das ist ungefähr genau so sinnvoll, wie der komplette Verzicht auf Tabellen oder das Ersetzen von Tabellenlayouts durch 1:1 Nachbildungen mit DIV. Eine Website, die aus einer UL besteht und versucht die Inhalte mit Hilfe LI zu strukturieren, stellt einen mehr als suboptimalen Ansatz dar und sollte nicht weiter verfolgt werden.
Ein Beispiel
Folgendes Beispiel versucht die Seitenstruktur mittels einer ungeordneten Liste (UL) nachzubilden. Die einzelnen Seitenbereiche sollen in den Listenelementen (LI) stecken.
Dieses Beispiel kann nicht zur Nachahmung empfohlen werden.
<ul id="rahmen"> <li id="header"> </li> <li id="content"> </li> <li id="sidebar"> </li> <li id="footer"> </li> </ul>
Abgesehen davon, dass sich die Seitenbereiche so nur schwer positionieren lassen, fehlt diesem Konstrukt so einiges. Auch wenn LI fast alle (X)HTML Elemente aufnehmen dürfen, außer DIV. Noch wilder wirds durch den Einsatz von Definitionslisten (DL). Der Ideengeber argumentiert hingegen mit der fehlenden semantischen Relevanz der DIV. Das stimmt, ist aber kein Grund dafür, auf sie zu verzichten.
Ein weiteres Argument gegen DIV sind, bei schlechter Umsetzung, extrem verschachtelte Seitenstrukturen ähnlich den Layouttabellen, die sich in einem Quellcodechaos und in der Folge größeren Dateien äußern. Das ist Divitis. Aber es gibt Mittel und Wege, der Divitis vorzubeugen und auch komplexe Layouts relativ schlank umzusetzen.
DIV sind unbedingt Bestandteil guter Websites
Gerade, weil DIVs keine semantische Relevanz besitzen, sind sie so gut geeignet, Websites optisch in verschiedene Hauptbereiche einzuteilen.
Denn bei dieser Einteilung über DIVs geht es um die optische Präsentation, die zunächst keinen Einfluss auf die Bedeutung der Inhalte hat. Für diese Zwecke stehen all die anderen Elemente zur Verfügung, um schließlich schöne und gleichzeitig inhaltlich sinnvoll strukturierte Websites zu produzieren.
Fazit
Natürlich geben die sich häufenden Fälle von Divitis - meist in einem fehlenden Verständnis standardkonformen Webdesigns begründet - Anlass dazu, alternative Methoden zu diskutieren. Meiner Meinung nach, kann dieses oben geschilderte Konstrukt keine wirkliche Diskussionsgrundlage bilden. Da müssen, wenn nötig, bessere Ansätze her.
Zum Thema Listen im Sinne der Barrierefreiheit einsetzen hat der Webstandard Heiko noch einen ausführlichen Artikel verfasst.








reieRMeister am Jan 24, 2006 | Reply
sehr netter Artikel. Ich hatte das Thema vor einiger Zeit von der anderen Seite her beleuchtet.
SilentWarrior am Jan 24, 2006 | Reply
Es gibt ja auch schon Leute, die Blogpostings mit einer Definitionsliste realisieren wollen — darüber kann man streiten, ich persönlich finde es ziemlich idiotisch.
Heiko am Jan 24, 2006 | Reply
Oliver Roick am Jan 24, 2006 | Reply
Birgit am Jan 24, 2006 | Reply
Eric am Jan 24, 2006 | Reply
Auch dieser Übersemantisierung muss vorgebeugt werden.
Jakob am Jan 25, 2006 | Reply
Kann mich dem Fazit nur anschließen. Bleibt zu hoffen, dass diese Idee schnell wieder verworfen wird und sich nciht wachsender Beliebtheit erfreut.
lg Jakob
Markus am Jan 25, 2006 | Reply
Das fände ich arg wirr. Dann doch lieber DIVs drumherumtaggeln…
Björn am Jan 25, 2006 | Reply
Danke Euch beiden für Eure Artikel zum Thema.
Heiko am Jan 26, 2006 | Reply
Kai Laborenz am Jan 26, 2006 | Reply
Gruß, Kai
m3nt0r am Jan 27, 2006 | Reply
Hatte mir letztens mal den DIVless link in mein delicious gepackt um mir das später nochmal in Ruhe durchzugehen, aber ich denke nun das ich mir das sparen kann ;)
Was den sinnvollen Einsatz von DIVs betrifft stimme ich dir zu. Ich sehe DIVs auch als Unterteiler - mehr nicht.
Aber es ist ja immer das gleiche mit den Leuten. Jetzt gibt es neuerdings kaum noch Table-layouts zum meckern.. da müssen nun halt die DIVs ran.. hachja..
Heiko am Jan 27, 2006 | Reply
Markus Wulftange am Jan 27, 2006 | Reply
Das erinnert mich gerade an ein Thema in einem Forum. Da erzählte ein Schüler/Student doch glatt, sein Professor habe ihnen weismachen wollen, ein HTML-Dokument dürfe nur ein „p“-Element besitzen. Der enthaltene Text müsse dabei mit Erzwungenen-Zeilenumbruch-Elementen in Absätze unterteilt werden.
m3nt0r am Jan 27, 2006 | Reply
Navigationselemente in Listen sind nichts böses, denn was kann mehr Sinn machen als die Dokumentenstruktur der Seite schon innerhalb einer geordnete Liste (OL) zu definieren?
1.Home,
2.Übersicht,
3.Kontakt.. etc..
Ich finde hier machen Listen am meisten Sinn.
Jens Meiert am Jan 28, 2006 | Reply
Ist in der Formulierung (wenn man “Inhalte” nicht sehr dehnt) und ohne konkrete Bedingung nicht richtig. Es ist durchaus denkbar und zeitgleich legitim, da semantisch korrekt, dass ein Dokument nur aus einer Liste besteht. Beispiel: Linkliste.
Nein. Diese Formulierung animiert dazu, unbedingt
div-Elemente zu verwenden, auch wenn sie fuer die Dokumentstruktur gar nicht benoetigt werden. Aus diesem Grund halte ich diese Aussage sogar fuer gefaehrlich.“
div-Elemente koennen Bestandteil guter Webseiten sein” wuerde ich hingegen sofort unterschreiben.Meine zwei Cent.
Björn am Jan 28, 2006 | Reply
Ich geh jetzt hierbei von Websites mit Design aus. Und da braucht man rein fürs Gestalterische DIV, die nicht die Logik des Dokuments beeinflussen. Rein für die optische Einteilung.
Natürlich kann es Dokumente geben, die nur aus einer Liste bestehen. Aber keine ganze Website.
Danke ;-)
Rafael am Feb 4, 2006 | Reply
ich habe die Diskussion verfolgt, und frage mich jetzt, ob meine Idee einer Seitenstruktur, in Form einer an den Explorer angelehnten Navigation mit Hilfe verschachtelter Listen, völliger Blödsinn ist?
Hier ein Demo-Beispiel: http://www.wuesl.de/_exsample/index.html
Siegfried am Feb 6, 2006 | Reply
Fabian am Feb 10, 2006 | Reply
Auch wenn LI fast alle (X)HTML Elemente aufnehmen dürfen, außer DIV.
Woher stammt denn diese Information, wenn ich fragen darf? Irritiert habe ich extra geforscht: In den DTD ist zu finden, dass ein LI %flow;-Elemente beinhalten darf. %flow; ist dabei nur eine Zusammenfassung von %block;- und %inline;-Elementen.