Die letzte HTML Spezifikation ist von 1999, also mittlerweile knapp zehn Jahre her. Auch wenn man das kaum mitkriegt, hat sich seitdem einiges bewegt bei der W3C. Nachdem zwischenzeitlich immer wieder an XHTML gearbeitet wurde, wird jetzt doch noch eine Version 5 von HTML erscheinen. Und die neue Version wird eine Vielzahl von Änderungen enthalten.
Die größte Änderung der neuen Version dürfte der Abschied von SGML sein. Dadurch wird zum zweiten Mal ein sehr alter Standard verabschiedet, welcher damals auch mit XHTML beseitigt wurde.
Generell kann man sagen, dass HTML5 deutlich näher am Nutzer entwickelt worden ist, als irgendeine HTML/XHTML Version davor. Den Dokumententyp beispielsweise kann man in Zukunft mit einem simplen <!dopytype html> angeben. Bisher sind hier Mammutzeilen wie diese keine Seltenheit:
Bei vielen Änderungen kommt es einem so vor, als würde die W3C einfach die aktuellen Seiten als valide erklären. So wird beispielsweise das Verlinken von Blockelementen, was man heute schon sehr oft sieht, nun nachträglich als valide erklärt. Das dürfte auch eine Folge davon sein, dass die Browserhersteller diesmal deutlich besser in den Prozess eingebunden worden sind, als in die neuen Versionen zuvor. Die Browserhersteller müssen diesmal also nicht 2 Standards, den Standard und den quasi-Standard der im Web verwendet wird, unterstützten, sondern der Standard wird dem quasi-Standard einfach angepasst.
Ein weitere große Änderung ist die native Unterstützung von Audio und Videodateien. Ist Audio und Video Material bisher ausschließlich mit Flash oder Silverlight anzusehen, so sieht der neue Standard vor, dass die Browser dass auch nativ beherschen. Die Idee ist sicherlich gut, scheitert aber vermutlich an den Codecs. Leider wurde bei HTML 5 bisher kein Codec vorgeschrieben und daher wird das ganze vermutlich im Sande verlaufen.
Auch bei Canvas bewegt sich wieder einiges. Mit Canvas würde vieles erleichtert werden, zum Beispiel kann man damit sehr einfach Graphen oder ähnliches zeichnen. Die Ansteuerung läuft dabei über JavaScript – dürfte sich also früher oder später dann auch in den JS Frameworks wieder finden. Natürlich kann man damit theoretisch deutlich mehr machen, als nur Graphen zu zeichnen. Leider blockiert auch hier der Internet Explorer die Entwicklung aktuell noch ziemlich. Eventuell wird man die Unterstützung dafür aber im Internet Explorer 9 finden.
Eine weitere Neuerung wird die Einführung von neuen Tags. Die meisten Tags sind Blockelemente wie <div> und sollen diesen <div> auch ersetzen. Wo zur Zeit noch häufig ein <div id=“navi“> anzutreffen ist, soll in zukunft ein <nav> stehen. Vorteile hätte das ganze natürlich besonders für Screenreader, aber auch Drucker und Handys. Durch die klare Definition der einzelnen Elemente wäre es für die Screenreader möglich den Content von der Navigation noch deutlich trennen zu können. Handys könnten beispielsweise den Header und die Navigation ausblenden und damit mehr Platz schaffen für den eigentlichen Content.
Natürlich würde sich, bei strikter Einhaltung der Standards, für Google auch einiges vereinfachen. Der Footer wäre klar definiert und die Links daraus könnten beispielsweise einfacher abgeschwächt werden. Aber wer wird sich daran schon strikt halten? Interessant dürfte es allerdings werden, wenn die großen CMSe auf HTML 5 umstellen.
Weitere Elemente sind beispielsweise: <article>, <header> und <footer>.
Auch bei den Formularen wird sich einiges tun. So soll es in Zukunft neber den drei bekannten Typen (Text, Checkbox, Submit Button) weitere Spezialvarianten geben. Beispielsweise soll es Feldertypen für eMail, die URL, die Telefonnummer und die Farbe (Colorpicker) geben. Auch ein Feldtyp für Datums- und Zeitfelder soll es geben.
Die Feldertypen sind zwar keine rasante Neuerung, schließlich gibt es das alles in JavaScript schon, dürfte aber doch in die richtige Richtung gehen. Vor allem dürfte man sich beim Einbau der einzelnen Funktionen viel Zeit sparen.
Auch zu erwähnen ist die Entscheidung Frames aus dem Standard zu streichen. Wer Frames umbedingt weiterhin braucht, kann Frames mit IFrames simulieren. Aber wer setzt schon noch wirklich auf ein Frame basierendes Layout?
HTML 5 führt auch ein neues Attribut namens contenteditable ein. Damit wird es möglich eine Seite zu bearbeiten. Übrigens hat hier Microsoft mal Erfindergeist bewiesen und das Attribut bereits seit dem IE 5.5 implementiert. Leider wurde aber nicht weitergedacht und es wurde kein Standard zum Speichern der bearbeiteten Dokumente spezifiziert.
Es stellt sich sowieso die Frage, wer von seinem angestammten Webeditor wie TinyMCE oder FCKeditor zu der (in meinen Augen unfertigen) HTML5 Lösung wechseln wird?
Auch wenn Web Storage nicht mehr explizit in HTML 5 spezifiziert wurde, so gibt es doch sehr viele Möglichkeiten Web Storage geschickt zu nutzen. Von daher dürften viele Web Applications in naher Zukunft auch ohne Google Gears offline funktionstüchtig sein.
In vielen Bereichen wurde also sinnvoll nachgearbeitet, wenn auch oft nur bereits bestehende JavaScript Lösungen in HTML umgeschrieben wurden. Für die Hobby Webdesigner dürfte das aber eine große Erleichterung sein. Durch die neuen HTML 5 Tags kann man darauf hoffen, dass auch sehbehinderte Menschen leichter Zugang zum Internet finden.