background-color: inherit funktioniert nicht auf input-element im IE 8/9/10
Wenn ich ein div mit der eine explizite Hintergrundfarbe, und ein input-element im inneren, mit background-color gesetzt, zu 'Erben', dann funktioniert es wie erwartet auf Chrome, Firefox und Safari, aber funktioniert nicht auf IE 8, 9, oder 10.
Hier ein minimal-Beispiel, das veranschaulicht das problem: jsbin-Beispiel
Das Textfeld sollte die gleiche Hintergrundfarbe. Wenn Sie die Maus über das div, die Hintergrundfarbe des div ändert, und der Eingang sollte sich ebenso ändern. Wenn Sie in den Eingang, es gibt einen :focus-Regel, die überschreibt den Erben.
- Dies ist ein guter! Eine subtile stapeln, um cross-browser-Problem...
- Das ist ausreichend nervig. Übrigens sehe ich auch auf IE 11, aber nicht auf der Kante. Ein weiterer jsfiddle der Problematisierung: jsfiddle.net/ctn5j8m3/1
Du musst angemeldet sein, um einen Kommentar abzugeben.
War ich in der Lage, um den Effekt zu bekommen, den Sie wollte mit der folgenden CSS:
Für einige Grund -, erbschaft-mit der hintergrund-Farbe Eigenschaft im IE10 zu sein scheint, anders implementiert als bei anderen Browsern.
Einstellung der Hintergrundfarbe zu
transparent
stattinherit
scheint zu funktionieren.Sehen Sie das Ergebnis auf der demo: http://jsfiddle.net/audetwebdesign/kTM2f/
Ich wünschte, ich hätte eine bessere Erklärung, aber zumindest haben wir eine Arbeit um.
Fehler mit IE8
Ich Lesen Sie einfach die folgenden Fragen:
Input-Feldern mit transparentem hintergrund sind nicht anklickbar im IE8
Einstellung
background-color: transparent
auf ein Eingabefeld erscheint, deaktivieren die Eingabe-Feld im IE8.In diesem Fall die CSS müsste die explizitere version:
Nicht background-color:transparent werden, die akzeptable Lösung?
hinzufügen
!important
um Ihre Regel-Eigenschaft: