Poza faktem, że PNG jest bardziej popularnym formatem obrazu, czy istnieje jakiś techniczny powód, aby favicon.png vs. favicon.ico?
Wspieram nowoczesne przeglądarki, które obsługują ulubione ikony PNG.
Poza faktem, że PNG jest bardziej popularnym formatem obrazu, czy istnieje jakiś techniczny powód, aby favicon.png vs. favicon.ico?
Wspieram nowoczesne przeglądarki, które obsługują ulubione ikony PNG.
Odpowiedzi:
Odpowiedź została zastąpiona (i zmieniła się w Wiki Wiki) z powodu licznych aktualizacji i notatek od innych osób w tym wątku:
Aby uzyskać więcej informacji, zapoznaj się z innymi odpowiedziami tutaj.
Wszystkie nowoczesne przeglądarki (testowane z Chrome 4, Firefox 3.5, IE8, Opera 10 i Safari 4) zawsze będą żądać, favicon.ico
chyba że podasz ikonę skrótu za pośrednictwem <link>
. Więc jeśli nie określisz go jednoznacznie, najlepiej zawsze mieć favicon.ico
plik, aby uniknąć 404. Yahoo! sugeruje, aby był mały i buforowalny.
I nie musisz wybierać PNG tylko dla przezroczystości alfa. Pliki ICO wspaniale obsługują przezroczystość alfa (tj. Kolor 32-bitowy), chociaż prawie żadne narzędzia nie pozwalają na ich tworzenie. Regularnie używam generatora FavIcon firmy Dynamic Drive do tworzenia favicon.ico
plików z przezroczystością alfa. Jest to jedyne znane mi narzędzie online, które może to zrobić.
Istnieje również bezpłatna wtyczka Photoshop, która może je tworzyć.
.ico
Edycja w PS jest niezwykle trudna . I nawet jeśli to zrobisz, wynik końcowy jest tak zły, pomyślałbyś, że .bmp
był to lepszy format (dodaje wiele metadanych, co sprawia, że ponowna edycja jest ogromnym problemem).
Pliki .png są ładne, ale pliki .ico zapewniają również przezroczystość kanału alfa, a ponadto zapewniają zgodność wsteczną.
Zobacz, jakiego typu używa StackOverflow (zauważ, że jest przezroczysty):
<link rel="shortcut icon" href="http://sstatic.net/so/favicon.ico">
<link rel="apple-touch-icon" href="http://sstatic.net/so/apple-touch-icon.png">
Apple-itouch jest przeznaczony dla użytkowników iPhone'ów, którzy tworzą skrót do strony internetowej.
Teoretyczną zaletą plików * .ico jest to, że są to pojemniki, które mogą pomieścić więcej niż jedną ikonę. Możesz na przykład przechowywać obraz z kanałem alfa i wersją 16 kolorów dla starszych systemów, lub możesz dodać ikony 32x32 i 48x48 (które pojawiałyby się np. Podczas przeciągania linku do Eksploratora Windows).
Ten dobry pomysł jednak koliduje z implementacjami przeglądarki.
PNG ma 2 zalety: ma mniejszy rozmiar i jest szerzej stosowany i obsługiwany (z wyjątkiem przypadków ulubionych). Jak wspomniano wcześniej ICO, może mieć wiele rozmiarów ikon, co jest przydatne w aplikacjach komputerowych, ale nie za bardzo w witrynach internetowych. Polecam umieścić favicon.ico w katalogu głównym aplikacji. Jeśli masz dostęp do nagłówka stron swojej witryny, użyj tagu, aby wskazać plik png. Starsza przeglądarka wyświetli plik favicon.ico, a nowsze - png.
Do tworzenia plików PNG i ikon polecam The Gimp .
Niektóre narzędzia społecznościowe, takie jak Google+, wykorzystują prostą metodę uzyskania favikonu dla zewnętrznych linków, pobierając http://your.domainname.com/favicon.ico
Ponieważ nie pobierają wstępnie treści HTML, <link>
tag nie będzie działać. W takim przypadku możesz użyć reguły mod_rewrite lub po prostu umieścić plik w domyślnej lokalizacji.
ICO może być png.
Dokładniej, możesz przechowywać jeden lub więcej png w tym minimalnym formacie kontenera, zamiast zwykłej mapy bitowej + alfa, którą wszyscy silnie kojarzą z ico.
Obsługa jest stara, pojawia się w systemie Windows Vista (2007) i jest dobrze obsługiwana przez przeglądarki, choć niekoniecznie przez oprogramowanie do edycji ikon.
Każdy prawidłowy png (łącznie z nagłówkiem) może być poprzedzony 6-bajtowym nagłówkiem ico i 16-bajtowym katalogiem obrazów.
GIMP ma natywne wsparcie. Wystarczy wyeksportować jako ico i zaznaczyć „Compressed (PNG)”.
Unikaj PNG, jeśli chcesz niezawodną kompatybilność z IE6.
<link>
kodu strony dla nowoczesnych przeglądarek.
Dla tego, co warto, robię to:
<!-- Favicon - Generic -->
<link rel="icon" href="path/favicon-32_x_32.png" sizes="32x32">
<link rel="icon" href="path/favicon-57_x_57.png" sizes="57x57">
<link rel="icon" href="path/favicon-76_x_76.png" sizes="76x76">
<link rel="icon" href="path/favicon-96_x_96.png" sizes="96x96">
<link rel="icon" href="path/favicon-128_x_128.png" sizes="128x128">
<link rel="icon" href="path/favicon-192_x_192.png" sizes="192x192">
<link rel="icon" href="path/favicon-228_x_228.png" sizes="228x228">
<!-- Favicon - Android -->
<link rel="shortcut icon" href="path/favicon-196_x_196.png" sizes="196x196">
<!-- Favicon - iOS -->
<link rel="apple-touch-icon" href="path/favicon-120_x_120.png" sizes="120x120">
<link rel="apple-touch-icon" href="path/favicon-152_x_152.png" sizes="152x152">
<link rel="apple-touch-icon" href="path/favicon-180_x_180.png" sizes="180x180">
I nadal trzymam favicon.ico w katalogu głównym.