Grund- und Hintergrundwissen

Websites Typologie

Technologien im Internet

Barrierefreiheit / Zugänglichkeit

Browserkompatibilität

Zeilenumbrüche / Whitespace

Geschichte

sieht auch

HTML wurde von ursprünglich vom Gründer des Webs Tim Berners Lee erfunden. Es ist eine auf SGML basierte Auszeichnungssprache, die die Aufgabe hat, die logischen Bestandteile eines Dokuments zu beschreiben. Es wird somit die logische Struktur eines Textes definiert. Beispielsweise mit Überschriften, Textabsätzen, Listen, Tabellen etc.

Semantik

siehe auch Semantic Web

Semantik ist die Bedeutung von Zeichen, Wörtern, Phrasen und Symbolen. Durch Semantik wird die Bedeutung des Inhalts definiert oder verdeutlicht.

Mittels HTML Elementen und Attributen wird die Bedeutung des Textes einer HTML Seite definiert. Hier spricht man auch von Semantic Web. Dabei geht es darum den Text für Maschinen lesbarer zu machen und nicht darum den Text zu formatieren und zu gestalten. Nicht jedes Wort ist eindeutig, z.B: Ente, Bank, Blüte, Dame, Boxer. Noch schwieriger ist es für Maschinen ganze Sätze zu verstehen.

Damit für Maschinen und Programme Inhalte auswertbarer werden, wird mittels HTML Elementen die Website strukturiert. Mit Maschinen sind in erster Linie Suchmaschinen gemeint, Stichwort SEO, aber auch assistive Technologien, wie Screenreader und Lesegeräte für behinderte Menschen, profitieren von einem gut struktutriertem HTML Markup.
Das Aussehen der HTML Seiten wird mit CSS definiert. Es gibt somit eine klare Trennung.

Ein HTML Element muss keinen optischen Effekt erzeugen, es kann aber einen optischen Effekt erzeugen, indem man ihm mit CSS eine optische Eigenschaft zuweist. Selbst wenn man keine einzige CSS Eigenschaft zuweist, so werden bestimmte HTML Elemente von den Browsern mit CSS Eigenschaften versehen. So werden beispielsweise Überschriften größer und fett dargestellt. Diese kann man mit eigenen CSS Definitionen überschreiben und anders gestalten. Das Browserstylesheet wird dann überschrieben. Man sollte jedoch keine HTML Elemente einsetzen, um eine bestimmte Gestaltung zu erzeugen. HTML Elemente werden nur anhand ihrer Bedeutung/ Semantik eingesetzt.

Sicherheit

Suchmaschinen fernhalten

Es gibt einige Techniken, um bestimmte Bereiche der Website abzusichern.
So hat man die Möglichkeit Suchmaschinen von bestimmten Seiten oder Bereichen des Webangebots fernzuhalten. Es gibt hier verschiedene Möglichkeiten.

Passwortschutz

Es gibt die Möglichkeit bestimmte Bereiche/ Ordner der Website mit einem Passwortschutz zu versehen, so dass man nur über Eingabe des Benutzernamens und Passworts den Bereich aufrufen kann.
siehe auch Selfhtml htaccess
Passwortschutz mit htaccess

htaccess Generator

Datei- & Ordnernamen

Konventionen und Regeln:

Whitespace & Zeilenumbrüche

Whitespace ist Leerraum wie Zeilenumrüche, Absätze und Leerzeichen.

Whitespace wird vom HTML-Parser (Software welche HTML interpretiert) zu einem Leerzeichen zusammengefasst.

Leerzeichen am Anfang eines Html Elements werden entfernt.

Alle Zeichen die vom HTML-Parser interpretiert werden nennt man PCDATA (parsed character data). Bereiche, die nicht interpretiert werden nennt man CDATA (character data). siehe auch selfhtml

Script Bereiche und CSS Bereiche werden nicht vom HTML Parser analysiert, CDATA.

<!-- -->
Kommentare gehören zu CDATA. Ein Kommentar beginnt mit <!-- dann folgt der Inhalt und endet mit -->
<pre></pre>
Präformatierter Text ist Text der mit allen Leerzeichen und Zeilenumbrüchen angzeigt wird. Dieser Text wird eingeschlossen vom <pre></pre> Element.
&nbsp;
Man kann Leerzeichen durch dieses geschütztes Zeichen erzwingen, siehe auch Zeichencodierung
<nobr></nobr>
Das nobr- Element wird eingesetzt, wenn man einen Zeilenumbruch verhindern will. Die Zeile wird mit den nobr Elementen umgeben. Dazu verwendet man besser die CSS Eigenschaft white-space
<wbr>
Das Standalone Element steht für wordbreak und erzeugt einen bedingten Zeilenumbruch, bei dem kein Trennzeichen entsteht.
&shy;
Dieses Soft Hypen Entity erzeugt einen bedingten Zeilenumbruch, bei dem ein Trennzeichen angezeigt wird.

Hyphens / Silbentrennung

Mittels CSS hyphens: auto; lässt sich eine automatische Silbentrennung am Ende der Zeile erzeugen. Siehe hier / CSS Texteigenschaften / Hyphens.

Javascript Hyphenator

Früher ließ sich das mit Javascript erzeugen

https://code.google.com/p/hyphenator/

Mit dem Hyphenator, einer Javascriptdatei kann man eine automatische Silbentrennung erzeugen. Laden Sie die Javascript Datei herunter und binden Sie diese in der HTML Seite ein.Alle Elemente in denen getrennt werden soll, müssen mit Klasse .hyphenate ausgezeichnet werden. Man kann auch Bereiche ausschließen mit .donthyphenate

so sieht`s aus

Conditional Comments (veraltet)

Es gibt Kommentare, die nur von Internet Explorer 9 oder tiefer ausgelesen werden. Da diese Browser heutzutage so gut wie nicht mehr genutzt werden, ist dieses Thema veraltet. Wenn man jedoch bestimmte Bereiche, wie beispielsweise Style Sheets oder Script Einbindungen definieren will, die nur von IE ab einer bestimmten Version eingebunden werden sollen, kann man das nutzen.

siehe auch Browserversionen

<!--[if lt IE 9]>  
    <script src="bower_components/html5shiv/dist/html5shiv.js"></script>
<![endif]-->

In den eckigen Klammern definiert man die Version mit einer Bedingung if.

lt steht für less than kleiner als

lte less than equal, kleiner als oder gleich

gte greater than equal, größer als oder gleich

gt greater than, größer als