Один из самых противных глюков Интернет Експлорера 6 заключается в том что если для элемента указан background-image в CSS, то при событии hover на этом элементе ИЕ6 будет каждый раз снова и снова подгружать картинку с сервера, а не использовать ту которую он сохраняет в кеше.
То есть, если в вашем дизайне есть меню, которому заданы фоновые изображения, то все они будут мерцать при наведении мыши на каждый элемент меню. Не эстетично и раздражает глаз. Я задался задачей найти элегантное решние проблемы и вот что я нашел на просторах сети: Эта браузерная ошибка решается минутной правкой настоек Apache сервера:
В файл httpd.conf добавляются следующие строки:
ExpiresActive On
ExpiresDefault A18000
ExpiresByType image/gif A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType image/png A2592000
Которые заставляют браузер кешировать файлы картинок сроком на 30 дней (2592000 секунд, при желании можно поменять), как это указано в спецификациях W3C а не так как этого хотят Мелкомягкие.
* Те у кого нет доступа к httpd.conf могут прописать эти строчки в .htaccess файле, в самом низу.
Затем нужно убедиться что в Апаче включен модуль mod_expires:
LoadModule expires_module modules/mod_expires.so
Вуаля! Все отлично заработало. Но есть один момент. Это решение не будет работать если ваши картинки грузятся с постороннего сервера.
Такое же решение для сервера IIS здесь (eng).
Источник там (eng).
Войти
RSS-подписка
Читать в ЖЖ
Яndex-Лента
В Google Reader
