Gerüstbau
Eure gesamte HTML-Datei wird in ein html-Tag eingefaßt. Innerhalb dieses html-Elements gibt es
zwei Abschnitte: Den Head (Kopf) und den
Body (Körper)
<html>
<head>
</head>
<body>
</body>
</html>
Im Kopfteil befinden sich allgemeine Angaben zu Eurem Dokument. Das ist beispielsweise der Titel,
der in der Titelleiste des Browsers angezeigt wird, oder Angaben darüber, ob der Suchroboter einer
Suchmaschine Eure Seite indexieren darf. Der eigentliche Inhalt Eurer Seite befindet sich im Body.
Noch vor dem html-Tag könnt (und solltet) Ihr eine Angabe zum
Dokumententyp setzen. Was das genau ist, wird im XML-Abschnitt
im Detail besprochen. An dieser Stelle soll uns nur interessieren, daß es drei verschiedene
Möglichkeiten für den Dokumententyp gibt
- strict
-
Im aktuellen HTML-Standard (Version 4.01) gibt es einige Tags aus älteren Versionen, die
gewissermaßen ein Verfallsdatum tragen. Diese depraved
(«verdorben») genannten Elemente werden in einem zukünftigen Standard
nicht mehr enthalten sein. Wenn Ihr den Dokumententyp 'strict' benutzt, stehen Euch diese
depraved-Elemente nicht zur Verfügung.
- transitional / loose
-
Bei Verwendung des Dokumententyps 'loose' könnt Ihr die erwähnten depraved-Elemente
verwenden. Allerdings lauft Ihr Gefahr, daß zukünftige Browser damit nicht mehr
klarkommen.
- frameset
-
Der Dokumententyp 'frameset' ist für die Verwendung mit Frames und Framesets gedacht. Was sich
dahinter verbirgt, wird später noch Thema sein.
Die Syntax dieser Dokumententyp-Angaben ist auf den ersten Blick ziemlich kryptisch, aber im Moment
braucht Ihr sie ja nur zu verwenden und (noch) nicht zu verstehen
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">
Insgesamt sieht ein (leeres) HTML-Dokument also so aus
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
</head>
<body>
</body>
</html>
Zeichen und Wunder
Bekanntlich ist das Internet eine internationale Angelegenheit. Das kann zu Problemen führen, wenn
Ihr auf Eurer Webseite Sonderzeichen verwenden wollt. Sonderzeichen sind bereits die deutschen Umlaute,
aber auch bespielsweise mathematische Zeichen oder japanische Hiragana oder Katakana. Hier spielen
Zeichensätze eine große Rolle. Im Computer werden alle
Buchstaben, Ziffern und andere Zeichen in Form von Codenummer dargestellt (beispielsweise 'A' = 65,
'B' = 66, ...). Welches Zeichen welcher Codenummer entspricht, legt der verwendete Zeichensatz fest.
Wenn im Browser ein anderer Zeichensatz eingestellt wurde als bei der Erstellung der Webseite
vorausgesetzt, kann das zu merkwürdigen Effekten führen.
Standard ist der Zeichensatz ISO-8859-1 (auch bekannt als
Latin-1). Latin-1 enthält 256 Zeichen, von denen die ersten 128 dem
bekannten ASCII-Zeichensatz entsprechen. Unter den zweiten 128 Zeichen
findet Ihr unter anderem die deutschen Umlaute. Für den Fall, daß ein Surfer in seinem Browser
nicht Latin-1 eingestellt hat, solltet Ihr jedoch alles außerhalb des ASCII-Zeichensatzes
maskieren. Dazu stehen Euch zum einen eine ganze Reihe von
benannten Zeichen zur Verfügung. Um beispielsweise ein 'ä' zu
erzeugen, drückt Ihr nicht einfach die entsprechende Taste auf der Tastatur, sondern schreibt in
Euren HTML-Code an der entsprechenden Stelle 'ä'. Aus dieser sogenannten
HTML-Entity macht der Browser dann Eurer 'ä'. Alle Entities sind
nach diesem Muster aufgebaut, beginnend mit einem & und abgeschlossen mit einem ;. Dazwischen
steht der Name der Entity, in diesem Fall 'auml' (a-Umlaut). Ein 'ö' erzeugt Ihr folgerichtig mit
'ö', ein 'Ä' mit 'Ä' und so weiter. Weitere wichtige Entities sind
- ß für das ß
- & für das & (Ampersand oder Kaufmanns-Und)
- < für das < ('lesser than')
- > für das > ('greater than')
- " für das "
- € für das €
Darüber hinaus gibt es noch eine Vielzahl von benannten Zeichen in HTML, wie griechische
Buchstaben ('α' für α), mathematische Symbole ('∉' für ∉)
oder Pfeile ('←' für ← - left arrow).
Neben den benannten Zeichen könnt Ihr jedes Zeichen im Zeichensatz auch über seine
Codenummer ansprechen. Das Zeichen 'Û' ist zum Beispiel ein Û. Die Codenummer
könnt Ihr wie gezeigt als Dezimalzahl angeben oder auch als Hexadezimalzahl. Die Entity
'Û' erzeugt also auch ein Û, weil Dezimal 219 = Hexadezimal DB.
In manchen Fällen reicht aber auch diese Zeichenvielfalt nicht aus. Dann könnt Ihr auf den
Unicode zurückgreifen. Das ist ein internationaler Zeichensatz, der
ein paar mehr Zeichen enthält als beispielsweise Latin-1 - nämlich statt 256 zur Zeit etwa
80 000 (insgesamt sind sogar 232, also etwa 4,3 Milliarden Zeichen möglich). Damit sind
praktisch alle bekannten Schriften und Symbolsysteme abgedeckt. Einige Beispiele
- IPA (Lautschrift)
- Kyrillisch
- Arabisch
- Devanagari (für viele Sprachen des indischen Subkontinents)
- Mathematische Operatoren
- Hiragana und Katakana aus Japan
Symbole aus dem Unicode haben wie in jedem anderen Zeichensatz eine Codenummer, über die Ihr
das Symbol als Entity in Eure Seite einbauen könnt. So erzeugt beispielsweise ein 'あ'
ein あ. Mehr über Unicode (und die nicht unwichtigen Tabellen, welches Zeichen sich hinter
welcher Nummer verbirgt) findet Ihr auf www.unicode.org.
Allerdings unterstützt (noch) nicht jeder Browser den Unicode-Standard. In den aktuellen Versionen
können sowohl der Internet Explorer als auch Netscape/Mozilla mit Unicode umgehen, seit
Version 6.0 auch Opera. Dabei greifen sie auf die installierten Schriftarten zurück, die also die
gewünschten Unicode-Symbole enthalten müssen. In den Einstellungen des jeweiligen Browsers
könnt Ihr festlegen, welche Symbole der Browser in welcher Schriftart findet.
Es gibt mittlerweile eine ganze Reihe von Schriftarten, die große Teile oder sogar den gesamten
Unicode-Raum abdecken. Einige sind in neueren Windows-Versionen (speziell Windows 2000 und XP)
enthalten, andere in neueren MS Office-Versionen, wieder andere gibt es als Free- oder Shareware zum
Download im Internet (darunter auch solche für andere Betriebssysteme wie Linux oder MacOS).
Noch eine Anmerkung: In den folgenden Beispiel-Codes habe ich der Übersichtlichkeit halber
anstelle der Entities die von ihnen erzeugten Zeichen verwendet (außer eine Entity ist das Thema).
|