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?
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
.
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
.
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.