J'ai une règle générale qui donne à tous les DIV une image de fond.
J'ai un div (avec id = 'a') dont je ne veux pas qu'il ait l'image d'arrière-plan.
Quelle règle css dois-je lui donner?
195
Essayer:
div#a {
background-image:none
}
#a {}
. N'utilisez pas de types d'élément dans les sélecteurs sauf si nécessaire .div#a { background-image: none; }
la source
div#a { background-image: none !important; }
Bien que "! Important" ne soit pas nécessaire, car "div # a" a une spécificité plus élevée que simplement "div".
la source
div#a { background-image: url('../images/spacer.png'); background-image: none !important; }
J'utilise une image d'espacement transparente en plus de la règle pour supprimer l'image d'arrière-plan car IE6 semble ignorer le
background-image: none
même s'il est marqué!important
.la source
background-image:none;
(avec ot sans!important
) fonctionne parfaitement.Puisque dans css3, on peut définir plusieurs images d'arrière-plan en définissant "aucune" ne créera qu'un nouveau calque et ne cachera rien.
http://www.css3.info/preview/multiple-backgrounds/ http://www.w3.org/TR/css3-background/#backgrounds
Je n'ai pas encore trouvé de solution ...
la source
background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff), color-stop(0.5, #fff)); background-image: -webkit-linear-gradient(center top, #fff 0%, #fff 50%); background-image: -moz-linear-gradient(center top, #fff 0%, #fff 50%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#ffffff', GradientType=0); background-image: linear-gradient(to bottom, #fff 0%, #fff 50%);
pour les navigateurs plus anciens .. si vous avez défini css dans certains framewokrk.css comme select2.css dans IE9 background-image: -webkit-gradient etc. et que vous le voulez via une autre réécriture .css avec "background-image: none! important" ne fonctionne pas. J'ai utilisé la même couleur pour colorer le dégradé comme la couleur d'arrière-plan de la page.
la source
Quand
background-image: none !important;
n'ont aucun effet. Vous pouvez utiliser:background-size: 0 !important;
la source
Si votre règle div est juste
div {...}
, alors#a {...}
sera suffisante. Si c'est plus compliqué, vous avez besoin d'un sélecteur "plus spécifique", tel que défini par la spécification CSS sur la spécificité . (#a étant plus spécifique que div n'est qu'un seul aspect de l'algorithme.)la source
Cela ne fonctionne pas:
.clear-background{ background-image: none; }
Peut avoir des problèmes sur les anciens navigateurs ...
la source
Remplacez la règle que vous avez par la suivante:
div:not(#a) { // add your bg image here //}
la source