Как удалить фоновое изображение в CSS? - PullRequest
180 голосов
/ 22 сентября 2009

У меня есть общее правило, которое дает всем DIV фоновое изображение.
У меня есть один div (с id = 'a'), и я не хочу, чтобы он имел фоновое изображение.
Какое правило CSS мне нужно дать?

Ответы [ 10 ]

322 голосов
/ 22 сентября 2009

Попробуйте:

div#a {
    background-image:none
}
34 голосов
/ 22 сентября 2009
div#a {
    background-image: none;
}
29 голосов
/ 22 сентября 2009
div#a {
  background-image: none !important;
}

Хотя «! Важное» может и не быть необходимым, поскольку «div # a» имеет более высокую специфичность, чем просто «div».

14 голосов
/ 15 октября 2012
div#a {
  background-image: url('../images/spacer.png');
  background-image: none !important;
}

я использую прозрачное разделительное изображение в дополнении к правилу, чтобы удалить фоновое изображение, потому что IE6 кажется игнорировать background-image: none даже если она помечена !important.

8 голосов
/ 27 июня 2013

Так как в css3 можно установить несколько фоновых изображений, установка «none» только создаст новый слой и ничего не скроет.

http://www.css3.info/preview/multiple-backgrounds/ http://www.w3.org/TR/css3-background/#backgrounds

Я пока не нашел решения ...

2 голосов
/ 03 апреля 2015
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%);

для старых браузеров ... если вы определили css в каком-то framewokrk.css, например, select2.css в IE9 background-image: -webkit-Gradient и т. Д., И вы хотите переписать его с помощью другого .css с помощью background-image: none ! важно "не работает. Я использовал тот же цвет, чтобы закрасить градиент, как цвет фона страницы.

1 голос
/ 22 сентября 2009

Если ваше правило div просто div {...}, тогда достаточно #a {...}. Если это более сложно, вам нужен «более конкретный» селектор, как определено в спецификации CSS для специфичности . (#a более конкретен, чем div, это всего лишь один аспект алгоритма.)

0 голосов
/ 14 октября 2018

Когда background-image: none !important; не имеют никакого эффекта. Вы можете использовать:

background-size: 0 !important;
0 голосов
/ 22 августа 2013

Замените ваше правило следующим:

div:not(#a) { // add your bg image here //}
0 голосов
/ 22 сентября 2009

Разве это не работает:

.clear-background{
background-image: none;
}

Могут возникнуть проблемы в старых браузерах ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...