У меня есть сайт, использующий настраиваемый favicon.ico. Значок отображается должным образом во всех браузерах, кроме IE. При попытке отобразить значок в IE я получаю большой красный крестик; при отображении значка в другом браузере он отображается нормально. Источник страницы включает и он работает в других браузерах. Спасибо за твои мысли.
Обновлено: РЕШЕНО: источником проблемы был файл jpg, переименованный в ico. Я создал файл как ico, и он работает должным образом. Спасибо за ваш вклад.
Вы имеете в виду, что когда вы переходите по URL-адресу напрямую, он тоже показывает битое изображение?





Правильно, вы не были настолько полезны (предоставление исходного кода было бы действительно полезным!), Но вот ... Некоторые вещи, которые нужно проверить:
Код такой:
<link rel = "icon" href = "http://www.example.com/favicon.ico" type = "image/x-icon" />
<link rel = "shortcut icon" href = "http://www.example.com/favicon.ico" type = "image/x-icon" />
Это в <head>?
Является ли изображение файлом ico настоящий? (переименование растрового изображения - это не настоящий .ico! Слегка другой формат)
Работает ли при добавлении страницы в закладки?
Если вы еще не создали .ico правильно, попробуйте использовать этот сайт для создания настоящий .ico: favicon.co.uk
Не уверен, откуда я скопировал и вставил это из - но хороший для IE "Поскольку IE загружает ваш значок из папки временных файлов Интернета, он должен иметь возможность хранить его там. Если вы устанавливаете директиву no-cache для файл значка, то IE не сможет отобразить ваш значок и вместо него отобразит значок по умолчанию. Вы можете использовать Fiddler для проверки ».
Установка абсолютного пути в стихе относительного пути в href кажется неправильной. Что делать, если изображение не является общедоступным вне приложения (до публикации)? Или установка абсолютного пути - решение, позволяющее заставить его работать в IE? Я бы не считал это лучшим решением.
Хотите поделиться URL-адресом? Многие браузеры справляются с иконками в (например) формате png, в то время как у IE часто возникали проблемы. - Также более старые версии IE не проверяли источник html на предмет расположения значка, а просто целенаправленно пытались получить "/favicon.ico" с веб-сервера.
Вы пытались поместить значок в URI «/favicon.ico»? IE может не знать о способе ссылки на него тегом ссылки.
Подробнее из W3.
Однажды я использовал PNG как favicon.ico, и он отображался во всех браузерах, кроме IE. Возможно, что-то в файле заставляет IE не распознавать его. Также убедитесь, что это 32x32. Но не знаю, имеет ли это значение. Но я должен был убедиться в этом, чтобы увидеть это в IE.
Надеюсь, это поможет. Попробуйте использовать файл ico из другого места, чтобы посмотреть, работает ли он.
Если вы пробовали все, что описано выше, но по-прежнему не работает в IE, проверьте настройки IIS, если вы используете Windows Server. Убедитесь, что для параметра «Заголовки HTTP»> «Разрешить истечение срока действия контента» НЕ установлено значение «Срок действия истекает немедленно».
Я знаю, что сейчас это действительно старая тема, но, поскольку это первая тема, которая возникла в моем поиске в Google, я просто хотел добавить к ней свое решение:
У меня тоже была эта проблема со значком, который был предоставлен клиентом. Он отображается во всех браузерах, кроме IE. Добавление тегов link или meta не помогло, поэтому я начал смотреть на формат файла значка.
Оказалось, что это действующий файл значка (а не просто переименованное изображение), но в итоге его исправили в преобразовать его в изображение, сохранить как GIF, а затем преобразовать обратно в значок.
.
Также не забудьте очистить кеш IE во время тестирования.
<link rel = "shortcut icon" type = "image/x-icon" href = "FolderName/favicon.ico" />
В IE и FireFox favicon.ico запрашивается только на первой странице, посещенной на сайте, что означает, что если favicon.ico требует входа в систему (например, ваш сайт является закрытым сайтом и требует входа в систему), то значок не будет отображаться.
Решение состоит в том, чтобы добавить исключение для favicon.ico, например, в ASP.Net, которое вы добавляете в web.config:
<location path = "favicon.ico">
<system.web>
<authorization>
<allow users = "*" />
</authorization>
</system.web>
</location>
@yo, +1 за очень важное знание поведения браузеров в первом абзаце ответа.
похоже, это проблема страниц ASPX, мне никогда не удавалось показать значок на любой странице для IE (все остальные, да, Chrome, FF и safari), единственные сайты, которые я видел, которые являются исключением из этого правила, - это bing .com, msdn.com и другие, принадлежащие MS и работающие на asp.net, есть кое-что, о чем они нам не говорят! даже всемирно известные сайты не могут отображаться в IE, например: manu.com (самая просматриваемая спортивная команда в мире) aspx-сайт и не может отображать значок в IE. http://www.manutd.com/favicon.ico показывает значок.
Пожалуйста, докажите, что я ошибаюсь.
РЕШЕНИЕ :
Я создал значок из существующего файла png, просто изменив расширение изображения с png на ico. Я использую тему drupal 7 bartik, поэтому я загрузил ярлык на сервер, и он РАБОТАЕТ для Chrome и Firefox, но не для IE. Кроме того, значок изображения был белым пустым на рабочем столе.
Затем я последовал совету некоторых ребят и уменьшил размер изображения до 32x32 пикселей с помощью редактора изображений (gimp 2 <<
Я загрузил значок так же, как и раньше, и он отлично работал во всех браузерах.
Я люблю вас, ребята, в stackoverflow, вы помогли мне решить МНОГО проблем. БЛАГОДАРЮ ВАС!
Спасибо за вашу помощь. Я пробовал разные варианты, но у меня сработал приведенный ниже.
<link rel = "shortcut icon" href = "/favicon.ico" >
<link rel = "icon" type = "/image/ico" href = "/favicon.ico" >
Я добавил две вышеуказанные строки в заголовок своей страницы, и они работали во всех браузерах.
Спасибо
Может быть, это поможет другим.
Для меня ICON не отображался в IE даже после выполнения всех шагов.
Наконец я нашел заметку в MSDN Устранение неполадок со значками ярлыков.
Verify that Internet Explorer can store the shortcut icon in the Temporary Internet Files folder. If you have set Internet Explorer to not keep a cache, then it will not be able to store the icon and will display the default Internet Explorer shortcut icon instead.
Я использовал IE в режиме «In Private», как только я проверил его в нормальном режиме .... Значок Fav отображается правильно.
Если кто-нибудь дойдет до этого ответа:
Та же проблема: не работала в IE (включая IE 10), работала везде.
Оказывается, это не настоящий ICO-файл. Я исправил это, загрузив его в http://www.favicon.cc/, а затем загрузив снова.
Сначала я протестировал его, сгенерировав случайный файл .ico на этом сайте и используя его вместо исходного файла. Увидел, что это сработало.
Я нашел здесь комбинацию ссылки на создателя значка и использовал msdn.microsoft.com/en-us/library/… в качестве руководства ПЛЮС, НЕ называя его «favicon», поскольку это, казалось, конфликтовало с другими кешированными значками. "myicon.ico" в конце концов заработал после того, как он сводил меня с ума на долгие годы
Спасибо! IE снова за это! >. <"Сломанный" файл .ico работал как в Chrome, так и в Firefox, но не в IE. Использовал инструмент, который вы указали по ссылке, и он сработал!
У меня была именно эта проблема, и, похоже, ничего не работало. Очистив кеш браузера бесчисленное количество раз и даже обновив IE до версии 9, я обнаружил следующее: http://favicon.htmlkit.com/favicon/
Вышеупомянутая ссылка отлично решила проблему для меня!
Что касается несовместимости с IE9, я наткнулся на сообщение в блоге это, в котором даются советы по созданию значка, который распознается IE9.
По сути, попробуйте создать значок со следующим сайтом: http://www.xiconeditor.com/
Проверьте заголовки ответа для своего значка. Они не должны включать "Cache-Control: no-cache".
Вы можете проверить это из командной строки, используя:
curl -I http://example.com/favicon.ico
или же
wget --server-response --spider http://example.com/favicon.ico
(или используйте другой инструмент, который покажет вам заголовки ответов)
Если вы видите там «Cache-Control: no-cache», настройте конфигурацию сервера, чтобы либо удалить этот заголовок из ответа значка, либо установить максимальный возраст.
Запустите Internet Explorer от имени администратора. Если вы откроете IE в обычном режиме, значок не будет отображаться в IE 11 (Win 7). Я не уверен в поведении в других версиях браузеров.
Ни одно из вышеперечисленных решений не помогло мне.
Прежде всего, я убедился, что значок имеет правильный формат, используя веб-сайт для создания значков, предложенных выше.
Затем я переименовал значок с «favicon.ico» в «myicon.ico» и добавил на свою страницу следующий код (в тегах <head>):
<link rel = "shortcut icon" href = "myicon.ico" type = "image/x-icon" />
Значок находится в той же папке, что и страница.
Это решило проблему для меня. Проблема за кулисами, вероятно, как-то связана с кешированием IE, но я не уверен.
Также - ошибки сертификата (https) могут помешать появлению значка. Команда безопасности изменила настройки нашего сервера, и я начал получать "Проблема с сертификатом безопасности этого веб-сайта". Щелчок по «Перейти на этот веб-сайт (не рекомендуется)». привел меня на сайт, но НЕ показывал значок.
Я наблюдаю разное поведение между Windows 10 и Windows Server 2016, а также между IE и Edge. Я тестировал с помощью www.microsoft.com.
Windows Server 2016 IE 11:
Избранное: значок сайта
Адресная строка: значок сайта
Вкладка браузера: значок сайта
Windows 10 IE 11:
Избранное: значок сайта
Адресная строка: стандартный синий значок E
Вкладка браузера: общий синий значок E
Windows 10 Edge:
Избранное: значок сайта
Адресная строка: нет значка
Вкладка браузера: значок сайта
Что случилось с Windows 10 IE, показывающим общий значок?
Этот кроссбраузер для меня (IE11, EDGE, CHROME, FIREFOX, OPERA), используйте https://www.icoconverter.com/ для создания файла .ico
<link data-senna-track = "temporary" href = "${favicon_url}" rel = "Shortcut Icon" />
<link rel = "icon" href = "${favicon_url}" type = "image/x-icon" />
<link rel = "shortcut icon" href = "${favicon_url}" type = "image/x-icon" />
Это не отвечает на вопрос. Вам приходится полагаться на внешнюю переменную favicon_url, которая генерируется где? На каком языке это написано? Некоторый контекст, стоящий за фрагментом кода, был бы полезен!
Попробуйте что-нибудь вроде:
Добавить в html:
<link id = "shortcutIcon" rel = "shortcut icon" type = "image/x-icon">
<link id = "icon" rel = "icon" type = "image/x-icon">
Добавьте минифицированный скрипт после тега:
<script type = "text/javascript">
(function(b,c,d,a){a=c+d+b,document.getElementById('shortcutIcon').href=a,document.getElementById('icon').href=a;}(Math.random()*100,(document.querySelector('base')||{}).href,'/assets/images/favicon.ico?v='));
</script>
куда
Перед тестированием очистить историю: (ctr + shfit + del)
Не могли бы вы показать нам HTML-код, который вы используете для указания значка?