Czytałem stronę Favicon na Wikipedii. Wspominają o specyfikacji HTML 5 dla Favicon:
Obecna specyfikacja HTML5 zaleca określanie ikon rozmiarów w wielu rozmiarach za pomocą atrybutów rel = "icon "izes =" lista rozdzielonych spacjami wymiarów ikon "w tagu. [ źródło ] Wiele formatów ikon, w tym formaty kontenerów, takie jak pliki Microsoft .ico i Macintosh .icns, a także Scalable Vector Graphics, można zapewnić, włączając typ zawartości ikony w postaci type = "file content-type" w etykietka.
Patrząc na cytowany artykuł (W3), pokazują następujący przykład:
<link rel=icon href=favicon.png sizes="16x16" type="image/png">
<link rel=icon href=windows.ico sizes="32x32 48x48" type="image/vnd.microsoft.icon">
<link rel=icon href=mac.icns sizes="128x128 512x512 8192x8192 32768x32768">
<link rel=icon href=iphone.png sizes="57x57" type="image/png">
<link rel=icon href=gnome.svg sizes="any" type="image/svg+xml">
Moje pytanie brzmi: czy jakieś przeglądarki obsługują metodę HTML 5?
Uwaga: wiem, że Apple używa apple-touch-icon
metody metatagu zamiast metody HTML5.
Artykuł na Wikipedii twierdzi:
Jednak przeglądarka internetowa Google Chrome wybierze najbliższy pasujący rozmiar z podanych w nagłówkach HTML, aby utworzyć ikony aplikacji o wymiarach 128 × 128 pikseli, gdy użytkownik wybierze opcję Utwórz skróty do aplikacji… z menu „Narzędzia”.
Jak radzą sobie z tym Internet Explorer (od wersji 9 do 11) i Firefox? I czy artykuł jest poprawny w tym, jak Chrome obsługuje ikony HTML Favicons? (Nie ma cytowanego źródła dla Chrome, które to potwierdza).
Podczas wyszukiwania nie byłem w stanie znaleźć żadnych (wiarygodnych) informacji na temat HTML 5 Favicon poza artykułem z Wikipedii.
Odpowiedzi:
Odpowiedzi udzielone (w czasie tego postu) są tylko odpowiedziami na linki, więc pomyślałem, że podsumuję linki w odpowiedzi i to, czego będę używać.
Podczas tworzenia ulubionych ikon w różnych przeglądarkach (w tym ikon dotykowych) należy wziąć pod uwagę kilka kwestii.
Pierwszym (oczywiście) jest Internet Explorer. IE nie obsługuje ikon ulubionych w formacie PNG aż do wersji 11. Tak więc nasza pierwsza linia to warunkowy komentarz do ikon ulubionych w IE 9 i poniżej:
Aby pokryć zastosowania ikony, utwórz ją w rozmiarze 32x32 piksele. Zwróć uwagę, że
rel="shortcut icon"
IE rozpoznaje ikonę, potrzebuje słowa,shortcut
które nie jest standardowe. Również zawijamy.ico
favicon w komentarz warunkowy IE, ponieważ Chrome i Safari będą używać rozszerzenia.ico
pliku, jeśli jest obecny, pomimo innych dostępnych opcji, a nie to, co byśmy chcieli.Powyższe obejmuje IE do IE 9. IE 11 akceptuje ikony ulubionych w formacie PNG, jednak IE 10 nie. Również IE 10 nie czyta komentarzy warunkowych, więc IE 10 nie pokaże ikony ulubionych. Przy dostępnym IE 11 i Edge nie widzę IE 10 w powszechnym użyciu, więc ignoruję tę przeglądarkę.
W przypadku pozostałych przeglądarek będziemy używać standardowego sposobu cytowania favicon:
Ta ikona powinna mieć rozmiar 196x196 pikseli, aby zakryć wszystkie urządzenia, które mogą jej używać.
Aby objąć ikony dotykowe na urządzeniach mobilnych, wykorzystamy zastrzeżony sposób Apple do zacytowania ikony dotykowej:
Użycie
rel="apple-touch-icon-precomposed"
nie spowoduje zastosowania odblaskowego połysku po dodaniu do zakładek w systemie iOS. Aby mieć iOS, zastosuj połyskrel="apple-touch-icon"
. Ta ikona powinna mieć rozmiar 180 x 180 pikseli, ponieważ jest to aktualny rozmiar zalecany przez firmę Apple dla najnowszych iPhone'ów i iPadów. Przeczytałem, że Blackberry też będzie używaćrel="apple-touch-icon-precomposed"
.Uwaga: Chrome na Androida stwierdza:
Niestandardowe kafelki dla IE 11+ w systemie Windows 8.1+
Przeglądarka IE 11+ w systemie Windows 8.1+ oferuje sposób tworzenia przypiętych kafelków dla Twojej witryny.
Firma Microsoft zaleca utworzenie kilku kafelków w następującym rozmiarze:
Powinny to być przezroczyste obrazy, ponieważ następnie zdefiniujemy kolor tła.
Po utworzeniu tych obrazów należy utworzyć plik xml o nazwie
browserconfig.xml
z następującym kodem:Zapisz ten plik xml w katalogu głównym swojej witryny. Kiedy witryna jest przypięta, IE będzie szukać tego pliku. Jeśli chcesz nazwać plik xml inaczej lub umieścić go w innej lokalizacji, dodaj ten metatag do
head
:Aby uzyskać dodatkowe informacje na temat niestandardowych kafelków przeglądarki IE 11+ i korzystania z pliku XML, odwiedź witrynę internetową firmy Microsoft .
Kładąc wszystko razem:
Podsumowując, powyższy kod wyglądałby tak:
Windows Phone Live Tiles
Jeśli użytkownik korzysta z telefonu Windows Phone, może przypiąć witrynę internetową do ekranu startowego swojego telefonu. Niestety, kiedy to robią, wyświetla zrzut ekranu twojego telefonu, a nie favicon (nawet nie ma określonego kodu MS, o którym mowa powyżej). Aby utworzyć „Live Tile” dla użytkowników Windows Phone dla swojej witryny internetowej, należy użyć następującego kodu:
Oto szczegółowe instrukcje od firmy Microsoft, ale oto streszczenie:
Krok 1
Utwórz kwadratowy obraz dla swojej witryny, aby obsługiwać ekrany o wysokiej rozdzielczości, utwórz go w rozmiarze 768x768 pikseli.
Krok 2
Dodaj ukrytą nakładkę tego obrazu. Oto przykładowy kod firmy Microsoft:
Krok 3
Następnie możesz dodać następujący wiersz, aby dodać kod PIN do łącza początkowego:
Firma Microsoft zaleca wykrycie telefonu z systemem Windows i wyświetlenie tego łącza tylko tym użytkownikom, ponieważ nie będzie działać dla innych użytkowników.
Krok 4
Następnie dodaj trochę JS, aby przełączyć widoczność nakładki
Uwaga na temat rozmiarów
Używam jednego rozmiaru, ponieważ każda przeglądarka będzie w razie potrzeby zmniejszać obraz. Mógłbym dodać więcej HTML, aby określić wiele rozmiarów, jeśli jest to pożądane dla tych o niższej przepustowości, ale już intensywnie kompresuję pliki PNG przy użyciu TinyPNG i uważam to za niepotrzebne do moich celów. Ponadto, zgodnie z philippe_b „s odpowiedź Chrome i Firefox mają błędy, które powodują przeglądarkę, aby załadować wszystkie rozmiary ikon. Z tego powodu użycie jednej dużej ikony może być lepsze niż wielu mniejszych.
Dalsze czytanie
Dla tych, którzy chcieliby uzyskać więcej informacji, zobacz poniższe linki:
źródło
Nie, nie wszystkie przeglądarki obsługują
sizes
atrybut:Zwróć uwagę, że niektóre platformy definiują określone rozmiary:
manifest.json
jeśli jest obecna. Ponadto Chrome używa ikony Apple Touch do zakładek .źródło
...yet it favors the Apple Touch icon if it finds it.
Nie jestem pewien, czy to już całkowicie prawda, przynajmniej nie w przyszłości. Ze strony internetowej Chrome:The apple-touch-* are deprecated, and will be supported only for a short time. (Written as of beta for m31 of Chrome).