Heim  >  Artikel  >  Web-Frontend  >  Warum kann ich die Farbe eines Kontrollkästchens nicht mit CSS ändern?

Warum kann ich die Farbe eines Kontrollkästchens nicht mit CSS ändern?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-01 09:52:02257Durchsuche

Why Can't I Change the Color of a Checkbox with CSS?

Warum ist es unmöglich, die Farbe von Kontrollkästchen unabhängig von Codeänderungen zu ändern?

Trotz der Bemühungen, die Hintergrundfarbe von Kontrollkästchen über CSS anzupassen, gibt es viele Benutzer stoßen auf einen Mangel an sichtbaren Änderungen. Dieses Problem trat häufig in Firefox 29 und höher auf.

Erklärung

Die Unmöglichkeit, die Farbe des Kontrollkästchens zu ändern, ist darauf zurückzuführen, dass diese Funktionalität in HTML absichtlich weggelassen wurde. Kontrollkästchen und Optionsfelder gelten als „native“ Formularelemente, was bedeutet, dass ihr Aussehen vom Browser und nicht von CSS-Regeln bestimmt wird. Browser priorisieren die Konsistenz der Benutzeroberfläche und erzwingen daher die standardmäßigen visuellen Eigenschaften für diese Elemente.

Lösung

Um diese Einschränkung zu überwinden und das Erscheinungsbild des Kontrollkästchens anzupassen, Erwägen Sie die Verwendung der folgenden CSS-Eigenschaft:

<code class="css">accent-color</code>

Durch das Festlegen dieser Eigenschaft erhalten Sie Kontrolle über die Akzentfarbe, die auf das Kontrollkästchen angewendet wird, das das Häkchen und umfasst jeglicher begleitender Hintergrund. Hier ist ein Beispiel:

<code class="css">#cb1 {
  accent-color: #9b59b6; /* Change the color of the check mark within checkbox #cb1 to blue */
}</code>

Demonstration

Sehen Sie sich die Demo unten an, um die erfolgreiche Änderung von Kontrollkästchenfarben mithilfe der Eigenschaft „accent-color“ zu erleben:

<code class="html"><input id="cb1" type="checkbox" checked />
<input id="cb2" type="checkbox" checked />
<input id="cb3" type="checkbox" checked /></code>
<code class="css">#cb1 {
  accent-color: #9b59b6;
}

#cb2 {
  accent-color: #34495e;
}

#cb3 {
  accent-color: #e74c3c;
}</code>

Das obige ist der detaillierte Inhalt vonWarum kann ich die Farbe eines Kontrollkästchens nicht mit CSS ändern?. 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