Einführung

Was ist HTML?

HTML steht für „Hypertext Markup Language“ und ist eine sog. Auszeichnungssprache zur Strukturierung von digitalen Dokumenten. HTML-Dokumente bilden dabei die Basis des World Wide Web. Ein HTML-Dokument definiert meistens eins-zu-eins eine Webseite. Eine Auszeichnungssprache ist aber keine Programmiersprache, sondern dient lediglich der Gliederung und semantischen Definition von Texten, Bildern und anderen Elementen. D. h. mit HTML kann definiert werden, ob ein Element auf einer Webseite z. B. eine Überschrift, ein Link oder normaler Text sein soll. Die Reihenfolge der Elemente im HTML-Dokument entspricht i. d. R. dann auch der Reihenfolge auf der Webseite. Außerdem können mit HTML auch sog. Metainformationen spezifiziert werden, wie z. B. Angaben zum Autor oder die zu verwendende Version von HTML. Die eigentliche Formatierung von Elementen erfolgt mit CSS (Cascading Style Sheets). Mit CSS wird definiert wie Elemente dargestellt werden sollen, z. B. Farbe und Schriftgröße bei Text.

Wer ist verantwortlich für HTML?

HTML wurde 1989 im Rahmen eines Projekts am CERN (Europäische Organisation für Kernforschung) von Tim Berners-Lee in Zusammenarbeit mit Robert Cailau entwickelt. Ziel des Projekts, aus dem das World Wide Web hervorging, war es Forschungsergebnisse flexibler zwischen verschiedenen Forschungseinrichtungen austauschen zu können. HTML wird derzeit vom „World Wide Web Consortium“ (kurz W3C) und der Web Hypertext Application Technology Working Group“ (kurz WHATWG) weiterentwickelt. Das W3C ist eine internationale Vereinigung zur Standardisierung von Techniken im World Wide Web und wurde 1998 am MIT gegründet. Gründer und Vorsitzender des W3C ist Tim Berners-Lee, der als der Erfinder des World Wide Web gilt. Die WHATWG wurde 2004 gegründet und hat das Ziel bestehende Technologien des World Wide Web weiterzuentwickeln. Die WHATWG ist jedoch nicht wie das W3C unabhängig, sondern wird von verschiedenen Unternehmen, wie Mozilla, Opera und Apple, betrieben. Die Entstehung der WHATWG begründete sich darauf, dass von einigen Unternehmen die Standardisierung von Web-Technologien durch das W3C zu langsam und schwerfällig erachtet wurde. Heute arbeiten das W3C und die WHATWG sehr eng zusammen, u. a. alleine deswegen, weil die von der WHATWG entwickelten Standards vom W3C kontrolliert und offiziell standardisiert werden.


Wie funktioniert HTML?

Client-Server-Prinzip

Mit HTML werden die Webseiten im World Wide Web erstellt. Bereitgestellt werden die HTML-Dateien von sog. Webservern, die darauf spezialisiert sind viele Anfragen zu beantworten und die HTML-Dateien an die anfragenden Programme zu übertragen. Für das Anfragen, Empfangen und Darstellen von HTML-Dateien werden Webbrowser verwendet. Für die Kommunikation zwischen Webserver und Webbrowser wird das Protokoll HTTP, bzw. die verschlüsselnde Variante HTTPS, verwendet.

Browser-Engine

Das Programm, das innerhalb eines Browsers den HTML-Code in eine darstellbare Webseite umwandelt, nennt sich Browser-Engine (auch HTML-Renderer oder Rendering-Engine). Zur eigentlichen Formatierung (Größe, Farbe, etc.), für die HTML nicht zuständig ist, werden sog. Cascading Style Sheets (CSS) verwendet. Die Stylesheets werden i. d. R. mit CSS beim Webdesign zusammen mit den HTML-Dokumenten erstellt. Wird keine CSS-Datei angegeben, verwenden Browser ihre eigenen Standard-Stylesheets. Eine Browser-Engine verwendet die Struktur und semantische Definitionen der Webseiten-Elemente aus HTML-Dokumenten und die Design-Definitionen aus CSS-Dateien und erstellt daraus die eigentliche Webseite.

Parser

Der Vorgang bei dem aus dem HTML-Dokument die Webseiten-Struktur entsteht wird als Parsen bezeichnet. Auch das Umsetzen der Definitionen aus dem CSS-Dokument wird als Parsen bezeichnet. Somit gibt es für die HTML-Dokumente und für die CSS-Dokumente in der Browser-Engine jeweils einen Parser.

Document Object Model

Beim HTML-Parsing wird basierend auf dem HTML-Dokument ein sog. „Document Objekt Model“ (kurz DOM) erstellt. Das DOM stellt die Webseiten-Struktur als hierarchischen Baum dar. Mit einer von Browsern unterstützten Programmiersprache (i. d. R. JavaScript), kann über das DOM auf die einzelnen Elemente einer Webseite zugegriffen und diese manipuliert werden.

Aufbau einer Browser-Engine

Eine Webseite besteht also i. d. R. aus HTML-, CSS- und JavaScript-Dateien, die von einem Webserver an einen Webbrowser übertragen und von der Browser-Engine des Webbrowsers zur eigentlichen Webseite zusammengesetzt werden. Eine Browser-Engine besteht zusammenfassend also mindestens aus einem HTML-Parser, einem CSS-Parser, einer JavaScript-Engine und einer Schnittstelle (API), über die der Browser auf die Browser-Engine zugreift. Durch diesen flexiblen Aufbau ist es auch möglich, dass verschiedene Browser die selbe Browser-Engine verwenden können.

Die bekanntesten Browser-Engines

Die folgende Tabelle zeigt die bekanntesten Browser-Engines und ihre hauptsächliche Verwendung:

Browser-Engine Verwendung Bemerkungen
WebKit  Safari, (Chrome bis Vers. 27)  
Blink Opera (ab Vers. 15), Chrome (ab Vers. 28) 2013 von Webkit abgespalten
Gecko  Firefox  
Trident  Internet-Explorer für Windows  
Tasman  Internet-Explorer für Macintosh  
EdgeHTML  Microsoft-Edge für Windows 10  

Versionen von HTML

HTML wurde erstmals 1989 von Tim Berners-Lee am CERN vorgestellt. Die folgende Tabelle enthält eine Aufzählung der wichtigsten Versionen von HTML:

Version Erschienen Bemerkungen
HTML (ohne Vers.-Nr.) Nov. 1992 Urversion, unterstützte nur Text
HTML (ohne Vers.-Nr.) Apr. 1993 Attribute, fette und kursive Darstellung, Bilder
HTML 2.0 Nov. 1995 Formulartechniken
HTML 3.0 Nie erschienen Vor Einführung veraltet
HTML 3.2 Jan. 1997

Tabellen, Textfluss um Bilder,

Einbindung von Java-Programmen

HTML 4.0 Nov. 1997 Stylesheets, Skripte, Frames
HTML 4.1 Dez. 1998 Standard bis 2014
HTML 5.0 Okt. 2014

Erweiterung von HTML 4.1,

Zusammenführung mit XHTML

Parallel zu HTML wurde im Januar 2000 XHTML (Extensible Hypertext Markup Language) als Erweiterung von HTML eingeführt. Bei der immensen Zahl an Webseiten im World Wide Web kommt es immer wieder vor, dass HTML-Dokumente Syntaxfehler enthalten. Damit diese Seiten trotzdem angezeigt werden können, sind Browser sehr tolerant gegenüber HTML-Syntaxfehlern programmiert worden. U. a. um diesem Kreislauf entgegenzuwirken, wurde XHTML entwickelt, welche strengere Regeln zur Syntax beinhaltet. Das W3C hat die Arbeit an XHTML aber 2009 eingestellt, weil XHTML in den darauf folgenden Jahren durch HTML5 ersetzt werden soll.

Quellen