Barrierefreiheit / Zugänglichkeit
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.
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.
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.
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
Konventionen und Regeln:
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.
<!--
dann folgt der Inhalt und endet mit -->
<pre></pre>
Element.Mittels CSS hyphens: auto; lässt sich eine automatische Silbentrennung am Ende der Zeile erzeugen. Siehe hier / CSS Texteigenschaften / Hyphens.
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
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.
<!--[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