web-dev-qa-db-fra.com

Type MIME correct pour favicon.ico?

Selon la Autorité des numéros attribués à Internet ​​(IANA), tous les fichiers .ico relèvent du type MIME image/vnd.Microsoft.icon. ( Source )

Par exemple. <link rel="icon" type="image/vnd.Microsoft.icon" href="favicon.ico" />

Cependant, un gourou de l'Internet averti, Paul Irish, affirme que c'est faux et qu'il s'agirait en réalité de image/x-icon. ( Source )

Par exemple. <link rel="icon" type="image/x-icon" href="favicon.ico" />

Je sais que vous pouvez vous en tirer sans inclure un "type" pour les fichiers .ico, mais si vous deviez en inclure un, lequel devrait-il être? Y at-il réellement des problèmes à le servir en tant que type IANA officiel?

129
Chuck Le Butt

Lorsque vous envoyez un fichier .ico à utiliser comme favicon, cela n'a pas d'importance. Tous les principaux navigateurs reconnaissent correctement les deux types de mime. Pour que vous puissiez mettre:

<!-- IE -->
<link rel="shortcut icon" type="image/x-icon" href="favicon.ico" />
<!-- other browsers -->
<link rel="icon" type="image/x-icon" href="favicon.ico" />

ou la même chose avec image/vnd.Microsoft.icon, et cela fonctionnera avec tous les navigateurs.

Remarque: Il n'y a pas de spécification IANA pour le type MIME image/x-icon, il semble donc qu'il soit un peu plus officieux que image/vnd.Microsoft.icon.

Le seul cas dans lequel il y a une différence est si vous essayez d'utiliser un fichier .ico dans une balise <img> (ce qui est assez inhabituel). Selon les tests précédents, certains navigateurs n’affichaient les fichiers .ico sous forme d’images que s’ils étaient servis avec le type MIME image/x-icon. Des tests plus récents montrent que Chrome, Firefox et Edge conviennent aux deux types de contenu, mais pas à IE11. Si vous le pouvez, évitez simplement d'utiliser les fichiers ico comme images, utilisez png.

156
mata

Je pense que la racine de cette confusion est bien expliquée dans l'article this wikipedia.

Bien que le type MIME enregistré par IANA pour les fichiers ICO soit image/vnd.Microsoft.icon, il a été soumis à IANA en 2003 par un tiers et n'est pas reconnu par le logiciel Microsoft, qui utilise plutôt image/x-icon.

Si même l'inventeur du format ICO n'utilise pas le type MIME officiel, j'utiliserai aussi image/x-icon.

25
Jürgen Steinblock

J'ai remarqué qu'en utilisant type="image/vnd.Microsoft.icon", le favicon ne s'affiche pas lorsque le navigateur n'est pas connecté à Internet. Mais type="image/x-icon" fonctionne que le navigateur puisse ou non se connecter à Internet. Lors du développement, je ne suis parfois pas connecté à Internet.

2
kmcc