###############################################################################
# Copyright (c) 2004 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
# 
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################

ATagInfo=Ein Link, falls das Attribut 'href' vorhanden ist, bzw. das Ziel f\u00fcr einen Link, wenn das Attribut 'name' vorhanden ist
ABBRTagInfo=Abk\u00fcrzung (z. B. WWW, HTTP)
ACRONYMTagInfo=Akronym (z. B. SCUBA)
ADDRESSTagInfo=Adressinformationen f\u00fcr den Autor der Seite
APPLETTagInfo=Java-Applet
AREATagInfo=Definiert einen clientseitigen Imagezuordnungsbereich
BTagInfo=Zeigt enthaltenen Text in Fettformatierung an
BASETagInfo=Basis-URI f\u00fcr die Seite, wird bei der Berechnung relativer Pfade verwendet
BASEFONTTagInfo=Basisschriftartgr\u00f6\u00dfe f\u00fcr die Seite
BDOTagInfo=\u00dcberschreibt Standardanzeige im Bidirektionalformat, wird mit bidirektionalen Sprachen (BIDI-Sprachen) verwendet
BIGTagInfo=Zeigt enthaltenen Text in gro\u00dfer Schrift an
BGSOUNDTagInfo=Definiert eine Audiodatei f\u00fcr die Seite. Wird durch W3C HTML 4.01 nicht unterst\u00fctzt.
BLINKTagInfo=Zeigt Text blinkend an. Wird durch W3C HTML 4.01 nicht unterst\u00fctzt.
BLOCKQUOTETagInfo=Langes Zitat
BODYTagInfo=Dokumenthauptteil, der den gesamten Inhalt f\u00fcr die Seite enth\u00e4lt
BRTagInfo=Erzwingt einen Zeilenumbruch
BUTTONTagInfo=Definiert eine Schaltfl\u00e4che
CAPTIONTagInfo=Definiert eine Tabellen\u00fcberschrift
CENTERTagInfo=Zeigt enthaltenen Text in zentriert an. Ist \u00e4quivalent zu DIV mit 'align=center'.
CITETagInfo=Zitat
CODETagInfo=Computer-Codefragment
COLTagInfo=Tabellenspalte
COLGROUPTagInfo=Gruppe von Tabellenspalten
DDTagInfo=Definition oder Beschreibung in einer Definitions- oder Beschreibungsliste
DELTagInfo=Zeigt Text als gel\u00f6scht an
DFNTagInfo=Definition
DIRTagInfo=Verzeichnisliste
DIVTagInfo=Generischer Container, der zum Definieren von Sprache oder Darstellung f\u00fcr den Inhalt verwendet werden kann
DLTagInfo=Definitions- oder Beschreibungsliste
DTTagInfo=Begriff oder Thema in einer Definitions- oder Beschreibungsliste
EMTagInfo=Zeigt Text hervorgehoben an (normalerweise kursiv)
EMBEDTagInfo=Definiert ein eingebettetes Plug-in. Wird durch W3C HTML 4.01 nicht unterst\u00fctzt.
FIELDSETTagInfo=Definiert eine Gruppe von Formularsteuerelementen
FONTTagInfo=Zeigt Text in der angegebenen Schriftart an
FORMTagInfo=Definiert ein interaktives Formular
FRAMETagInfo=Definiert einen Frame im aktuellen Fenster
FRAMESETTagInfo=Definiert ein Frameset, das das Fenster in zwei Frames unterteilt
H1TagInfo=\u00dcberschrift der h\u00f6chsten Ebene
H2TagInfo=\u00dcberschrift der zweiten Ebene
H3TagInfo=\u00dcberschrift der dritten Ebene
H4TagInfo=\u00dcberschrift der vierten Ebene
H5TagInfo=\u00dcberschrift der f\u00fcnften Ebene
H6TagInfo=\u00dcberschrift der sechsten Ebene
HEADTagInfo=Enth\u00e4lt Metadaten und Fenstertitelinformationen f\u00fcr das Dokument
HRTagInfo=Horizontale Skala (Lineal)
HTMLTagInfo=Stammelement f\u00fcr das Dokument
ITagInfo=Zeigt Text kursiv an.
IFRAMETagInfo=Definiert ein Inline-Unterfenster
IMGTagInfo=Zeigt das Image, auf das verwiesen wird, als eingebetteten Inhalt an
INPUTTagInfo=Definiert ein Formularsteuerelement f\u00fcr die Benutzereingabe
INSTagInfo=Definiert eingef\u00fcgten Text
ISINDEXTagInfo=Definiert eine einzeilige Eingabeaufforderung
KBDTagInfo=Definiert Text, der durch den Benutzer eingegeben werden muss
LABELTagInfo=Definiert die Beschriftung f\u00fcr ein Formularfeld
LEGENDTagInfo=Definiert die Beschriftung f\u00fcr eine Gruppe von Formularfeldern
LITagInfo=Definiert einen Listeneintrag in einer Liste
LINKTagInfo=Datentr\u00e4gerunabh\u00e4ngiger Link
MAPTagInfo=Definiert eine clientseitige Imagezuordnung
MARQUEETagInfo=Zeigt Text verschiebbar an. Wird durch W3C HTML 4.01 nicht unterst\u00fctzt.
MENUTagInfo=Definiert eine Men\u00fcliste
METATagInfo=Definiert Metadateninformationen f\u00fcr das Dokument
NOBRTagInfo=\u00dcberschreibt und verhindert Zeilenumbr\u00fcche. Wird durch W3C HTML 4.01 nicht unterst\u00fctzt.
NOFRAMESTagInfo=Stellt Informationen bereit, die angezeigt werden sollen, wenn der aktuelle Browser keine Frames unterst\u00fctzt
NOSCRIPTTagInfo=Stellt Informationen bereit, die angezeigt werden sollen, wenn der aktuelle Browser keine Scripterstellung unterst\u00fctzt
OBJECTTagInfo=Definiert ein generisches eingebettetes Objekt
OLTagInfo=Sortierte Liste
OPTGROUPTagInfo=Optionsgruppe
OPTIONTagInfo=Ausw\u00e4hlbare Option
PTagInfo=Absatz
PARAMTagInfo=Benannter Eigenschaftswert
PRETagInfo=Vorformatierter Text
QTagInfo=Kurzes Inline-Zitat
STagInfo=Zeigt Text in durchgestrichener Darstellung an
SAMPTagInfo=Beispielprogrammausgabe, Skripts usw., wird in Monospaceschrift angezeigt
SCRIPTTagInfo=Scriptanweisungen
SELECTTagInfo=Optionsselektor
SMALLTagInfo=Zeigt Text in kleiner Schrift an
SPANTagInfo=Generischer Container, der zum Definieren von Sprache oder Darstellung f\u00fcr den Inhalt verwendet werden kann
STRIKETagInfo=Zeigt Text in durchgestrichener Darstellung an
STRONGTagInfo=Zeigt Text stark hervorgehoben an (normalerweise fett)
STYLETagInfo=Definiert eine Darstellung f\u00fcr die enthaltenen Informationen
SUBTagInfo=Zeigt Zeichen tiefgestellt an
SUPTagInfo=Zeigt Zeichen hochgestellt an
TABLETagInfo=Definiert eine Tabelle
TBODYTagInfo=Hauptteil der Tabelle
TDTagInfo=Zelle in einer Tabelle
TEXTAREATagInfo=Mehrzeiliges Textfeld
TFOOTTagInfo=Tabellenfu\u00dfzeile
THTagInfo=Tabellen\u00fcberschriftszelle
THEADTagInfo=Tabellen\u00fcberschrift
TITLETagInfo=Dokumenttitel, der in der Titelleiste des Browsers angezeigt wird
TRTagInfo=Tabellenzeile
TTTagInfo=Zeigt Text in Teletype-Schriftart oder Monospaceschrift an
UTagInfo=Zeigt Text unterstrichen an
ULTagInfo=Ungeordnete Liste
VARTagInfo=Exemplar einer Variablen oder eines Programmarguments
WBRTagInfo=L\u00e4sst einen Zeilenumbruch in Tags <B>&lt;NOBR&gt;</B> zu. Wird durch W3C HTML 4.01 nicht unterst\u00fctzt.
