Według organizacji Internet Assigned Numbers Authority (IANA) wszystkie pliki .ico należą do typu MIME image/vnd.microsoft.icon
. ( Źródło )
Na przykład
<link rel="icon" type="image/vnd.microsoft.icon" href="favicon.ico" />
Jednak sprytny guru internetu, Paul Irish , twierdzi, że to jest złe i że faktycznie tak będzie image/x-icon
. ( Źródło )
Na przykład
<link rel="icon" type="image/x-icon" href="favicon.ico" />
Wiem, że możesz uciec od niepodawania „typu” dla plików .ico, ale jeśli zamierzasz dołączyć taki, który powinien być? Czy są jakieś problemy z podawaniem jej jako oficjalnego typu IANA?
html
browser
mime-types
favicon
Chuck Le Butt
źródło
źródło
favicon.ico
pliki mogą nie być plikami „.ico”. Moja witryna firmowa używa pliku png (o nazwie „favicon.ico”) i obsługuje go z typem „image / png”. Podawanie go z jednym z wymienionych tutaj typów „.ico” było OBA nieprawidłowe, ponieważ powodowało błędną interpretację przeglądarki!Odpowiedzi:
Kiedy udostępniasz plik .ico, który ma być używany jako favicon, nie ma to znaczenia. Wszystkie główne przeglądarki poprawnie rozpoznają oba typy MIME. Możesz więc umieścić:
lub to samo
image/vnd.microsoft.icon
i będzie działać we wszystkich przeglądarkach.Uwaga: nie ma specyfikacji IANA dla typu MIME
image/x-icon
, więc wygląda na to, że jest trochę bardziej nieoficjalna niżimage/vnd.microsoft.icon
.Jedynym przypadkiem, w którym występuje różnica, jest próba użycia pliku .ico w
<img>
tagu (co jest dość nietypowe). Opierając się na poprzednich testach, niektóre przeglądarki wyświetlały pliki .ico jako obrazy tylko wtedy, gdy były wyświetlane z typem MIMEimage/x-icon
. Nowsze testy pokazują: Chromium, Firefox i Edge są w porządku z obydwoma typami treści, IE11 nie. Jeśli możesz, po prostu unikaj używaniaico
plików jako obrazów, użyjpng
.źródło
<img src=''>
pod warunkiem, że są one obsługiwane jako obraz / x-image przez serwer sieciowy. Następnie mówisz, że jeśli zamierzasz używać plików .ico jako obrazów na stronach HTML, powinieneś ustawić typ MIME na image / x-icon .Myślę, że źródło tego zamieszania jest dobrze wyjaśnione w tym artykule na Wikipedii.
Jeśli nawet wynalazca formatu ICO nie używa oficjalnego typu MIME, ja
image/x-icon
też użyję.źródło
Zauważyłem, że podczas używania
type="image/vnd.microsoft.icon"
favicon nie pojawia się, gdy przeglądarka nie jest połączona z Internetem. Aletype="image/x-icon"
działa niezależnie od tego, czy przeglądarka może połączyć się z Internetem, czy nie. Podczas programowania czasami nie mam połączenia z Internetem.źródło