Ändern der Farbe deaktivierter HTML-Steuerelemente in IE8 mit CSS
Sie haben versucht, CSS zu verwenden, um die Farbe deaktivierter Eingabesteuerelemente zu ändern, aber es scheint nicht im IE8 zu funktionieren. Sie möchten den Grund verstehen und eine Möglichkeit finden, das Standardverhalten zu überschreiben.
Das von Ihnen verwendete CSS:
<code class="css">input[disabled='disabled'] { color: #666; }</code>
Funktioniert gut in den meisten Browsern, aber nicht in IE8. Dies liegt daran, dass IE8 ein spezifisches Verhalten für deaktivierte Elemente aufweist, bei dem es die Farbeigenschaft mit einer standardmäßigen grauen Farbe überschreibt, begleitet von einem seltsamen weißen Schatten.
Der Grund dafür ist, dass deaktivierte Elemente in IE8 als deaktiviert gelten „inaktive“ Steuerelemente sein, und der Browser wendet einen bestimmten Stil auf sie an, um dies anzuzeigen. Leider enthält dieser Stil eine erzwungene graue Farbe für den Text, die jegliches CSS überschreibt, das Sie anwenden möchten.
Die einzige Möglichkeit, dieses Verhalten zu vermeiden und die Farbe deaktivierter Steuerelemente in IE8 zu ändern, besteht darin, einen anderen Ansatz zu verwenden . Eine mögliche Lösung besteht darin, die Pseudoklasse „:disabled“ anstelle des Attributs „disabled“ zu verwenden:
<code class="css">input:disabled { color: #666; }</code>
Diese Pseudoklasse zielt auf Elemente ab, für die das Attribut „disabled“ festgelegt ist, legt das Attribut „disabled“ jedoch nicht tatsächlich fest selbst. Infolgedessen betrachtet IE8 die Steuerelemente nicht mehr als „inaktiv“ und ermöglicht Ihnen, die Standardstile zu überschreiben.
Das obige ist der detaillierte Inhalt vonWarum kann ich die Farbe deaktivierter HTML-Steuerelemente in IE8 nicht mit CSS ändern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!