:read-only

Baseline Widely available

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

Die :read-only CSS Pseudoklasse wählt Elemente aus (wie bestimmte <input>-Typen und <textarea>), die vom Benutzer nicht bearbeitet werden können. Elemente, auf die das HTML-Attribut readonly keine Wirkung hat (wie <input type="radio">, <input type="checkbox"> und alle anderen Nicht-Formularelemente), werden ebenfalls durch die :read-only Pseudoklasse ausgewählt. Tatsächlich stimmt :read-only mit allem überein, was :read-write nicht übereinstimmt, was es äquivalent zu :not(:read-write) macht.

Probieren Sie es aus

Syntax

css
:read-only {
  /* ... */
}

Beispiele

Bestätigung von Formularinformationen mit read-only oder read-write Steuerelementen

Eine Verwendung von schreibgeschützten Formularsteuerelementen besteht darin, dem Benutzer die Überprüfung und Verifizierung der Informationen zu ermöglichen, die er möglicherweise in einem früheren Formular eingegeben hat (zum Beispiel Versanddetails), während er die Informationen zusammen mit dem Rest des Formulars einreichen kann. Genau das tun wir im folgenden Beispiel.

Die :read-only Pseudoklasse wird verwendet, um das gesamte Styling zu entfernen, das die Eingaben wie anklickbare Felder aussehen lässt, sodass sie eher wie schreibgeschützte Absätze aussehen. Die :read-write Pseudoklasse hingegen wird verwendet, um dem bearbeitbaren <textarea> ein schöneres Styling zu verleihen.

css
input:read-only,
textarea:read-only {
  border: 0;
  box-shadow: none;
  background-color: #ddd;
}

textarea:read-write {
  outline: 1px dashed red;
  outline-offset: 2px;
  border-radius: 5px;
}

Styling von schreibgeschützten Nicht-Formularsteuerelementen

Dieser Selektor wählt nicht nur <input>/<textarea>-Elemente aus – er wird jedes Element auswählen, das vom Benutzer nicht bearbeitet werden kann.

html
<p contenteditable>This paragraph is editable; it is read-write.</p>

<p>This paragraph is not editable; it is read-only.</p>
css
p {
  font-size: 150%;
  padding: 5px;
  border-radius: 5px;
}

p:read-only {
  background-color: red;
  color: white;
}

p:read-write {
  background-color: lime;
}

Spezifikationen

Specification
HTML Standard
# selector-read-only
Selectors Level 4
# rw-pseudos

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch