HTML5

aus Wikipedia, der freien Enzyklopädie

(Weitergeleitet von HTML 5)
Wechseln zu: Navigation, Suche
Achtung!
Die Neutralität dieses Artikels oder Abschnitts ist umstritten. Eine Begründung steht auf der Diskussionsseite im Abschnitt „NPOV - keine Negativkritik“. Weitere Informationen erhältst du hier.
Lückenhaft In diesem Artikel oder Abschnitt fehlen folgende wichtige Informationen: Kritikpunkte an HTML5 werden nicht dargestellt.
Du kannst Wikipedia helfen, indem du sie recherchierst und einfügst. Weitere Informationen erhältst du hier.

Die Hauptautoren wurden noch nicht informiert. Bitte benachrichtige sie!

HTML5[1] ist der Entwurf einer Spezifikation, die sich selbst als Obermenge der bestehenden Standards HTML 4.01, XHTML 1.0 und DOM HTML Level 2 definiert. Nach Fertigstellung soll HTML5 diese Standards ersetzen[2].

Inhaltsverzeichnis

[Bearbeiten] Entstehung

Ein erster Vorschlag für HTML5 wurde zunächst Mitte 2004 von der WHATWG unter dem Namen Web Applications 1.0 veröffentlicht.

Ende 2006 hat Tim Berners-Lee angekündigt, dass eine neue Arbeitsgruppe entstehen wird, die HTML weiterentwickeln soll.[3] Damit hatte sich das W3C Konkurrenz im eigenen Hause geschaffen, da man hier auch an der HTML-ähnlichen Sprache XHTML 2.0 arbeitete, ein rein XML-basiertes Format zur Seitenauszeichnung. Im Juli 2009 wurde jedoch bekanntgegeben[4], dass dessen Entwicklung Ende 2009 eingestellt wird.

Zwischen November 2006 und März 2007 wurden daher die vorhandenen Arbeitsgruppen beim W3C umgestaltet. Die neue HTML-Arbeitsgruppe soll eine Sprache entwickeln, die sich an der klassischen HTML-Syntax orientiert, aber auch als XML-Formulierung verwendet werden kann. Zudem sollen beide Sprachvarianten eine sehr ähnliche Speicherabbildung der Sprache ermöglichen (d. h. eine Wiedergabe durch das DOM).

In einer Abstimmung im Mai 2007 haben die Mitglieder der HTML-Arbeitsgruppe entschieden, dass die Spezifikation Web Applications 1.0 der WHATWG als Startpunkt zur Diskussion und Weiterentwicklung von HTML verwendet wird.[5]

Am 22. Januar 2008 hat das W3C den ersten Working Draft (Arbeitsentwurf) von HTML5 veröffentlicht.[6] Am 10. Juni 2008 folgte der zweite Arbeitsentwurf, in den erstmals die Web-Forms-2.0-Spezifikation eingebunden wurde; am 12. Februar 2009 der dritte; am 23. April der vierte; am 25. August der fünfte und am 7. Dezember der sechste.

Die Spezifikation selbst weist darauf hin, dass bestimmte Abschnitte ausgereifter sind als andere. Von den reiferen Neuentwicklungen sind einige bereits in aktuellen Browserversionen enthalten und dürfen ausdrücklich verwendet werden.[7]

[Bearbeiten] Ziele

Bei der Entstehung der HTML-Arbeitsgruppe wurde festgelegt, welche Ziele verfolgt werden und was die Spezifikation enthalten soll.[8] Ein kurzer und unvollständiger Überblick:

  • Eine Sprache, die sich aus HTML 4.01 entwickelt hat.
    • Diese Sprache muss als klassisches HTML, als XML-Formulierung und als DOM-Abbildung verwendet werden können.
    • Für die Variante auf Basis von klassischem HTML soll ein Fehlerüberprüfungswerkzeug zur Verfügung stehen.
    • Die DOM-Abbildung der Sprache muss Programmierschnittstellen zur dynamischen Arbeit mit dieser Sprache besitzen.
  • Schnittstellen zur Arbeit mit verknüpften Multimediainhalten.

Als ersten öffentlichen Arbeitsentwurf hat die HTML-Arbeitsgruppe inzwischen die „HTML Design Principles“ (Sprachgestaltungsprinzipien) veröffentlicht. Diese enthalten weitere Ziele und Richtlinien, anhand derer entschieden werden soll, ob etwas Altes verbessert werden kann oder ob etwas neu entwickelt werden soll. In letzterem Fall gibt es Richtlinien, was eine Neuentwicklung können muss (z. B. alternativen Inhalt für Multimediaobjekte zur Verfügung stellen).

[Bearbeiten] Aufbau

Die aktuelle HTML-Version (4.01) wurde 1997 zur W3C-Empfehlung gekürt und definiert nur die Sprache als SGML-Anwendung. Zu HTML 4.01 gesellten sich in den letzten Jahren weitere Empfehlungen, beispielsweise XML und das DOM.

HTML 4.01 wurde mit Hilfe von XML neu formuliert, woraus XHTML 1.0 entstand. Beide Sprachen besitzen ein identisches Vokabular. Zudem wurde auf DOM-Basis ein HTML-DOM spezifiziert, das die dynamische Manipulation von HTML-Dokumenten erlaubte.

Als Ergebnis dieser zahlreichen Veröffentlichungen gibt es drei Spezifikationen, die sich mit HTML, XHTML und dem DOM beschäftigen.

HTML5 ändert dies. Der aktuelle Entwurf definiert nicht nur HTML5 als eigene Sprache, sondern ein allgemeines Vokabular, das als HTML, XHTML und als DOM-Abbildung nutzbar ist.

Ziel ist es, die Unterschiede zwischen den Sprachausprägungen zu verringern und eine bessere Zusammenarbeit der Komponenten zu erreichen.

[Bearbeiten] HTML5

HTML ist bis einschließlich Version 4.01 eine SGML-Anwendung, jedoch verfügen selbst moderne Webbrowser über keine „echten“ SGML-Parser, sondern nur über HTML- bzw. Tag-Soup-Parser. Daher können bestimmte syntaktische SGML-Regeln in HTML nicht praktisch genutzt werden.

HTML5 basiert nicht mehr auf SGML, stattdessen wird eine eigene HTML-Syntax definiert, die sich zwar an dem klassischen, SGML-basierten HTML orientiert, aber auch Bereiche wie Fehlerbehandlung neu definiert. Gerade dabei versucht die Spezifikation, sich an den bereits vorhandenen Implementierungen der Browser zu orientieren, damit die Syntax rückwärtskompatibel bleibt. So werden die Browser zwar Veränderungen vornehmen müssen, damit die Sprache browserweit identisch verarbeitet werden kann, aber auch heute schon können viele HTML5-Features zumindest theoretisch (da noch nicht implementiert) von den aktuellen Browsern verarbeitet werden.

[Bearbeiten] XHTML5

Die Spezifikation von XHTML 1.0 erlaubt es unter Berücksichtigung einiger Regeln, Dokumente dieser Version mit dem Medientyp text/html zu versenden. Das ist notwendig, damit XHTML-Dokumente auch von Browsern wie Microsofts Internet Explorer und Lynx verarbeitet werden können (sie werden dann jedoch als HTML verarbeitet).

In der Praxis gibt es einige Unterschiede zwischen „echtem“ XHTML und solchem XHTML, das als text/html versendet wird. HTML5 möchte diese Unterschiede verringern, um einen problemlosen Übergang zwischen den Sprachvarianten zu ermöglichen.

XHTML5 ist ein XML-Format und unterliegt als solches den Regeln zur Verarbeitung von XML-Dokumenten. Auf diese hat die HTML5-Arbeitsgruppe keinen Einfluss, daher werden Kompromisse für die HTML-Formulierung und dem DOM gemacht.

Die WHATWG hat eine Seite mit Unterschieden zwischen HTML5 und XHTML5 erstellt. Siehe [9].

[Bearbeiten] DOM 5

Die gesamte HTML5-Spezifikation ist durch die DOM-Terminologie geprägt.

Zwar sind nicht alle Benutzeragenten (Darstellungsprogramme, Suchmaschinen) DOM-fähig, HTML5 definiert jedoch auch, wie diese Programme sich verhalten müssen, wenn sie auf HTML5-Dokumente stoßen.

Das Dokumentobjektmodell selbst erfährt ebenfalls Anpassungen und Erweiterungen in der Spezifikation.

Zukünftig sollen alle HTML-Elemente (die im Gegensatz zu XHTML-Elementen über keinen Namensraum verfügen) dem XHTML-Namensraum (http://www.w3.org/1999/xhtml) angehören.

[Bearbeiten] Der Sprachumfang

HTML5 definiert zahlreiche Elemente und Attribute, die als Sprachkern aufgefasst werden können. Vergleichbar ist dieser mit der HTML-4.01-Variante Strict.

Die Spezifikation soll aber in Zukunft auch definieren, wie ältere Elemente und Attribute verarbeitet werden sollen. Denn ein HTML5-Browser soll auch problemlos mit bereits vorhandenen Webseiten umgehen können, die nicht mit den Regeln dieser Sprache geschrieben wurden.

[Bearbeiten] Unterschiede zu HTML 4.01

Einige der bisher zu erwartenden Unterschiede sind:

[Bearbeiten] Strukturierende Elemente

article
Das article-Element umfasst einen unabhängigen Abschnitt, der jedoch im Kontext zu den Vorfahrelementen steht. Damit sind z. B. Nachrichtenartikel, Blog- oder Foreneinträge gemeint.
aside
Bezeichnet Inhalt, der thematisch zum umschließenden Inhalt passt, aber nicht direkt dazugehört. Ein politischer Nachrichtentext könnte in einem aside-Element Querverweise zu ähnlichen Nachrichten beinhalten.
dialog
Ein speziell für Dialoge eingeführtes Element.
figure
Das figure-Element erlaubt es, ein bestimmtes Medium (z. B. Bilder, Videos etc.) mit einer Bildunterschrift zu versehen.
footer
Das footer-Element definiert eine Fußzeile für den aktuellen Abschnitt (z. B. in einem article-Element) und gibt z. B. Auskunft über den Autor oder die Erstellungszeit des Textes.
header
Das header-Element definiert den Kopfbereich für den aktuellen Abschnitt (z. B. in einem section-Element). Neben einer Überschrift kann es auch weitere Informationen, z. B. Versionsdaten enthalten.
nav
Dieses Element umschließt einen Navigationsbereich. Damit sind nicht nur Verweise zu anderen Seiten eines Webauftritts gemeint, sondern z. B. auch Verweise die auf Abschnitte innerhalb eines Dokuments zeigen (wie in der Wikipedia).
section
Ein section-Element gruppiert thematisch zusammenhängenden Inhalt und besitzt meist einen Kopf- und Fußbereich. Anhand einer typischen Webseite wären Beispiele für ein section-Element ein Vorstellungs-, ein Nachrichten- und ein Kontaktbereich.

[Bearbeiten] Elemente zur Datendarstellung

audio, video
Audio- und Videodateien sollen zukünftig mit diesen Elementen eingebunden werden. HTML5 stellt zu diesen Elementen einige Schnittstellen bereit, z. B. um die Wiedergabe steuern zu können.
embed
Mit dem embed-Element sollen Anwendungen und interaktive Inhalte eingefügt werden. Das Element ist die Standardisierung eines bisher proprietären Elements.
mark
Das mark-Element stellt hervorgehobenen Text dar. Dies ist nicht zu verwechseln mit betonten Texten. Stattdessen geht es hier z. B. um Text, der von einer Suchmaschine gefunden wurde und sichtbar markiert wird, sodass er schnell von Benutzern und deren Darstellungsprogrammen gefunden werden kann.
meter
Das meter-Element stellt einen Anteil seinem Maximum gegenüber. Verwenden kann man dieses Element z. B. um anzuzeigen, wie gut ein Suchergebnis im Vergleich zum Suchwort ist, wie gut ein Produkt im Vergleich zur besten Bewertung abschneidet etc.
source
Mit diesem Element können für ein Medienelement verschiedene Quellen angegeben werden, aus denen das Darstellungsprogramm die passende aussucht.
time
Das time-Element wird verwendet, um Zeitangaben auszuzeichnen und Zeitangaben mit Metadaten auszustatten, sodass ein Browser damit z. B. einen interaktiven Kalender erzeugen kann.

[Bearbeiten] Anwendungselemente

canvas
Das canvas-Element erzeugt eine Zeichenoberfläche, auf der mit Hilfe von DOM-Methoden gezeichnet werden kann. Die Spezifikation sieht nur eine zweidimensionale Zeichenoberfläche vor, geht aber davon aus, dass in Zukunft auch dreidimensionale Kontexte eingeführt werden könnten.
progress
Das progress-Element gibt den Fortschritt einer bestimmten Aufgabe wieder. Das Element wird ebenfalls mit dem DOM gesteuert. Anwendungsbeispiele sind z. B. der Fortschritt bei einer mehrseitigen Umfrage.

[Bearbeiten] Formulare

Auch für Formulare wurden einige Neuerungen definiert. Ursprünglich wurden sie in einer getrennten Spezifikation entwickelt, die Web Forms 2.0 hieß. Seit der Aufnahme in HTML5 wurde die getrennte Weiterentwicklung von Web Forms 2.0 eingestellt [10]. Diese Spezifikation ist bereits sehr ausgereift und bringt z. B. diese neuen Features:

  • Neue Eingabetypen, z. B. für E-Mail-Adressen, Internetadressen, Zeitangaben, etc. so dass diese vom Browser auf syntaktische Korrektheit geprüft werden können.
  • Eingabefelder können als Pflichtfeld definiert werden.
  • Eingabetemplates können erstellt werden und dynamisch hinzugefügt werden (z. B. um ein Bestellformular um mögliche Einträge zu erweitern).
  • Datenlisten, z. B. um ein verstellbares Kontrollobjekt zu erzeugen mit dem beispielsweise die Lautstärke eines audio- oder video-Elements bestimmt werden kann.
  • Klärung wie CSS-Eigenschaften sich auf Formularelemente auswirken.

[Bearbeiten] Umdefinierte Elemente

Einige Elemente wurden umdefiniert, um ihrer Anwendung zu entsprechen.

i
Früher erzeugte das Element kursiven Text. Jetzt sollen damit Texte gekennzeichnet werden, die üblicherweise kursiv geschrieben werden, z. B. Text in einer anderen Stimm- oder Stimmungslage, Gedanken, usw.
b
Früher formatierte das Element Text fett. Nun soll damit Text gekennzeichnet werden, der zwar stilistisch hervorgehoben werden soll, jedoch keine wichtigere Bedeutung hat als der Rest des Textes, z. B. Schlüsselwörter, Produktnamen etc.
em
Dieses Element zeichnet weiterhin Text aus, der betont werden soll. Die Betonung verstärkt sich jetzt jedoch, wenn dieses Element ineinander verschachtelt wird.
hr
Diente zunächst der Erzeugung einer Trennlinie. Nun symbolisiert diese Trennlinie einen thematischen Umbruch zwischen Absätzen.
small
Früher wurde damit Text kleiner als normal formatiert. Jetzt soll Kleingedrucktes damit ausgezeichnet werden, z. B. Urheberechtshinweise, Nachteile durch Sternchenreferenzierung, Rechtseinschränkungen.
strong
Früher bedeutete diese Auszeichnung starke Betonung. Diese wird nun von verschachtelten em-Elementen übernommen. Das strong-Element zeichnet jetzt große Wichtigkeit aus.

[Bearbeiten] Wieder erlaubte Elemente

Das Attribut start des ol-Elements und das Attribut value des li-Element sind nun wieder Teil der Kernsprache.

[Bearbeiten] Neue DOM-Methoden

Neben den Methoden zur Steuerung von audio- und video-Elementen wurde auch eine Methode namens getElementsByClassName hinzugefügt. Diese Methode stellt alle Elemente einer bestimmten Klasse innerhalb eines Dokumentes zusammen (mehrere Klassenangaben gleichzeitig sind möglich). Diese Funktionalität ist auch jetzt schon durch JavaScript umsetzbar, doch eine im Browser implementierte Version würde die Aufgabe schneller und effizienter erledigen.

[Bearbeiten] Entfernte Elemente und Attribute

Folgende Elemente wurden entfernt:

acronym
Stattdessen soll nur noch das abbr-Element für Abkürzungen verwendet werden, da es allgemeiner ist und das acronym-Element alleine ebenso wenig die vielseitigen Akronyme wiedergeben kann.
big
tt

Auch einige Attribute wurden entfernt. Stark kritisiert wurde in dieser Hinsicht das Fehlen der Attribute summary des header-Elements und axis, welche Tabellen zugänglicher machen sollen. Da die Spezifikation jedoch noch ein Entwurf ist, ist unklar, ob diese Attribute noch hinzugefügt werden.

In XHTML5 (Mime-Type application/xhtml+xml ) ist das noscript-Element nicht mehr erlaubt, da das Elementmodell nicht mit den XML-Verarbeitungsregeln vereinbar ist. In HTML5 (Mime-Type text/html) ist noscript weiterhin erlaubt.[11]

[Bearbeiten] Weblinks

[Bearbeiten] Quellen

  1. Henri Sivonen: Spelling HTML5. In: The WHATWG Blog. 10. September 2009, „What’s the right way to spell “HTML5”? The short answer is: “HTML5” (without a space).“, abgerufen am 20. Oktober 2009 (englisch).
  2. Anne van Kesteren: HTML 5 differences from HTML 4, Introduction. In: HTML 5 differences from HTML 4. 25. August 2009, „HTML 5 will replace these documents. [DOM2HTML] [HTML4] [XHTML1]“, abgerufen am 28. Januar 2010 (englisch).
  3. Tim Berners-Lees Blogeintrag „Reinvent HTML“ http://dig.csail.mit.edu/breadcrumbs/node/166
  4. XHTML 2 Working Group Expected to Stop Work End of 2009 http://www.w3.org/News/2009#item119
  5. Abstimmungsergebnis zur Frage ob die WHATWG-Entwürfe (HTML5 bzw Web Applications 1.0 und Web Forms 2.0) als Startpunkt der Arbeitsgruppe dienen soll. http://www.w3.org/2002/09/wbs/40318/htmlbg/results
  6. Pressemitteilung zur Veröffentlichung des ersten HTML5-Arbeitsentwurfes. http://www.w3.org/2008/02/html5-pressrelease
  7. WHATWG-Antwort auf die Frage wann HTML5-Features verwendet werden dürfen. http://wiki.whatwg.org/wiki/FAQ#When_will_we_be_able_to_start_using_these_new_features.3F
  8. Zielsetzung im Gründungsdokument der HTML-Arbeitsgruppe. http://www.w3.org/2007/03/HTML-WG-charter#deliverables
  9. Unterschiede zwischen HTML5 und XHTML5 http://wiki.whatwg.org/wiki/HTML_vs._XHTML
  10. http://www.whatwg.org/specs/web-forms/current-work/
  11. Noscript-element in der Spezifikation No-Scriptelement in der Spezifikation
Persönliche Werkzeuge
Sitemap