Es gibt verschiedene Versionen von HTML und XHTML, auf die ich im folgenden Text kurz eingehe. Eine ganze Reihe davon sind entweder veraltet oder noch nicht in Gebrauch. Wenn Sie die XHTML-1.0-Varianten strict, transitional und frameset wählen, haben Sie Ihr vollständiges Sortiment für den Profi- und Hausgebrauch.
In einer idealen Webstandards Welt würde sich alle Webdesigner, Browser und Tools an die Vorgaben des W3C halten. In der Praxis ist das leider nicht der Fall. Insbesondere der Internet Explorer macht in allen Versionen ständig Probleme. Eine Möglichkeit, auch diese Browser dazu zu bekommen, ein Design richtig anzuzeigen sind sogenannte Conditional Comments. Diese Technik gehört nicht zu den Webstandards, kann in der Praxis aber hilfreich sein.
Früher oder später trifft jeder Webdesigner auf einen sogenannten Browserbug. Eigentlich ist man sich sicher, dass man alles richtig gemacht hat, aber Tests zeigen, dass die Webseite in einem oder mehreren Browsern nicht so dargestellt wird wie gewünscht.
Mittlerweile haben wir genügend CSS-Wissen gesammelt, um uns Gedanken über das Grunddesign zu machen. Eine entscheidende Frage ist, wie sich unsere Seite in der Breite verhalten soll. In Frage kommen ein festes Layout, das immer dieselbe Breite einnimmt, oder ein flexibles Layout, das sich dynamisch dem Browserfenster anpasst.
CSS ist nicht nur zur Auszeichnung von Schrift oder zur farbigen Gestaltung da – mit CSS können alle Elemente auch im Raum positioniert werden. So kann ein ansprechendes Layout gestaltet werden – ganz ohne Stützkorsett aus Tabellen, wie es lange üblich war. Das hat den Vorteil, dass ein solches Layout später jederzeit leicht ohne Eingriff ins Markup verändert werden kann – nur durch Veränderungen in der CSS-Datei. So kann z. B. leicht ein Menü von links nach rechts versetzt werden – nur durch eine Änderung in der CSS-Datei und das auf allen Seiten gleichzeitig!