contenteditable

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

* Some parts of this feature may have varying levels of support.

Das contenteditable globale Attribut ist ein aufgezähltes Attribut, das angibt, ob das Element vom Benutzer bearbeitbar sein soll. Ist dies der Fall, ändert der Browser sein Widget, um die Bearbeitung zu ermöglichen.

Probieren Sie es aus

<blockquote contenteditable="true">
  <p>Edit this content to add your own quote</p>
</blockquote>

<cite contenteditable="true">-- Write your own name here</cite>
blockquote {
  background: #eee;
  border-radius: 5px;
  margin: 16px 0;
}

blockquote p {
  padding: 15px;
}

cite {
  margin: 16px 32px;
  font-weight: bold;
}

blockquote p::before {
  content: "\201C";
}

blockquote p::after {
  content: "\201D";
}

[contenteditable="true"] {
  caret-color: red;
}

Wert

Das Attribut muss einen der folgenden Werte annehmen:

  • true oder ein leer Zeichen, was anzeigt, dass das Element bearbeitbar ist.
  • false, was anzeigt, dass das Element nicht bearbeitbar ist.
  • plaintext-only, was anzeigt, dass der rohe Text des Elements bearbeitbar ist, jedoch die Formatierung von Rich-Text deaktiviert ist.

Wird das Attribut ohne einen Wert angegeben, wie <label contenteditable>Beispiel-Label</label>, wird sein Wert als leeres Zeichen behandelt.

Falls dieses Attribut fehlt oder sein Wert ungültig ist, wird sein Wert von seinem Elternelement geerbt: Das Element ist also bearbeitbar, wenn sein Elternteil bearbeitbar ist.

Beachten Sie, dass dieses Attribut, obwohl es die erlaubten Werte true und false enthält, ein aufgezähltes und kein Boolean-Attribut ist.

Sie können die Farbe, die zur Darstellung des Texteingabecursors verwendet wird, mit der CSS-Eigenschaft caret-color festlegen.

Elemente, die durch das contenteditable-Attribut bearbeitbar und somit interaktiv gemacht werden, können fokussiert werden. Sie nehmen an sequentieller Tastaturnavigation teil. Allerdings werden Elemente mit dem contenteditable-Attribut, die sich innerhalb anderer contenteditable-Elemente befinden, standardmäßig nicht zur Tab-Reihenfolge hinzugefügt. Sie können die verschachtelten contenteditable-Elemente zur Tastaturnavigationssequenz hinzufügen, indem Sie den Wert von tabindex angeben (tabindex="0").

Wenn Inhalte in ein Element mit contenteditable="true" eingefügt werden, bleibt die gesamte Formatierung erhalten. Werden Inhalte in ein Element mit contenteditable="plaintext-only" eingefügt, wird die gesamte Formatierung entfernt.

Beispiele

Einfügen von Inhalten in contenteditable

Dieses Beispiel hat zwei <div>-Elemente mit contenteditable, das erste mit dem Wert true und das zweite mit dem Wert plaintext-only. Kopieren Sie den Inhalt unten und fügen Sie ihn in jedes div ein, um ihre Effekte zu sehen.

HTML

html
<h2>Pasting areas</h2>
<section class="pasting">
  <div class="wrapper">
    <h3>contenteditable="true"</h3>
    <div contenteditable="true"></div>
  </div>
  <div class="wrapper">
    <h3>contenteditable="plaintext-only"</h3>
    <div contenteditable="plaintext-only"></div>
  </div>
</section>

Spezifikationen

Specification
HTML
# attr-contenteditable

Browser-Kompatibilität

Siehe auch