Согласно Управлению по присвоению номеров в Интернете (IANA), все ICO-файлы относятся к типу MIME image/vnd.microsoft.icon
. ( Источник )
Например
<link rel="icon" type="image/vnd.microsoft.icon" href="favicon.ico" />
Однако сообразительный интернет-гуру Пол Айриш утверждает, что это неправильно, и что это действительно так image/x-icon
. ( Источник )
Например
<link rel="icon" type="image/x-icon" href="favicon.ico" />
Я знаю, что вам может сойти с рук не включать "тип" для файлов .ico, но если вы собираетесь включить его, что это должно быть? Есть ли на самом деле какие-либо проблемы с обслуживанием его в качестве официального типа IANA?
html
browser
mime-types
favicon
Чак Ле Батт
источник
источник
favicon.ico
файлы могут быть не настоящими ".ico" файлами. Мой корпоративный сайт использует png (с именем «favicon.ico») и обслуживает его с типом «image / png». Обслуживание его с любым из упомянутых здесь типов ".ico" было ОБОИМ неправильным, так как это привело к неверной интерпретации браузером!Ответы:
Когда вы используете ICO-файл в качестве значка, это не имеет значения. Все основные браузеры правильно распознают оба типа MIME. Итак, вы можете поставить:
<!-- IE --> <link rel="shortcut icon" type="image/x-icon" href="favicon.ico" /> <!-- other browsers --> <link rel="icon" type="image/x-icon" href="favicon.ico" />
или то же самое с
image/vnd.microsoft.icon
, и он будет работать со всеми браузерами.Примечание. Спецификации IANA для MIME-типа отсутствуют
image/x-icon
, поэтому кажется, что он немного более неофициальный, чемimage/vnd.microsoft.icon
.Единственный случай, когда есть разница, - это если вы пытались использовать ICO-файл в
<img>
теге (что довольно необычно). Основываясь на предыдущем тестировании, некоторые браузеры отображали файлы .ico как изображения только в том случае, если они обслуживались с MIME-типомimage/x-icon
. Более свежие тесты показывают: Chromium, Firefox и Edge подходят для обоих типов контента, IE11 - нет. Если можете, просто избегайте использованияico
файлов в качестве изображений, используйтеpng
.источник
<img src=''>
если они обслуживаются веб-сервером как image / x-image . Затем вы говорите, что если собираетесь использовать файлы .ico в качестве изображений на HTML-страницах, вам следует установить тип MIME на image / x-icon .Я думаю, что корень этой путаницы хорошо объяснен в этой статье в Википедии.
Если даже изобретатель формата ICO не использует официальный тип MIME, я тоже буду использовать
image/x-icon
.источник
Я заметил, что при использовании
type="image/vnd.microsoft.icon"
значок не отображается, если браузер не подключен к Интернету. Ноtype="image/x-icon"
работает независимо от того, может ли браузер подключиться к Интернету или нет. При разработке иногда я не подключаюсь к Интернету.источник