Heim  >  Artikel  >  Web-Frontend  >  CSS-Steuerung schreibgeschützt

CSS-Steuerung schreibgeschützt

王林
王林Original
2023-05-29 11:39:371998Durchsuche

Schreibgeschütztes CSS-Steuerelement: So implementieren Sie mit CSS die schreibgeschützte Steuerung von HTML-Formularen

Als Frontend-Entwickler müssen Sie häufig HTML-Formulare entwerfen und implementieren. Manchmal müssen Sie bestimmte Felder schreibgeschützt machen. Der Inhalt schreibgeschützter Felder kann von Benutzern angezeigt, aber nicht geändert werden. Dies verhindert, dass Benutzer Formulardaten unnötig ändern, und schützt die Integrität und Genauigkeit der Daten. In diesem Artikel wird erläutert, wie Sie mithilfe von CSS eine schreibgeschützte Steuerung von HTML-Formularen implementieren.

In HTML-Formularen gibt es zwei Möglichkeiten, ein Feld als schreibgeschützt festzulegen: mithilfe des HTML-Attributs „readonly“ oder mithilfe von CSS-Stilen. Wir werden CSS zur schreibgeschützten Steuerung verwenden, da diese Methode flexibler und einfacher zu steuern ist.

In CSS können Sie das Attribut „pointer-events“ verwenden, um das schreibgeschützte Attribut des Formularfelds zu steuern. Pointer-Events ist eine neue Eigenschaft von CSS3, die hauptsächlich dazu dient, zu steuern, ob Mausereignisse von Elementen ausgelöst werden können. Wenn „pointer-events:none“ festgelegt ist, bedeutet dies, dass das Element nicht auf Mausereignisse reagiert, d. h. das Element wird zu einem schreibgeschützten Steuerelement. Schauen wir uns nun die einzelnen Schritte an:

1. Fügen Sie Formularelemente in HTML hinzu.

Fügen Sie zunächst Formularelemente hinzu, die im HTML auf schreibgeschützt gesetzt werden müssen Code, zum Beispiel Textfelder, Passwortfelder, Dropdown-Felder usw. Hier ist ein einfaches Beispiel:

<label>用户名</label>
<input type="text" name="username" id="username" />

<label>密码</label>
<input type="password" name="password" id="password" />

<label>性别</label>
<select name="gender" id="gender">
<option value="male">男</option>
<option value="female">女</option>
</select>

2. Fügen Sie dem Formularelement einen schreibgeschützten CSS-Stil hinzu.

Als nächstes legen Sie ihn in der CSS-Datei oder im CSS-Stil auf schreibgeschützt fest Markieren Sie sie nach Bedarf. Fügen Sie Stile zu Formularelementen hinzu. Mit dem Attribut „pointer-events:none“ kann ein Element schreibgeschützt gemacht werden. Gleichzeitig können Sie diesen Feldern verschiedene Stile hinzufügen, um sie hervorzuheben. Hier ist ein Beispiel:

input[readonly], select[readonly] {
  pointer-events:none;
  background-color:#f0f0f0;
  color:#888;
}

In diesem Beispiel verwenden wir „pointer-events:none“, um das Element auf schreibgeschützt zu setzen. Stellen Sie außerdem die Hintergrundfarbe auf Hellgrau und die Schriftfarbe auf Dunkelgrau ein und fügen Sie dem Element ein „readonly“-Attribut hinzu. Dadurch ändert sich die Hintergrundfarbe dieser Formularelemente in Hellgrau und die Schriftfarbe in Dunkelgrau und kann nicht geändert werden.

3. Verwenden Sie JavaScript, um den schreibgeschützten Status zu steuern.

Zusätzlich zur Verwendung von CSS-Stilen zur Steuerung des schreibgeschützten Status können wir auch JavaScript zur Steuerung des schreibgeschützten Status verwenden -nur Status von Formularelementen. Wenn Sie JavaScript verwenden, müssen Sie dem Formularelement einen Ereignis-Listener hinzufügen, damit bei einer Änderung des schreibgeschützten Status des Formularelements die entsprechende JavaScript-Funktion aufgerufen wird. Hier ist ein Beispiel:

<input type="button" value="取消只读" onclick="makeReadonly(false)" />
<input type="button" value="设置只读" onclick="makeReadonly(true)" />

<script type="text/javascript">
function makeReadonly(isReadonly) {
  document.getElementById("username").readOnly = isReadonly;
  document.getElementById("password").readOnly = isReadonly;
  document.getElementById("gender").disabled = isReadonly;
  
  // 更新表单样式
  if (isReadonly) {
    document.getElementById("username").classList.add("readonly");
    document.getElementById("password").classList.add("readonly");
    document.getElementById("gender").classList.add("readonly");
  } else {
    document.getElementById("username").classList.remove("readonly");
    document.getElementById("password").classList.remove("readonly");
    document.getElementById("gender").classList.remove("readonly");
  }
}
</script>

In diesem Beispiel haben wir zwei Schaltflächen hinzugefügt, eine zum Festlegen des schreibgeschützten Formularelements und die andere zum Aufheben des schreibgeschützten Status. Wenn Benutzer auf diese Schaltflächen klicken, werden die entsprechenden JavaScript-Funktionen aufgerufen. Die Funktion besteht darin, den schreibgeschützten Status und Stil des Formularelements basierend auf dem Parameterwert zu aktualisieren.

Zusammenfassung

In diesem Artikel haben wir die Verwendung von CSS-Stilen vorgestellt, um den schreibgeschützten Status von HTML-Formularelementen zu steuern. Mit Hilfe des CSS3-Attributs „pointer-events“ können wir diese Funktion schnell implementieren. Gleichzeitig haben wir auch demonstriert, wie man mit JavaScript den schreibgeschützten Status von Formularelementen dynamisch steuert. Unabhängig davon, ob Sie CSS oder JavaScript verwenden, um die schreibgeschützten Attribute von Formularelementen zu steuern, können Sie mit diesen Techniken eine bessere Datenkontrolle und Benutzererfahrung in Ihren Webanwendungen erreichen.

Das obige ist der detaillierte Inhalt vonCSS-Steuerung schreibgeschützt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:CSS schließen CSSNächster Artikel:CSS schließen CSS