In meinen Augen ist das "Flickschusterei" auf der falschen Baustelle!
CSS ist als HTML-Ergänzungssprache konzipiert worden, um die jeweiligen HTML-Elemente entsprechend zu formatieren (Stichwort: Trennung von Inhalt und Design). Leider ist man dabei auch so vorschnell gewesen, oder hat nicht über die Reichweite der Entscheidung nachgedacht, auch die Positionierung mit einzubeziehen. Und hier fängt das Verhängnis an, denn wenn ich davon ausgehe, dass eine Textauszeichnungssprache wie HTML sich eben nur auf Text bezieht, dann erwarte ich eigentlich auch nur dafür relevante Elemente. Und Text besteht im wesentlichen meist aus Überschriften, Absätzen und einzelnen Wörtern. Zusätzlich können auch noch Bilder enthalten sein. Wobei man schon auf das erste Problem stößt. Denn Bilder sind eigentlich, was ihre Informationsübermittlung anbelangt, auf visuelle Ausgabemedien angewiesen.
Und eben bei diesen stoßen wir auch in erster Linie auf die Notwendigkeit der Positionierung von Inhalten (wohingegen bei den meisten anderen Ausgabemedien, wie etwa bei Screenreadern (aural) oder Braille lediglich die Reihenfolge wichtig ist).
In dem Bestreben auch diese Anforderungen mittels CSS umzusetzen, musste man ertsmal entsprechende Elemente in HTML hinzufügen, wie etwa das DIV-Element in HTML 3.2 oder das SPAN-Element in HTML 4.0. Diese "sinnfreien" Elemente stehen nach meinem Verständnis schon im Widerspruch zu einem semantisch korrekten Markup und dienen lediglich als "Krücke" für eine mögliche Positionierung von Inhalten mittels CSS.
Da aber für eine Positionierung von Inhalten die entsprechenden Gegebenheiten beim verwendeten visuellen Ausgabegerät/ -programm des jeweiligen Benutzers eine entscheidende Rolle spielen, kann man hier keine individuell zufriedenstellende Ergebnisse erreichen, ohne diese Gegebenheiten zu kennen.
Hier wäre also eine gewisse "interaktive" Programmlogik von Nöten, um dies zu ermöglichen, und zwar so, dass auch deren Zuverlässigkeit gegeben ist. Nicht wie etwa bei Javascript, welches man eben nicht zuverlässig für diese Zwecke einsetzen kann.
Ich bin der Meinung, dass man für diesen Zweck besser eine zusätzliche, dritte Sache ins Spiel bringen sollte - eine Layoutsprache!
Diese müsste eine Programm-Logik, sowie eine Kommunikation mit dem Browser zulassen. Ein weiterer Vorteil wäre, dass man durch die neue Einführung für alle Browserhersteller dieselben Startbedingungen hätte, auf keine Abwärtskompatibilität achten müsste und ältere Browser, getreu dem Motto "Was ich nicht verstehe, ignoriere ich!", damit auch kein Problem kriegen würden.
Diesen Ansatz erachte ich jedenfalls für wesentlich besser, als den Versuch, Dinge in CSS zu implementieren, für die es erstens nicht gedacht/ gemacht ist, und die in ihrer praktischen Umsetzung wahrscheinlich mehr neue Probleme aufwerfen dürften, als dass sie vorhandene lösen.
Aber auf mich hört ja keiner ;)
Gruß Gunther