Sonderzeichen

Wie bereits mehrfach erwähnt dürfen in HTML- Dokumenten nur Zeichen des ASCII- Zeichensatzes verwendet werden. Wie stellt man aber die anderen Zeichen dar?

Zuerst möchte ich demonstrieren, was beim Verwenden von Sonderzeichen passieren kann. Dazu habe ich folgende HTML- Seite geschrieben.

<html>
<head>
</head>
<body>
Übungen für Äbte in Klöstern in Österreich müssen auf der Straße gewährt werden.
</body>
</html>

Der enthaltene Satz ist zwar nicht besonders sinnvoll, aber er enthält die deutschen Sonderzeichen Ä, Ö, Ü, a, ö, ü und ß.

BrowseransichtIn meinem Browser sieht die Seite so aus:

Browseransicht Bei einem Betrachter außerhalb von Westeuropa könnte die Seite so aussehen:

Browseransicht Oder so:

Browseransicht Oder so:

Browseransicht Oder so:

Diese Liste könnte man noch eine ganze Weile weiter führen. Du siehst schon, dass da noch nachgebessert werden muß. Es gibt mehrere Möglichkeiten das zu tun. Du kannst im Head festlegen welcher Zeichensatz verwendet werden soll, oder du kannst das Zeichen maskieren bzw. durch Unicode ausdrücken.

Festlegung des Zeichensatzes

Wenn du im Head deines Dokuments die Zeile <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"> einfügst, verwendet der Browser des Betrachters immer den Zeichensatz iso-8859-1. Das ist der Zeichensatz für normale westeuropäische Dokumente. Da in USA Englisch gesprochen wird, und das eine europäische Sprache ist, ist dieser Zeichensatz auf fast jedem PC installiert. Dadurch erscheint deine Seite automatisch auf allen Browsern so, wie sie aussehen soll. Der Quellcode sieht jetzt so aus:

<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
</head>
<body>
Übungen für Äbte in Klöstern in Österreich müssen auf der Straße gewährt werden.
</body>
</html>

Diese Seite wird immer richtig dargestellt, außer der Betrachter hat auf seinem PC den Zeichensatz für Westeuropa nicht installiert oder er läßt seinen Browser den Zeichensatz nicht automatisch bestimmen. Bei Windowssystemen wird der westeuropäische Zeichensatz automatisch installiert und die Voreinstellung des Browsers ist auch immer die automatische Bestimmung des Zeichensatzes, wenn der Browser nicht zu alt dafür ist. Er müßte dann aber schon sehr alt sein. Der Internet Explorer und der Netscape Navigator verarbeiten die Angabe ab Version 4.

Unicode

Ä 196
Ö 214
Ü 220
ä 228
ö 246
ü 252
ß 223

Wenn du einen anderen als den westeuropäischen Zeichensatz verwenden willst oder keinen Zeichensatz für die ganze Seite festlegen willst, kannst du die Sonderzeichen natürlich trotzdem verwenden. Dazu kannst du den Unicode verwenden. Der Unicode ist ein festgelegter Code der 65536 (216 = 65536) festgelegte Zeichen definiert. Die ersten 128 Zeichen entsprechen dem ASCII. Jedes dieser Zeichen hat eine Nummer, die je nach Anwendungsfall dezimal oder hexadezimal dargestellt wird. Ich beschreibe hier den dezimalen Fall. Wenn du dein Zeichen durch &#Unicodezahl; ersetzt, erscheint im Browser das gewünschte Zeichen. Die Nummern der deutschen Sonderzeichen kannst du der Tabelle links entnehmen. Eine vollständige Tabelle findest du in meinen Anleitungen unter Unicode - Codetabellen. Viele Zeichen können aber auf sehr vielen westeuropäischen PCs nicht dargestellt werden. Ob ein Zeichen dargestellt werden kann, hängt vom Browser ab und davon, ob der notwendige Font und Zeichensatz installiert ist. Wenn du die Zeichen wie beschrieben ersetzt, werden sie auf der ganzen Welt, unabhängig vom verwendeten Zeichensatz, richtig dargestellt. Vorausgesetzt das betreffende Zeichen ist auf dem PC überhaupt installiert. Wenn es nicht installiert ist, erscheint statt dem Zeichen ein rechteckiger Kasten (siehe drittes Beispiel im vorhergehenden Kapitel) oder ein anderes Ersatzzeichen. Welches Ersatzzeichen erscheint hängt vom Browser ab. Du musst also alle "Ä" durch "&#196;" ersetzen, alle "Ö" durch "&#214;" usw. Der Quelltext sieht dann so aus:

<html>
<head>
</head>
<body>
&#220;bungen für &#196;bte in Kl&#246;stern in &#214;sterreich m&#252;ssen auf der Stra&#223;e gew&#228;hrt werden.
</body>
</html>

Benannte Zeichen

Ä &#196; &Auml; A Umlaut
Ö &#214; &Ouml; O Umlaut
Ü &#220; &Uuml; U Umlaut
ä &#228; &auml; a Umlaut
ö &#246; &ouml; o Umlaut
ü &#252; &uuml; u Umlaut
ß &#223; &szlig; scharfes S

Da die Unicodes zu den einzelnen Zeichen nicht leicht zu merken sind hat man für die wichtigsten Zeichen ein anderes Verfahren eingeführt. In der Tabelle links siehst du die 7 Zeichen, die in der Beispielseite enthalten sind, ihre Umschreibung durch numerischen (dezmalen) Unicode, die Umschreibung als benanntes Zeichen und ihre internationale Bezeichnung. Wenn du diese Methode verwendest sieht der Quelltext der Seite so aus:

<html>
<head>
</head>
<body>
&Uuml;bungen für &Auml;bte in Kl&ouml;stern in &Ouml;sterreich m&uuml;ssen auf der Stra&szlig;e gew&auml;hrt werden.
</body> </html>

Weitere Sonderzeichen

Du wirst vielleicht schon selbst drauf gekommen sein. Manche Zeichen haben in HTML eine besondere Bedeutung und können deshalb im Text nicht ohne weiteres verwendet werden. Ins­be­son­de­re sind das die Zei­chen <, >, " und &. Die musst du also immer durch Unicode (egal ob numerisch oder benannt) ersetzen, Auch wenn du im Head einen Zeichensatz festgelegt hast!

<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
</head>
<body>
<h1> leitet eine Hauptüberschrift ein. </h1> beendet die Hauptüberschrift.
</body>
</html>
Der Quellcode oben erzeugt natürlich nicht diese Seite: falsche Browseransicht
sondern diese: Browseransicht

Die erwähnten Zeichen haben die Codes:

Zeichen numerisch benannt
< &60; &lt;
> &62; &gt;
" &34; &quot;
& &38; &amp;

Jetzt hast du endlich das nötige Grundwissen zusammen, um eine fehlerfreie Seite zu machen. Jetzt kannst du dich endlich mit dem Design befassen. Es geht mit der Zeichenformatierung los.


Um einen Link zu setzen, der direkt auf diese Seite führt, verwende folgende Url: