: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 selektiert Elemente (wie bestimmte <input>
-Typen und <textarea>
), die vom Benutzer nicht bearbeitet werden können. Elemente, bei denen das HTML-Attribut readonly
keine Wirkung hat (wie zum Beispiel <input type="radio">
, <input type="checkbox">
und alle anderen Nicht-Formular-Elemente), werden ebenfalls von der :read-only
Pseudoklasse ausgewählt. Tatsächlich entspricht :read-only
allem, was :read-write
nicht entspricht, was es äquivalent zu :not(:read-write)
macht.
Probieren Sie es aus
label,
input[type="submit"] {
display: block;
margin-top: 1em;
}
*:read-only {
font-weight: bold;
color: indigo;
}
<p>Please fill your details:</p>
<form>
<label for="email">Email Address:</label>
<input id="email" name="email" type="email" value="[email protected]" />
<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" />
<input type="submit" value="Submit form" />
</form>
Syntax
:read-only {
/* ... */
}
Beispiele
Bestätigung von Formularinformationen mit schreibgeschützten oder schreibbaren Steuerelementen
Ein Anwendungsfall für schreibgeschützte Formularelemente ist es, dem Benutzer zu ermöglichen, Informationen zu überprüfen und zu bestätigen, die er in einem früheren Formular eingegeben haben könnte (zum Beispiel Lieferdetails), während er dennoch die Informationen zusammen mit dem Rest des Formulars übermitteln kann. Genau das tun wir im folgenden Beispiel.
Die :read-only
Pseudoklasse wird verwendet, um das gesamte Styling zu entfernen, das die Eingabefelder wie anklickbare Felder aussehen lässt, sodass sie eher wie schreibgeschützte Absätze aussehen. Die :read-write
Pseudoklasse wird hingegen verwendet, um einige schönere Stylings für das bearbeitbare <textarea>
bereitzustellen.
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 schreibgeschützter Nicht-Formular-Steuerelemente
Dieser Selektor wählt nicht nur <input>
/<textarea>
-Elemente aus – er wird jedes Element auswählen, das vom Benutzer nicht bearbeitet werden kann.
<p contenteditable>This paragraph is editable; it is read-write.</p>
<p>This paragraph is not editable; it is read-only.</p>
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 # selector-read-only |
Selectors Level 4 # read-only-pseudo |
Browser-Kompatibilität
Siehe auch
:read-write
- HTML
contenteditable
Attribut