Referenz zu HTML-Attributen

Elemente in HTML besitzen Attribute; dies sind zusätzliche Werte, die die Elemente konfigurieren oder ihr Verhalten auf verschiedene Weise anpassen, um die gewünschten Kriterien der Benutzer zu erfüllen.

Attributliste

Attributname Elemente Beschreibung
accept <form>, <input> Liste von Typen, die der Server akzeptiert, typischerweise ein Dateityp.
accept-charset <form> Der Zeichensatz, der, falls angegeben, "UTF-8" sein muss.
accesskey Globales Attribut Tastenkombination, um das Element zu aktivieren oder den Fokus darauf zu setzen.
action <form> Die URI eines Programms, das die über das Formular übermittelten Informationen verarbeitet.
align Veraltet <caption>, <col>, <colgroup>, <hr>, <iframe>, <img>, <table>, <tbody>, <td>, <tfoot>, <th>, <thead>, <tr> Gibt die horizontale Ausrichtung des Elements an.
allow <iframe> Definiert eine Feature-Policy für das iframe.
alt <area>, <img>, <input> Alternativtext für den Fall, dass ein Bild nicht angezeigt werden kann.
as <link> Gibt den Typ des durch den Link geladenen Inhalts an.
async <script> Führt das Skript asynchron aus.
autocapitalize Globales Attribut Legt fest, ob die Eingabe automatisch großgeschrieben wird, wenn sie vom Benutzer eingegeben wird.
autocomplete <form>, <input>, <select>, <textarea> Gibt an, ob die Steuerelemente in diesem Formular standardmäßig ihre Werte automatisch vom Browser ausgefüllt bekommen können.
autoplay <audio>, <video> Das Audio oder Video sollte so schnell wie möglich abgespielt werden.
background <body>, <table>, <td>, <th> Gibt die URL einer Bilddatei an.

Hinweis: Auch wenn Browser und E-Mail-Clients dieses Attribut möglicherweise noch unterstützen, ist es veraltet. Verwenden Sie stattdessen die CSS-Eigenschaft background-image.

bgcolor <body>, <col>, <colgroup>, <marquee>, <table>, <tbody>, <tfoot>, <td>, <th>, <tr>

Hintergrundfarbe des Elements.

Hinweis: Dies ist ein Legacy-Attribut. Bitte verwenden Sie stattdessen die CSS-Eigenschaft background-color.

border <img>, <object>, <table>

Die Breite der Umrandung.

Hinweis: Dies ist ein Legacy-Attribut. Bitte verwenden Sie stattdessen die CSS-Eigenschaft border.

capture <input> Aus der Media Capture-Spezifikation, gibt an, dass eine neue Datei erfasst werden kann.
charset <meta> Deklariert die Zeichenkodierung der Seite oder des Skripts.
checked <input> Gibt an, ob das Element beim Laden der Seite aktiviert sein soll.
cite <blockquote>, <del>, <ins>, <q> Enthält eine URI, die auf die Quelle des Zitats oder der Änderung verweist.
class Globales Attribut Wird häufig mit CSS verwendet, um Elemente mit gemeinsamen Eigenschaften zu gestalten.
color <font>, <hr>

Dieses Attribut legt die Textfarbe fest, indem entweder eine benannte Farbe oder eine Farbe im hexadezimalen #RRGGBB-Format angegeben wird.

Hinweis: Dies ist ein Legacy-Attribut. Bitte verwenden Sie stattdessen die CSS-Eigenschaft color.

cols <textarea> Definiert die Anzahl der Spalten in einem textarea.
colspan <td>, <th> Das colspan-Attribut definiert die Anzahl der Spalten, die eine Zelle überspannen soll.
content <meta> Ein Wert, der mit http-equiv oder name assoziiert ist, abhängig vom Kontext.
contenteditable Globales Attribut Gibt an, ob der Inhalt des Elements bearbeitbar ist.
controls <audio>, <video> Gibt an, ob der Browser dem Benutzer Wiedergabesteuerelemente anzeigen sollte.
coords <area> Ein Satz von Werten, der die Koordinaten der Hotspot-Region angibt.
crossorigin <audio>, <img>, <link>, <script>, <video> Wie das Element Cross-Origin-Anfragen behandelt
csp Experimentell <iframe> Gibt die Content Security Policy an, die ein eingebettetes Dokument einhalten muss.
data <object> Gibt die URL der Ressource an.
data-* Globales Attribut Ermöglicht das Anhängen benutzerdefinierter Attribute an ein HTML-Element.
datetime <del>, <ins>, <time> Gibt das Datum und die Uhrzeit an, die mit dem Element in Verbindung stehen.
decoding <img> Gibt die bevorzugte Methode zum Dekodieren des Bildes an.
default <track> Gibt an, dass der Track aktiviert werden soll, es sei denn, die Präferenzen des Benutzers geben etwas anderes an.
defer <script> Gibt an, dass das Skript nach dem Parsen der Seite ausgeführt werden soll.
dir Globales Attribut Definiert die Textrichtung. Erlaubte Werte sind ltr (von links nach rechts) oder rtl (von rechts nach links)
dirname <input>, <textarea>
disabled <button>, <fieldset>, <input>, <optgroup>, <option>, <select>, <textarea> Gibt an, ob der Benutzer mit dem Element interagieren kann.
download <a>, <area> Gibt an, dass der Hyperlink zum Herunterladen einer Ressource verwendet werden soll.
draggable Globales Attribut Definiert, ob das Element gezogen werden kann.
enctype <form> Definiert den Inhaltstyp der Formulardaten, wenn die method POST ist.
enterkeyhint <textarea>, contenteditable Das enterkeyhint gibt an, welches Aktionslabel (oder Symbol) für die Eingabetaste auf virtuellen Tastaturen präsentiert werden soll. Das Attribut kann mit Formularelementen verwendet werden (wie bei den Werten von textarea-Elementen) oder bei Elementen in einem Bearbeitungs-Host (z. B. unter Verwendung des contenteditable-Attributs).
for <label>, <output> Beschreibt Elemente, die zu diesem gehören.
form <button>, <fieldset>, <input>, <label>, <meter>, <object>, <output>, <progress>, <select>, <textarea> Gibt das Formular an, das Eigentümer des Elements ist.
formaction <input>, <button> Gibt die Aktion des Elements an und überschreibt die im <form> definierte Aktion.
formenctype <button>, <input> Wenn die Schaltfläche/das Eingabefeld eine Submit-Schaltfläche (z. B. type="submit") ist, setzt dieses Attribut den zu verwendenden Kodierungstyp bei der Formularübermittlung. Wenn dieses Attribut angegeben ist, überschreibt es das enctype-Attribut des formulierübergeordneten Elements.
formmethod <button>, <input> Wenn die Schaltfläche/das Eingabefeld eine Submit-Schaltfläche (z. B. type="submit") ist, setzt dieses Attribut die während der Formularübermittlung zu verwendende Übermittlungsmethode (GET, POST, usw.). Wenn dieses Attribut angegeben ist, überschreibt es das method-Attribut des formulierübergeordneten Elements.
formnovalidate <button>, <input> Wenn die Schaltfläche/das Eingabefeld eine Submit-Schaltfläche (z. B. type="submit") ist, spezifiziert dieses boolesche Attribut, dass das Formular bei Einreichung nicht validiert werden soll. Wenn dieses Attribut angegeben ist, überschreibt es das novalidate-Attribut des formulierübergeordneten Elements.
formtarget <button>, <input> Wenn die Schaltfläche/das Eingabefeld eine Submit-Schaltfläche (z. B. type="submit") ist, spezifiziert dieses Attribut den Browsing-Kontext (zum Beispiel Tab, Fenster oder Inline-Frame), in dem die Antwort angezeigt wird, die nach Einreichung erhalten wird. Wenn dieses Attribut angegeben ist, überschreibt es das target-Attribut des formulierübergeordneten Elements.
headers <td>, <th> IDs der <th>-Elemente, die für dieses Element gelten.
height <canvas>, <embed>, <iframe>, <img>, <input>, <object>, <video>

Legt die Höhe der hier aufgeführten Elemente fest. Für alle anderen Elemente verwenden Sie die CSS-Eigenschaft height.

Hinweis: In einigen Fällen, wie bei <div>, handelt es sich um ein Legacy-Attribut, in diesem Fall sollte die CSS-Eigenschaft height stattdessen verwendet werden.

hidden Globales Attribut Verhindert die Darstellung des gegebenen Elements, während die untergeordneten Elemente, z. B. Skriptelemente, aktiv bleiben.
high <meter> Gibt die untere Grenze des oberen Bereichs an.
href <a>, <area>, <base>, <link> Die URL einer verlinkten Ressource.
hreflang <a>, <link> Gibt die Sprache der verlinkten Ressource an.
http-equiv <meta> Definiert eine Pragma-Direktive.
id Globales Attribut Wird häufig mit CSS verwendet, um ein spezifisches Element zu gestalten. Der Wert dieses Attributs muss eindeutig sein.
integrity <link>, <script>

Gibt einen Subresource Integrity Wert an, der es Browsern ermöglicht, das zu überprüfen, was sie abrufen.

intrinsicsize Veraltet <img> Dieses Attribut weist den Browser an, die tatsächliche intrinsische Größe des Bildes zu ignorieren und so zu tun, als wäre es die im Attribut angegebene Größe.
inputmode <textarea>, contenteditable Bietet einen Hinweis auf die Art der Daten, die der Benutzer möglicherweise beim Bearbeiten des Elements oder seines Inhalts eingibt. Das Attribut kann mit Formularelementen verwendet werden (wie bei den Werten von textarea-Elementen) oder bei Elementen in einem Bearbeitungs-Host (z. B. unter Verwendung des contenteditable-Attributs).
ismap <img> Gibt an, dass das Bild Teil einer serverseitigen Image-Map ist.
itemprop Globales Attribut
kind <track> Gibt die Art des Textspuren an.
label <optgroup>, <option>, <track> Gibt einen für den Benutzer lesbaren Titel des Elements an.
lang Globales Attribut Definiert die in dem Element verwendete Sprache.
language Veraltet <script> Definiert die im Element verwendete Skriptsprache.
loading <img>, <iframe> Gibt an, ob das Element lazy geladen werden soll (loading="lazy") oder sofort geladen wird (loading="eager").
list <input> Identifiziert eine Liste von vordefinierten Optionen, die dem Benutzer vorgeschlagen werden sollen.
loop <audio>, <marquee>, <video> Gibt an, ob das Medium beim Ende der Wiedergabe von Anfang an beginnen soll.
low <meter> Gibt die obere Grenze des unteren Bereichs an.
max <input>, <meter>, <progress> Gibt den maximal zulässigen Wert an.
maxlength <input>, <textarea> Definiert die maximale Anzahl von Zeichen, die im Element erlaubt sind.
minlength <input>, <textarea> Definiert die minimale Anzahl von Zeichen, die im Element erlaubt sind.
media <a>, <area>, <link>, <source>, <style> Gibt einen Hinweis auf das Medium an, für das die verlinkte Ressource bestimmt ist.
method <form> Definiert, welche HTTP-Methode verwendet werden soll, wenn das Formular übermittelt wird. Kann GET (Standard) oder POST sein.
min <input>, <meter> Gibt den minimal zulässigen Wert an.
multiple <input>, <select> Gibt an, ob im Feld vom Typ email oder file mehrere Werte eingegeben werden können.
muted <audio>, <video> Gibt an, ob der Ton beim Laden der Seite anfänglich stummgeschaltet wird.
name <button>, <form>, <fieldset>, <iframe>, <input>, <object>, <output>, <select>, <textarea>, <map>, <meta>, <param> Name des Elements. Wird zum Beispiel vom Server verwendet, um die Felder bei Formularübermittlungen zu identifizieren.
novalidate <form> Dieses Attribut gibt an, dass das Formular beim Einreichen nicht validiert werden soll.
open <details>, <dialog> Gibt an, ob der Inhalt derzeit sichtbar ist (im Falle eines <details>-Elements) oder ob das Dialogfeld aktiv und interaktiv ist (im Falle eines <dialog>-Elements).
optimum <meter> Gibt den optimalen numerischen Wert an.
pattern <input> Definiert einen regulären Ausdruck, gegen den der Wert des Elements validiert wird.
ping <a>, <area> Das ping-Attribut spezifiziert eine durch ein Leerzeichen getrennte Liste von URLs, die benachrichtigt werden, wenn ein Benutzer dem Hyperlink folgt.
placeholder <input>, <textarea> Bietet dem Benutzer einen Hinweis darauf, was in das Feld eingegeben werden kann.
playsinline <video> Ein boolesches Attribut, das angibt, dass das Video "inline" abgespielt werden soll; das heißt, innerhalb des Wiedergabebereichs des Elements. Beachten Sie, dass das Fehlen dieses Attributs nicht impliziert, dass das Video immer im Vollbildmodus abgespielt wird.
poster <video> Eine URL, die einen Posterrahmen angibt, der angezeigt wird, bis der Benutzer abspielt oder vorspult.
preload <audio>, <video> Gibt an, ob die gesamte Ressource, Teile davon oder nichts vorab geladen werden soll.
readonly <input>, <textarea> Gibt an, ob das Element bearbeitet werden kann.
referrerpolicy <a>, <area>, <iframe>, <img>, <link>, <script> Gibt an, welcher Referrer beim Abrufen der Ressource gesendet wird.
rel <a>, <area>, <link> Gibt die Beziehung des Zielobjekts zum Linkobjekt an.
required <input>, <select>, <textarea> Gibt an, ob dieses Element ausgefüllt werden muss oder nicht.
reversed <ol> Gibt an, ob die Liste in absteigender Reihenfolge anstelle einer aufsteigenden Reihenfolge angezeigt werden soll.
role Globales Attribut Definiert eine explizite Rolle für ein Element zur Verwendung durch unterstützende Technologien.
rows <textarea> Definiert die Anzahl der Zeilen in einem Texteingabefeld.
rowspan <td>, <th> Definiert die Anzahl der Zeilen, die eine Tabellenzelle überspannen soll.
sandbox <iframe> Verhindert, dass ein in einem iframe geladenes Dokument bestimmte Funktionen (wie das Absenden von Formularen oder das Öffnen neuer Fenster) verwendet.
scope <th> Definiert die Zellen, auf die sich der in dem th-Element bestimmte Header bezieht.
scoped Nicht standardisiert Veraltet <style>
selected <option> Definiert einen Wert, der beim Laden der Seite ausgewählt wird.
shape <a>, <area>
size <input>, <select> Definiert die Breite des Elements (in Pixeln). Wenn das Attribut type des Elements text oder password ist, dann ist es die Anzahl der Zeichen.
sizes <link>, <img>, <source>
slot Globales Attribut Weist einem Element einen Slot in einem Shadow-DOM-Shadow-Tree zu.
span <col>, <colgroup>
spellcheck Globales Attribut Gibt an, ob die Rechtschreibprüfung für das Element erlaubt ist.
src <audio>, <embed>, <iframe>, <img>, <input>, <script>, <source>, <track>, <video> Die URL des einbindbaren Inhalts.
srcdoc <iframe>
srclang <track>
srcset <img>, <source> Eine oder mehrere responsive Bildkandidaten.
start <ol> Definiert die erste Zahl, wenn sie von 1 abweicht.
step <input>
style Globales Attribut Definiert CSS-Stile, die zuvor festgelegte Stile überschreiben.
summary Veraltet <table>
tabindex Globales Attribut Überschreibt die Standardeinstellung der Tabreihenfolge des Browsers und folgt stattdessen der angegebenen.
target <a>, <area>, <base>, <form> Gibt an, wo das verlinkte Dokument geöffnet werden soll (im Fall eines <a>-Elements) oder wo die empfangene Antwort angezeigt werden soll (im Fall eines <form>-Elements).
title Globales Attribut Text, der in einem Tooltip angezeigt wird, wenn über das Element gehalten wird.
translate Globales Attribut Gibt an, ob die Attributwerte eines Elements und die Werte seiner Text-Knoten-Kinder beim Lokalisieren der Seite übersetzt werden sollen oder ob sie unverändert bleiben sollen.
type <button>, <input>, <embed>, <object>, <ol>, <script>, <source>, <style>, <menu>, <link> Definiert den Typ des Elements.
usemap <img>, <input>, <object>
value <button>, <data>, <input>, <li>, <meter>, <option>, <progress>, <param> Definiert einen Standardwert, der im Element bei Seitenaufruf angezeigt wird.
width <canvas>, <embed>, <iframe>, <img>, <input>, <object>, <video>

Für die hier aufgeführten Elemente stellt dies die Breite des Elements dar.

Hinweis: Für alle anderen Fälle, wie bei <div>, handelt es sich um ein Legacy-Attribut, in diesem Fall sollte die CSS-Eigenschaft width stattdessen verwendet werden.

wrap <textarea> Gibt an, ob der Text umbrochen werden soll.

Inhaltsattribute vs. IDL-Attribute

In HTML haben die meisten Attribute zwei Erscheinungsformen: das Inhaltsattribut und das IDL-Attribut (Interface Definition Language).

Das Inhaltsattribut ist das Attribut, wie Sie es aus dem Inhalt (dem HTML-Code) setzen, und Sie können es über element.setAttribute() oder element.getAttribute() setzen oder abrufen. Das Inhaltsattribut ist immer ein String, auch wenn der erwartete Wert eine Ganzzahl sein sollte. Um beispielsweise das maxlength eines <input>-Elements auf 42 zu setzen, müssen Sie setAttribute("maxlength", "42") auf diesem Element aufrufen.

Das IDL-Attribut ist auch bekannt als JavaScript-Eigenschaft. Dies sind die Attribute, die Sie mit JavaScript-Eigenschaften wie element.foo lesen oder setzen können. Das IDL-Attribut wird immer das zugrunde liegende Inhaltsattribut verwenden (aber möglicherweise transformieren), um einen Wert zurückzugeben, wenn Sie darauf zugreifen und etwas im Inhaltsattribut speichern, wenn Sie es setzen. Mit anderen Worten, die IDL-Attribute spiegeln im Wesentlichen die Inhaltsattribute wider.

Meistens geben IDL-Attribute ihre Werte so zurück, wie sie tatsächlich verwendet werden. Zum Beispiel ist der Standard-type für <input>-Elemente "text", sodass, wenn Sie input.type="foobar" setzen, das <input>-Element vom Typ Text ist (in der Erscheinung und im Verhalten), aber der "type"-Wert des Inhaltsattributs wird "foobar" sein. Das IDL-Attribut type wird jedoch den String "text" zurückgeben.

IDL-Attribute sind nicht immer Strings; zum Beispiel ist input.maxlength eine Zahl (ein signed long). Bei der Verwendung von IDL-Attributen lesen oder setzen Sie Werte des gewünschten Typs, sodass input.maxlength immer eine Zahl zurückgibt und wenn Sie input.maxlength setzen, erwartet es eine Zahl. Wenn Sie einen anderen Typ übergeben, wird dieser automatisch in eine Zahl umgewandelt, wie es von den Standard-JavaScript-Regeln für die Typumwandlung vorgeschrieben ist.

IDL-Attribute können andere Typen reflektieren wie unsigned long, URLs, booleans, usw. Leider gibt es keine klaren Regeln und die Art und Weise, wie IDL-Attribute zusammen mit ihren entsprechenden Inhaltsattributen funktionieren, hängt vom Attribut ab. Meistens werden sie den im Spezifikationsdokument festgelegten Regeln folgen, aber manchmal tun sie das nicht. HTML-Spezifikationen versuchen, dies so entwicklerfreundlich wie möglich zu gestalten, aber aus verschiedenen Gründen (meist historische) verhalten sich einige Attribute ungewöhnlich (select.size zum Beispiel) und Sie sollten die Spezifikationen lesen, um zu verstehen, wie genau sie sich verhalten.

Boolesche Attribute

Einige Inhaltsattribute (z.B. required, readonly, disabled) werden boolesche Attribute genannt. Wenn ein boolesches Attribut vorhanden ist, ist dessen Wert true, und wenn es abwesend ist, ist dessen Wert false.

HTML definiert Einschränkungen für die zulässigen Werte von booleschen Attributen: Wenn das Attribut vorhanden ist, muss sein Wert entweder die leere Zeichenkette sein (äquivalent dazu, dass das Attribut keinen Wert zugewiesen hat) oder ein Wert, der eine ASCII-Fall-insensitive Entsprechung für den kanonischen Namen des Attributs ist, ohne voran- oder nachgestellte Leerzeichen. Die folgenden Beispiele sind gültige Methoden zur Kennzeichnung eines booleschen Attributs:

html
<div itemscope>This is valid HTML but invalid XML.</div>
<div itemscope=itemscope>This is also valid HTML but invalid XML.</div>
<div itemscope="">This is valid HTML and also valid XML.</div>
<div itemscope="itemscope">
  This is also valid HTML and XML, but perhaps a bit verbose.
</div>

Um es klarzustellen, die Werte "true" und "false" sind bei booleschen Attributen nicht erlaubt. Um einen false-Wert darzustellen, muss das Attribut vollständig weggelassen werden. Diese Einschränkung klärt einige häufige Missverständnisse auf: Mit checked="false" zum Beispiel würde das checked-Attribut des Elements als true interpretiert werden, weil das Attribut vorhanden ist.

Event-Handler-Attribute

Warnung: Die Verwendung von Event-Handler-Inhaltsattributen wird nicht empfohlen. Die Mischung aus HTML und JavaScript führt oft zu unwartbarem Code, und die Ausführung von Event-Handler-Attributen kann auch durch Content-Sicherheitsrichtlinien blockiert werden.

Zusätzlich zu den in der Tabelle oben aufgelisteten Attributen können globale Event-Handler — wie onclick — auch als Inhaltsattribute auf allen Elementen angegeben werden.

Alle Event-Handler-Attribute akzeptieren einen String. Der String wird verwendet, um eine JavaScript-Funktion wie function name(/*args*/) {body} zu synthetisieren, wobei name der Attributname ist, und body der Wert des Attributs ist. Der Handler erhält die gleichen Parameter wie sein JavaScript-Event-Handler-Gegenstück — die meisten Handler erhalten nur einen event-Parameter, während onerror fünf erhält: event, source, lineno, colno, error. Dies bedeutet, dass Sie im Allgemeinen die Variable event innerhalb des Attributs verwenden können.

html
<div onclick="console.log(event)">Click me!</div>
<!-- The synthesized handler has a name; you can reference itself -->
<div onclick="console.log(onclick)">Click me!</div>

Siehe auch