Как удалить фоновое изображение в css?

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

Ответ 1

Try:

div#a {
    background-image:none
}

Ответ 2

div#a {
    background-image: none;
}

Ответ 3

div#a {
  background-image: none !important;
}

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

Ответ 4

div#a {
  background-image: url('../images/spacer.png');
  background-image: none !important;
}

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

Ответ 6

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

Ответ 7

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 "важно" не работает. Я использовал тот же цвет для цветового градиента, как цвет фона страницы.

Ответ 8

Не работает ли это:

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

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

Ответ 9

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

div:not(#a) { // add your bg image here //}