siehe auch Selfhtml Wiki
Ein Html Dokument ist der HTML-Teil einer Webseite. Darüber hinaus kann eine Webseite CSS-Style Sheets, Javascript, refernzierte Inhalte wie Bilder, Videos und mehr enthalten.
HTML-Dokumente bestehen aus Klartext und können daher mit jedem Texteditor erstellt werden. Sie haben die Endung .html oder .htm
Die Seiten müssen mit der Codierung UTF-8. gsspeichert werden. Wählen Sie nicht UTF-8 mit Bom. Bom sind unsichtbare Zeichen am Anfang, welche zu Kompatiblitätsproblemen führen können.
Der Inhalt wird mit HTML-Elementen ausgezeichnet. Fast alle HTML-Elemente haben ein einleitendes und ein schließendes Element / Tag. Das schließende Element hat einen Schrägstrich hinter der spitzen Klammer. Zwischen den Elementen, in dem sogenannten Content /Inhaltsbereich oder Scope / Gültigkeitsbereich wird der Inhalt notiert. In diesem Bereich kann Text stehen und es können auch weitere HTML Elemente verschachtelt sein.

Man kann die HTML-Elemente sowohl in Großschreibung als auch in Kleinschreibung notieren. Lediglich im veratlten XHTML ist Kleinschreibung Pflicht.
Standalone Elemente sind von Natur aus leer – sie können niemals Text, andere Tags oder Kinder-Knoten enthalten. In dem veralteten XHTML benötigen die Standalone Elemente einen Slash vor der schließenden spitzen Klammer. <br/> Diese veraltete Schreibweise wird von Browsern auch heute noch verarbeitet.

Die wichtigsten Standalone Elemente sind: br, img, input, hr, meta, link, base, wbr
siehe auch Optinales HTML (meiert.com)
Optionale Elemente benötigen das Endtag nicht zwingend. Diese Elemente haben Inhalt (Text oder andere HTML-Elemente), aber der HTML-Parser ist schlau genug, das fehlende Schließ-Tag (und manchmal sogar das Start-Tag) aus dem Kontext automatisch zu ergänzen. Es ist lesbarer die Endtags zu setzen.
siehe auch Selfhtml Wiki
Diese HTML- Elemente können ineinander verschachtelt werden. So entsteht eine hierachische Struktur. Hier muss man die Regel beachten, dass die Endtags in umgekehrter Reihenfolge geschlossen werden, in der sie geöffnet wurden. So wird das innerste Element zuerst geschlossen.

Einleitende Tags können zusätzliche Angaben enthalten. z.B.: lang="de" bedeutet, dass der Elementinhalt deutschsprachig ist. <html lang="de"> Es können mehrere Attribute im einleitenden Tag aufgeführt werden.

<a target="_blank" href="index.html"> Es gibt alleinstehende Attribute. Das sind Attribute ohne Wertzuweisung.
<input checked>
Im veralteten XHTML notiert man den Namen als Wert. <input checked="checked">
Mit diesen Zeichen wird ein mehrzeiliger Kommentarbereich erstellt. Der Kommentar wird im Browser nicht angezeigt. Man kann hier Informationen eingeben, die nur im Quelltext erscheinen. Ein Kommentar sollte nicht vor dem Doctype eingegeben werden.
<!-- der eigentliche Kommentartext -->
Mehrere Leerzeichen und Zeilenumbrüche im Quelltext sind im Browser nicht sichtbar. Sie werden zu einem Leerzeichen zusammengefasst. Einen Zeilenumbruch wird mit dem <br> Element erzeugt. Zusätzliche Leerzeichen kann man mit einem Entity erzeugen