Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

:read-only-CSS-Pseudoklasse

Baseline
Weitgehend verfügbar

Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Juli 2020 browserübergreifend verfügbar.

Die :read-only-CSS-Pseudoklasse wählt Elemente aus, die von Benutzern nicht bearbeitet werden können, beispielsweise bestimmte Typen von <input> und <textarea>. Sie wählt auch Elemente aus, auf die das HTML-Attribut readonly keine Wirkung hat, etwa <input type="radio">, <input type="checkbox"> und alle anderen Elemente, die keine Formularelemente sind. Tatsächlich stimmt :read-only mit allem überein, mit dem :read-write nicht übereinstimmt, und ist damit gleichbedeutend mit :not(:read-write).

Probieren Sie es aus

label {
  display: block;
  margin-top: 1em;
}

*:read-only {
  font-weight: bold;
  color: indigo;
}
<p>Please enter your details:</p>

<label for="email">Email Address:</label>
<input id="email" name="email" type="email" value="test@example.com" readonly />

<label for="note">Short note about yourself:</label>
<textarea id="note" name="note">Don't be shy</textarea>

<label for="pic">Your picture:</label>
<input id="pic" name="pic" type="file" />

Syntax

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

Beispiele

Formularinformationen mit schreibgeschützten oder bearbeitbaren Steuerelementen bestätigen

Schreibgeschützte Formularsteuerelemente können verwendet werden, damit Benutzer Informationen überprüfen und bestätigen können, die sie möglicherweise in einem vorherigen Formular eingegeben haben (beispielsweise Versandangaben). Gleichzeitig können sie die Informationen zusammen mit dem restlichen Formular absenden. Dieses Beispiel zeigt, wie solche Steuerelemente gestaltet werden können.

Die Pseudoklasse :read-only entfernt alle Stile, durch die die Eingabefelder wie anklickbare Felder aussehen. Dadurch wirken sie eher wie schreibgeschützte Absätze. Die Pseudoklasse :read-write hingegen verleiht dem bearbeitbaren <textarea> eine ansprechendere Gestaltung.

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

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

Schreibgeschützte Elemente gestalten, die keine Formularelemente sind

Dieser Selektor wählt nicht nur <input>- und <textarea>-Elemente aus, sondern jedes Element, das von Benutzern 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

Spezifikation
HTML
# selector-read-only
Selectors Level 4
# read-only-pseudo

Browser-Kompatibilität

Siehe auch