Vorlage:Infobox Dateiformat/Wartung/magic fehltVorlage:Infobox Dateiformat/Wartung/website fehlt
| HTML (Hypertext Markup Language) | |
|---|---|
| Dateiendung | .html, .htm |
| MIME-Type | text/html |
| Entwickelt von | World Wide Web Consortium |
| Art | Auszeichnungssprache |
| Container für | SGML |
| Erweitert zu | XHTML |
| Standard(s): | W3C HTML 4.01 W3C HTML 3.2 |
Die Hypertext Markup Language (HTML, dt. Hypertext-Auszeichnungssprache), oft kurz als Hypertext bezeichnet, ist eine textbasierte Auszeichnungssprache zur Strukturierung von Inhalten wie Texten, Bildern und Hyperlinks in Dokumenten. HTML-Dokumente sind die Grundlage des World Wide Web und werden von einem Webbrowser dargestellt. Neben den vom Browser angezeigten Inhalten einer Webseite enthält HTML zusätzliche Angaben in Form von Metainformationen, die z. B. über die im Text verwendete Sprache oder den Autor Auskunft geben oder den Inhalt des Textes zusammenfassen. Die Auszeichnungssprache wird vom World Wide Web Consortium (W3C) weiterentwickelt. Aktuell trägt HTML die Versionsnummer 4.01. HTML5 befindet sich in der Entwicklung. Parallel existiert die Extensible Hypertext Markup Language (XHTML).
Inhaltsverzeichnis |
Dem Text wird durch Auszeichnungen (engl. markup) von Textteilen eine Struktur verliehen. Die Auszeichnung erfolgt durch SGML-Elemente. Die meisten dieser HTML-Elemente werden durch ein Tag-Paar markiert, das heißt durch einen Starttag und einen Endtag. Ein Starttag beginnt immer mit dem Zeichen „<“. Es folgt der Elementname (z. B. „p“ für einen Absatz oder „h1“ für eine Überschrift erster Ordnung) und optional eine Liste seiner Attribute (z.B. „class="warning"“). Mit einem „>“ wird der Starttag geschlossen. Ein Endtag besteht aus den Zeichen „</“, dem Elementnamen und dem abschließenden „>“. Attribute dürfen im Endtag nicht enthalten sein. Die zusammengehörenden Start- und Endtags bilden zusammen mit dem dazwischenliegenden Inhalt ein Element allgemeiner SGML-Spezifikation. Diese Elemente lassen sich nach Regeln, die in einer Dokumenttypdefinition (DTD) angegeben sind, verschachteln:
<p>Ein Textabsatz, der ein <em>betontes</em> Wort enthält.</p>
Bestimmte Elemente müssen nicht explizit notiert werden. Bei einigen Elementen darf der Endtag fehlen (z. B. </p> oder </li>). Zudem spielte bei Element- und Attributnamen Groß- und Kleinschreibung keine Rolle (z. B. <ol>, <UL>, <Li>). Zum Vergleich: In XHTML sind diese Regeln strenger verfasst.
Neben Elementen mit Start- und Endtag gibt es in HTML auch inhaltsleere Elemente, wie etwa Zeilenumbrüche.
Eine Textzeile,<br />die hier fortgesetzt wird. <img src="E-Mail-Button.jpg" alt="E-Mail">
Es geht in HTML um beschreibende (engl. descriptive), nicht um verfahrens- (engl. procedural) und darstellungsorientierte (engl. presentational) Textauszeichnung, auch wenn sich HTML in früheren Versionen dafür verwenden ließ. HTML-Elemente sind keine Angaben zur Präsentation, die dem Webbrowser mitteilen, wie er den Text visuell zu formatieren hat. Vielmehr sind Elemente eine strukturierende Auszeichnung, mit der sich Textbereichen eine Bedeutung zuordnen lässt, z. B. <h1>…</h1> für eine Überschrift, <p>…</p> für einen Textabsatz und <em>…</em> für betonten Text. Wie diese Bedeutung letztlich dem Benutzer vermittelt wird (im Falle einer Überschrift z. B. durch vergrößerte, fette Schrift), ist zunächst dem Webbrowser überlassen und hängt von der Ausgabe-Umgebung ab. Denn obwohl HTML-Dokumente in der Regel auf Computerbildschirmen dargestellt werden, können sie auch auf anderen Medien ausgegeben werden, etwa auf Papier oder mittels Sprachausgabe. CSS-Formatvorlagen eignen sich dazu, um auf die Präsentation eines HTML-Dokuments in verschiedenen Medien Einfluss zu nehmen.
Daher gelten Elemente und Attribute zur Präsentation wie <font>…</font>, <b>…</b> und width als deprecated und sollten nach allgemeiner Auffassung vermieden werden.
Das Einlesen des Quelltexts und Verarbeiten der vorhandenen Informationen ist das Parsen, die Aufbereitung für das Ausgabemedium das Rendern: HTML beschreibt, wie der Browser oder Editor die Auszeichnungen des Texts zu „verstehen“ hat, nicht, wie er sie dann in der Darstellung umsetzt. So besagt <h1> zwar, dass eine Überschrift folgt, nicht aber, in welcher Schriftgröße oder Schriftschnitt diese darzustellen sind – hier haben sich nur gewisse übliche Standardeinstellungen eingebürgert, die aber nicht Teil der HTML-Spezifikation sind.
HTML ist eine Auszeichnungssprache und wird als solche auch nicht programmiert, sondern schlicht geschrieben.
Ein ähnliches Konzept (logische Beschreibung) wie hinter HTML steht hinter dem Satzsystem TeX/LaTeX, das im Unterschied zu HTML jedoch auf die Ausgabe per Drucker auf Papier zielt.
HTML wurde am 13. März 1989 von Tim Berners-Lee am CERN in Genf festgelegt.[1]
<nl> für Navigationslisten. Die Trennung von Auszeichnung und Stil sollte in dieser Version vollendet werden. - Das W3C hat die Arbeiten an XHTML 2.0 im Sommer 2009 zu Gunsten von HTML5 eingestellt.[5][6]Ein HTML-Dokument besteht aus drei Bereichen:
HEAD), der hauptsächlich technische oder dokumentarische Informationen enthält, die üblicherweise nicht im Anzeigebereich des Browsers dargestellt werdenBODY), der jene Informationen enthält, die gewöhnlicherweise im Anzeigebereich des Browsers zu sehen sind.Somit sieht die Grundstruktur einer Webseite wie folgt aus:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <title> Titel der Webseite </title> <!-- Evtl. weitere Kopfinformationen --> </head> <body> Inhalt der Webseite </body> </html>
Im Kopf können sieben verschiedene Elemente angewandt werden:
titlemetabaselinkscriptstyleobjectHTML unterscheidet zwischen Block- und Inline-Elementen. Der wesentliche Unterschied ist, dass erstere in der Ausgabe einen eigenen Block erzeugen, in dem der Inhalt untergebracht wird, während die Inline-Elemente den Textfluss nicht unterbrechen – dabei sei gesagt, dass einige Elemente mit Hilfe von CSS in das andere Format transformiert werden können. Zu den Block-Elementen gehören z. B. die Überschriften und die Tabellen.
Eine Hauptüberschrift wird so ausgezeichnet:
<h1>Hauptüberschrift</h1>
h1 steht für Heading 1, zeichnet also eine Überschrift der höchsten Gliederungsstufe aus. Weiter möglich sind h2 bis h6, Überschriften zweiter bis sechster Gliederungsstufe. Die Präsentation dieser Überschriften ist von ihrer strukturierenden Bedeutung unabhängig und kann mit CSS beeinflusst werden.
Ein Hyperlink:
<a href="http://www.example.com/">Dies ist ein Link auf example.com</a>
Hyperlinks sind Verweise auf andere Dateien, meistens ebenfalls HTML-Dateien, die üblicherweise im Browser durch Klick verfolgt werden können. Dieser Link könnte so gerendert werden: Dies ist ein Link auf example.com.
Zur Logik stehen zum Beispiel die Elemente strong und em bereit, mit denen sich stark hervorgehobener oder betonter Text auszeichnen lässt. Per Voreinstellung (lt. W3C-Standard) werden strong- und em-Elemente durch Fettschrift beziehungsweise kursive Schrift gerendert.
Die Strukturbeschreibung des Textes, wie sie die obigen Beispielen veranschaulichen, vereinfacht es, das Rendern dem Betrachter anzupassen, um etwa Text einem Sehbehinderten vorzulesen oder als Braille auszugeben.
Beim Entwurf der letzten HTML-Version 4 sollte der Tatsache, dass in vielen HTML-Dokumenten noch Elemente und Attribute zur Präsentation eingesetzt werden, Rechnung getragen werden. Das Ergebnis waren schließlich drei Varianten:
Diese DTD umfasst den Kernbestand an Elementen und Attributen. Es fehlen die meisten Elemente und Attribute zur Beeinflussung der Präsentation, unter anderem die Elemente font, center und u sowie Attribute wie bgcolor, align und target. Deren Rolle sollen in Strict-Dokumenten Stylesheets übernehmen. Text und nicht-blockbildende Elemente innerhalb der Elemente body, form, blockquote und noscript müssen sich grundsätzlich innerhalb eines Container-Elements befinden, zum Beispiel in einem p-Element.
Die Transitional-Variante enthält noch ältere Elemente und Attribute, die auch physische Textauszeichnung ermöglichen. Durch diese DTD soll Webautoren, die noch nicht logische Strukturierung und Präsentation voneinander trennen, die Möglichkeit gegeben werden, standardkonformes HTML zu schreiben. Gleichzeitig soll sie sicherstellen, dass bestehende Webseiten weiterhin durch aktuelle Webbrowser angezeigt werden können.
Diese Variante enthält zusätzlich zu allen Elementen der Transitional-Variante noch die Elemente für die Erzeugung von Framesets.
Mit XHTML 1.1, der neuesten Version von HTML, sowie beim im Entwicklungsstadium begriffenen XHTML 2.0 verzichtet das W3-Consortium wieder auf die Unterscheidung und führt lediglich die Strict-Variante als „reine Lehre“ weiter.
Elemente, die bislang nur in den Varianten Transitional und Frameset vorkamen, werden beinahe alle entfallen. Entsprechende Effekte müssen durch CSS, JavaScript, XFrames oder andere Methoden erreicht werden, da sie zur logischen Textauszeichnung nicht notwendig sind.
Ein Attribut, das aus der Transitional-Variante voraussichtlich den „Sprung“ in XHTML 2.0 schafft, ist das „value“-Attribut bei nummerierten Listenpunkten, das erlaubt, die Nummer des Listenpunktes selbst festzulegen.
Im Laufe der Jahre ist HTML um Elemente erweitert worden, die sich mit der Gestaltung des Dokuments befassen, was der ursprünglichen Idee der Systemunabhängigkeit entgegen lief. Eine Rückbesinnung auf die Trennung von Inhalt (Struktur) und Layout wurde durch die Definition von Cascading Style Sheets (CSS) vorgenommen. So soll das Aussehen des Dokuments in einer separaten Datei, dem so genannten Stylesheet, festgelegt werden. Dies verbessert die Anpassungsfähigkeit des Layouts an das jeweilige Ausgabegerät und an spezielle Bedürfnisse der Benutzer, z. B. von Sehbehinderten. Heutzutage ist die CSS-Unterstützung der Browser ausreichend, um damit eine anspruchsvolle Gestaltung zu realisieren.
Schon sehr früh in der Geschichte von HTML wurden Zusatztechniken erfunden, die es ermöglichen, HTML-Dokumente während der Anzeige im Browser dynamisch zu verändern. Die gebräuchlichste ist JavaScript. Man spricht bei solchen interaktiven Dokumenten von dynamischem HTML. Diese Techniken wurden von verschiedenen Browser-Herstellern, allen voran Microsoft und Netscape, unabhängig voneinander entwickelt. Daher gab es erhebliche Probleme bei der Umsetzung der Techniken zwischen den verschiedenen Browsern. Mittlerweile interpretieren alle verbreiteten JavaScript-fähigen Browser das Document Object Model (DOM). Dadurch ist es möglich, in allen Browsern lauffähige Skripte zu schreiben. Es gibt jedoch noch immer Differenzen bei der Unterstützung des DOM-Standards.
Die aktuellste Version des HTML-Standards (HTML 4.01) wurde in der Metasprache XML neu formuliert. Das daraus entstandene XHTML 1.0 genügt den im Vergleich zu SGML strengeren syntaktischen Regeln von XML, ist aber in seinen drei DTD-Varianten semantisch mit der jeweils entsprechenden DTD-Variante von HTML 4.01 identisch. Aktuell liegt der XHTML-Standard in der Version 1.1 vor, der eine zusätzliche Modularisierung der Elemente einführt.
Ajax beschreibt die Kombination bekannter Techniken wie JavaScript, XML und DOM. Dadurch wird die Änderung einer Webseite möglich, ohne sie vollständig neu laden zu müssen. Das Ziel sind hier dynamische Seiten, die wie Desktop-Anwendungen reagieren können. Durch das Laden von Daten kann der Einsatz von Ajax auch einen Geschwindigkeitsvorteil gegenüber traditionellen HTML-Webseiten bringen, bei denen der komplette Seiteninhalt bei einer Änderung aktualisiert werden muss.
HTML dient als Auszeichnungssprache dazu, einen Text semantisch zu strukturieren, nicht aber zu formatieren. [8] Die Darstellung ist kein Teil der entsprechenden Spezifikationen und ist somit willkürlich vom Browseranbieter bestimmbar. Eine Ausnahme stellen die als deprecated markierten, präsentationsbezogenen Elemente dar.
Empfehlungen (recommendations): Canonical XML | CDF | CGI | CSS | DOM | HTML | MathML | MTOM | OWL | PLS | RDF | RDF-Schema | SISR | SMIL | SOAP | SRGS | SSML | SVG | SPARQL | Timed Text | VoiceXML | WSDL | XForms | XHTML | XML | XML Base | XML Events | XML Information Set | XML Schema | XML Signature | XOP | XPath | XPointer | XQuery | XSL Transformation | XSL-FO | XSL | XLink
Anmerkungen (notes): XHTML+SMIL | XAdES
Arbeitsentwürfe (working drafts): CCXML | CURIE | EXI | InkML | XFrames | XFDL | WICD | XHTML+MathML+SVG | XBL | XProc | HTML5
stock | retire | vm
Why are we here?
All text is available under the terms of the GNU Free Documentation License
This page is cache of Wikipedia. History