Ich habe eine allgemeine Regel, die allen DIVs ein Hintergrundbild gibt.
Ich habe ein Div (mit id = 'a'), das nicht das Hintergrundbild haben soll.
Welche CSS-Regel muss ich geben?
192
Versuchen:
div#a {
background-image:none
}
#a {}
. Verwenden Sie keine Elementtypen in Selektoren, es sei denn, dies ist erforderlich .quelle
Obwohl das "! Wichtig" möglicherweise nicht notwendig ist, weil "div # a" eine höhere Spezifität hat als nur "div".
quelle
Ich verwende zusätzlich zur Regel ein transparentes Abstandsbild, um das Hintergrundbild zu entfernen, da IE6 das zu ignorieren scheint,
background-image: none
obwohl es markiert ist!important
.quelle
background-image:none;
(mit oder ohne!important
) funktioniert einwandfrei.Da in CSS3 möglicherweise mehrere Hintergrundbilder festgelegt werden, wird durch die Einstellung "Keine" nur eine neue Ebene erstellt und nichts ausgeblendet.
http://www.css3.info/preview/multiple-backgrounds/ http://www.w3.org/TR/css3-background/#backgrounds
Ich habe noch keine Lösung gefunden ...
quelle
für ältere Browser .. wenn Sie CSS in einigen framewokrk.css wie select2.css im IE9-Hintergrundbild definiert haben: -webkit-gradient usw. und Sie möchten es über eine andere .css-Umschreibung mit "Hintergrundbild: keine! wichtig" funktioniert nicht. Ich habe dieselbe Farbe verwendet, um Farbverläufe wie die Hintergrundfarbe der Seite zu färben.
quelle
Wenn Ihre Div-Regel gerecht ist
div {...}
, ist#a {...}
dies ausreichend. Wenn es komplizierter ist, benötigen Sie einen "spezifischeren" Selektor, wie in der CSS-Spezifikation zur Spezifität definiert . (#a spezifischer als div ist nur ein Aspekt des Algorithmus.)quelle
Wann
background-image: none !important;
haben keine Wirkung. Sie können verwenden:quelle
Funktioniert das nicht:
Könnte Probleme mit älteren Browsern haben ...
quelle
Ersetzen Sie die Regel durch folgende:
quelle