HTML-Attribute – Informationen für Browser und Javascript

Neue Attribute HTML 5 und HTML Attribute für Javascript

Genauso wie die Kernattribute, die schon in HTML 4 vorhanden waren, erweitern die HTML-Attribute, die mit HTML 5 eingezogen sind, die Informationen für Browser und Suchmaschinen oder richten sich an Javascript. Diese Attribute sitzen nur in den Tags innerhalb des body-Elements.

Informationen für Browser, Suchmaschinen und Javascript

checkspellRechtschreibprüfung durchführen
contenteditableBenutzer kann den Inhalt ändern
contextmenuKontextmenü eines Elements, das sich mit einem Rechtsklick öffnen soll
data-*Ein eigenes Attribut für individuelle Javascript-Anwendungen.
download Lädt eine Datei beim Click
draggableBenutzer kann das Element ziehen.
dropzoneZiel eines mit draggable gezogenen Elements.
Event Handleronclick, onsubmit, ontouch … Javascript Event Handler können direkt im HTML-Tag sitzen.
Inhalt ist momentan nicht relevant und verborgen
translateOb das Element übersetzt werden soll oder nicht
itemscope, itemid, itemprop, itemref, itemtype Mikroformate, z.B. wie die von schema.org definiere Syntax.

contextmenu

contextmenu erzeugt ein Menü, das sich bei einem Rechtsklick mit der Maus öffnet. Der Wert muss die id eines Menü-Elements im DOM sein.

contextmenu wird nur von Firefox unterstützt und wird wahrscheinlich aus Mangel an Benutzerinteresse nicht weiterentwickelt. Auf der einen Seite gibt es keine Formatierung, die zeigt, dass ein Element ein Kontextmenü besitzt, auf der anderen Seite gibt es kein Äquivalent zum Rechtsklick auf Touch-Devices.

HTML Textelemente: details, menu, summary, dialog …

Zurück zur Liste

contenteditable

Schreib mal was

<p contenteditable="true" spellcheck="true">Schreib mal was</p>

Wird von allen modernen Browsern unterstützt.

HTML contenteditable mit Javascript localStorage speichern

Zurück zur Liste

checkspell

Schaltet die Rechtschreibprüfung für Eingabefelder ein.

Schreib mal was

<p contenteditable="true" spellcheck="true">Schreib mal was</p>

Wird von allen modernen Browsern unterstützt.

Zurück zur Liste

download

Kennzeichnet einen Link als ladbares Element anstelle eines navigierbaren Links.

Bild herunter laden? Download PNG

Bild herunter laden? <a href="image.png" download="">Download PNG</a>

download ist ein Attribut für a-Tags – mehr dazu unter HTML a Link oder Anker-Tag.

Da ältere Browser das Attribut nicht unbedingt unterstützen, andere Browser vielleicht Downloads nur von derselben Domain erlauben, sitzt besser noch eine Kurzanleitung wie "Rechts klicken zum Download" beim Download-Link.

Zurück zur Liste

draggable

draggable erklärt ein Element zu Drag & Drop, damit es von einem Bereich der Seite in einen anderen gezogen werden kann. Die Angabe draggable alleine reicht nicht, sondern dazu wird noch Javascript gebraucht.

Javascript Drag and Drop

Alle modernen Browser, aber IE10 und Edge mit Einschränkungen.

Zurück zur Liste

dropzone

dropzone ist ein Bereich, auf den das draggable-Element gezogen werden kann und ist ein einfaches Element mit etwas CSS, um es innerhalb der Seite herauszustellen.

Javascript Drag and Drop

Alle modernen Browser, aber IE10 und Edge mit Einschränkungen.

Zurück zur Liste

data-Attribut

Das data-Attribut ist für den Einsatz mit Javascript gedacht. Die Browser ignorieren Attribute, die mit data- beginnen.

In HTML4 / XHTML konnten Informationen für Scripte und Anwendungen nur in class- und rel-Attributen untergebracht werden. Aber stellen wir uns nur einmal vor, wir hätten ein Attribut »dropzone« genannt – mit HTML5 wäre dropzone zu einem regulären Attribut geworden.

<div id="book" 
   data-title="Ab die Post" 
   data-autor="Pratchett"
   > … 
</div>
document.querySelector('#book').dataset.title 
document.querySelector('#book').dataset.autor
Einfaches Auslesen durch dataset

Die Werte von data-Attributen sind privater Natur. Die Suchmaschinen sollen diese Attribute ignorieren.

Wird von allen modernen Browsern unterstützt.

Mehr zum Javascript data-Attribut

Zurück zur Liste

Javascript Event Handler als HTML-Attribute

In den Anfängen von Javascript saßen Javascript-Aufrufe als HTML-Attribute wie onclick, onmouseover und onload als Event Attribute in HTML-Tags.

Javascript wird heute mit einem Script-Tag vom HTML-Markup getrennt oder mit einem Script-Tag aus einer externen Javascript-Datei geladen. Event-Handler, die auf Ereignisse wie ein Klick auf einem HTML-Element oder einen submit-Button reagieren, können aber auch direkt als reguläres HTML-Attribut in fast alle HTML-Tags gesetzt werden.

Diese Praxis ist mit vielen Nachteilen verbunden und wird nur in Ausnahmen verwendet. Anstelle der Event-Handler in HTML-Tags wird die Registrierung von Ereignissen verwendet.

<button onclick="copyField()">Kopieren</button>

function copyField () {
  document.querySelector("#feld2").value = 
    document.querySelector("#feld1").value
}

Javascript Events sind immer noch valide HTML-Attribute. Allerdings wird diese Technik heute kaum noch angewendet.

Nicht alle Javascript-Events bilden valide HTML-Attribute für alle Elemente. Bei Touchscreen-Events wie ontouch auf einem div-Element meldet der Validator einen Fehler (HTML 5.3 Editor’s Draft, 4 July 2018).

Zurück zur Liste

hidden

Elemente, in denen hidden gesetzt ist, werden vom Browser nicht angezeigt und gelten als irrelevant (z.B. bis der Benutzer eine bestimmte Aktion durchführt).

<img hidden id="hiddenimg" src="roses.jpg" width="450" height="174" alt="hidden attribute">

hidden ist ein einfacher Schalter, ähnlich wie bei CSS display:none nimmt das Element keinen Platz ein.

Zurück zur Liste

itemscope, itemtype, itemprop

Mikroformate wie schema.org definieren eine Syntax – ein Schema oder eine Schablone, mit der Suchmaschinen den Inhalt besser identifizieren können. Die Mikroformate von schema.org eignen sich besonders für Inhalte aus Datenbanken wie Events, Rezepte (ja, Koch- und Backrezepte), Produkte wie Pflastermörtel oder Geschirr, Restaurants und auch den lokalen Buchhändler.

Der Einsatz der Mikroformate erfordert nur einen kleinen Eingriff in das Content Management System oder die Templates eines Online-Shops, um die zusätzlichen Attribute aufzunehmen. Hier im Beispiel erkennt die Suchmaschine aus dem verwendeten Schema eine Liste von Events.

Mikroformate
<div itemscope itemtype="http://schema.org/EducationEvent">
   <time itemprop="startDate" content="2019-02-14T09:15" datetime="2019-02-14T09:15">Do., 14. Feb 2019</time>
   <h3 itemprop="name">Web 3 – Homepage für Selbstständige</h3>
   <div itemprop="location" itemscope itemtype="http://schema.org/Place">
      <span itemprop="name">Mühlhausen</span>
   </div>
</div>

Mikroformate nach schema.org

In den Suchergebnissen geben die Suchmaschinen einen Teil der Liste wieder – und zwar nur die Events in der Zukunft. Sie heben die Events hervor – auf diese Weise können sogar kleine Bilder in den Suchergebnissen erscheinen.

Web 3 – Homepage für Selbstständige web-seminar.de/schulung-homepage-marketing-pr Do,, 14. Feb 2019 Mühlhausen Mi., 31. Okt 2018 Halloween mit WordPress

Das HTML Link-Tag und das Meta-Tag können mit einem itemprop-Attribut auch im body des Dokuments eingesetzt werden.

JSON LD ersetzt die zahllosen meta-Tags und Attribute, die bei Microformats, RDF und Microdata das HTML überschwemmen.

Zurück zur Liste

HTML-Attribute 2