Переместите записи [] из двойных кавычек, то есть используйте «записи»: []
Вы пытаетесь вставить строку вместо массива
Я просто добавил бы, что querystring оценивает URL изображения. Я обычно просто создаю "номер версии" и увеличиваю его каждый раз изменения образа:
div#news {
background: url(images/newsitem_background.jpg?v=00001) no-repeat;
...
}
Для предотвращения такой проблемы я видел, что веб-мастера добавляют номер версии к своим файлам. Таким образом, они загружаются site-look-124.css
и newsitem_background-7.jpg.
Не плохое решение, по моему скромному мнению.
Проверьте свои HTTP-заголовки на изображениях, которые Вы подаете, а также файл (файлы) CSS.
Если какой-либо из них будет установлен кэшироваться (или отсутствуют), то Вы найдете, что браузер правильно кэширует файл (файлы).
Я знаю, что это, вероятно, не то, что Вы хотите услышать, но значительно более вероятно, что Firefox следует стандарту, и IE делает что-то немного нечетное (и Вы просто, оказывается, полагаетесь на него ;)).
Кэширующееся поведение зависит от того, какие кэширующиеся заголовки отправляются с Вашими изображениями. Если Вы будете иметь возможность отправлять заголовки (или URL к одному из изображений), то мы сможем сказать Вам более конкретно, что продолжается.
Попытайтесь держать клавишу SHIFT, в то время как Вы нажимаете перезагрузку (или нажимаете F5).
Иначе используйте инструмент, такой как Firebug, чтобы проверить Запрос HTTP / заголовки ответа и наблюдать значения заголовка то кэширование управления. Я никогда не замечал эту проблему. Возможно, Ваш сервер возвращает 304 ответа (не измененный).
Это не решит проблему Firefox, не проверяющего, истекло ли изображение, но что можно сделать, чтобы гарантировать, чтобы клиенты видели, что правильный образ:
Установите изображение в CSS к PHP или подобном сценарии, который возвращает изображение:
div#news {
background: #FFFFFF url(images/background.php?name=newsitem) no-repeat;
...
}
Затем используйте сценарий для возврата изображения"
<?php
$name = isset($_REQUEST['name']) ? $_REQUEST['name'] : false;
switch($name) {
case 'newsitem':
$filename = 'news_item_background.jpg';
break;
default:
$filename = 'common_background.jpg';
break;
}
header("Content-Type: image/jpeg");
header("Content-Transfer-Encoding: binary");
$fp = fopen($filename , "r");
if ($fp) fpassthru($fp);
Я использую его на своем домашнем сервере для случайного возврата фонового изображения для некоторых моих страниц, и Firefox, кажется, не кэширует их. Можно также сделать некоторый броский stuph с изображениями, если Вам нравится.
Еще один быстрый способ обхода (если это в основном происходит во время веб-проектирования) - просмотреть фактическую страницу css в firefox и перезагрузить страницу, а затем, когда вы вернетесь на веб-сайт браузер прочитает текущую страницу css.
конечно, это временное исправление только для веб-дизайнера