จำเป็นต้องเพิ่มลิงค์แท็กสำหรับ favicon.ico หรือไม่


153

มีเบราว์เซอร์สมัยใหม่ที่ไม่ตรวจพบ favicon.ico โดยอัตโนมัติหรือไม่? มีเหตุผลใดที่จะเพิ่มแท็กลิงค์สำหรับ favicon.ico?

<link rel="shortcut icon" href="/favicon.ico">

ฉันเดาว่ามันเป็นสิ่งจำเป็นเท่านั้นที่จะรวมไว้ในเอกสาร HTML หากคุณตัดสินใจที่จะไปกับ GIF หรือ PNG ...


ฉันไม่เคยเห็นว่าเบราว์เซอร์ใด ๆ จำเป็นต้องใช้มัน คุณมีตัวอย่างหรือไม่?
shark555

ฉันสามารถตั้งชื่อเบราว์เซอร์บางตัวที่มีการตั้งค่ากำหนดว่าจะให้ค้นหาfavicon.icoโดยอัตโนมัติหรือไม่ ดังนั้นหากคุณต้องการให้แน่ใจว่าไอคอนของคุณปรากฏขึ้นให้รวมลิงก์ไว้ใน HTML ของคุณ โดยทั่วไปแล้วไฟล์. png มักจะเล็กกว่าไฟล์. ico เทียบเคียง
นาย Lister

กรุณาตั้งชื่อนาย Lister :) ไม่มี shark555 ฉันไม่สามารถตั้งชื่อใด ๆ ...
user1087110

5
Firefox (และเบราว์เซอร์อื่น ๆ ที่ใช้ Gecko เช่น SeaMonkey) มีการตั้งค่าหลายอย่างเพื่อปรับพฤติกรรมของมัน browser.chrome.faviconsตั้งค่าเป็นจริงจะค้นหา favicon.ico ในรูท ถ้าเท็จมันจะโหลดไอคอนเฉพาะเมื่อระบุไว้ในหน้า HTML ดูkb.mozillazine.org/Browser.chrome.faviconsและหน้าเว็บที่เกี่ยวข้อง
Mr Lister

คำตอบ:


253

หากต้องการเลือกตำแหน่งหรือประเภทไฟล์อื่น (เช่นPNGหรือSVG )สำหรับ favicon:
เหตุผลหนึ่งอาจเป็นเพราะคุณต้องการให้ไอคอนอยู่ในตำแหน่งเฉพาะบางทีในโฟลเดอร์รูปภาพหรือบางสิ่งบางอย่างเหมือนกัน ตัวอย่างเช่น:

<link rel="icon" href="_/img/favicon.png">

สถานที่ที่แตกต่างกันนี้ยังอาจจะเป็น CDN <link rel="shortcut icon" href="http://cdn.sstatic.net/stackoverflow/img/favicon.ico">เช่นเดียวดังนั้นดูเหมือนว่าจะทำอย่างไรกับ

หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับการใช้ไฟล์ประเภทอื่นเช่น PNG ลองดูคำถามนี้

สำหรับวัตถุประสงค์ในการป้องกันแคช :
เพิ่มสตริงแบบสอบถามลงในพา ธ เพื่อวัตถุประสงค์ในการป้องกันแคช:

<link rel="icon" href="/favicon.ico?v=1.1"> 

Favicons ถูกแคชไว้อย่างหนักและเป็นวิธีที่ดีในการรับรองความสดชื่น


เชิงอรรถเกี่ยวกับตำแหน่งเริ่มต้น:
เท่าที่คำถามแรก: เบราว์เซอร์ที่ทันสมัยทั้งหมดจะตรวจพบ favicon ที่ตำแหน่งเริ่มต้นดังนั้นจึงไม่มีเหตุผลที่จะใช้linkสำหรับ


เชิงอรรถเกี่ยวกับrel="icon":
ตามที่ระบุโดยคำตอบของ @ Semanino การใช้rel="shortcut icon"เป็นเทคนิคเก่าที่ Internet Explorer รุ่นเก่าต้องการ แต่ในกรณีส่วนใหญ่สามารถแทนที่ด้วยrel="icon"คำสั่งที่ถูกต้องมากขึ้น บทความ @Semanino อิงตามลิงก์ที่ถูกต้องไปยังข้อมูลจำเพาะที่เหมาะสมซึ่งแสดงrelค่าshortcutไม่ใช่ตัวเลือกที่ถูกต้อง


สิ่งนี้ควรอยู่ใน<head>แท็กหรือไม่
Max Williams

1
@ MaxWilliams ใช่ (ดู "องค์ประกอบหลักที่อนุญาต" ในเอกสาร MDNหรือ "บริบท" ในข้อมูลจำเพาะ W3 )
Jeroen

1
มันเป็น 2016 - และ Chrome ยังคง (หรืออีกครั้ง?) ไม่รู้จัก favicon.ico เริ่มต้นในรูตหากคุณระบุไอคอนอื่น ๆ เช่น ...
Sebastian G. Marinescu

52

โปรดทราบว่าทั้งข้อกำหนด HTML5 ของ W3C และ WhatWG เป็นมาตรฐาน

<link rel="icon" href="/favicon.ico">

บันทึกค่าของแอตทริบิวต์ "rel"!

ค่าshortcut iconสำหรับrelแอตทริบิวต์เป็นส่วนขยายเฉพาะ Internet Explorer เก่ามากและเลิกใช้

ดังนั้นโปรดพิจารณาไม่ใช้มันอีกต่อไปและอัปเดตไฟล์ของคุณเพื่อให้เป็นไปตามมาตรฐานและแสดงอย่างถูกต้องในเบราว์เซอร์ทั้งหมด

คุณอาจต้องการดูโพสต์ที่ยอดเยี่ยมนี้: rel = "ไอคอนทางลัด" ถือว่าเป็นอันตราย


1
ไม่ค่อย "เลิก" (มันไม่เคยเป็นส่วนหนึ่งของข้อมูลจำเพาะใด ๆ ) อย่างไรก็ตามสถานะข้อมูลจำเพาะ HTML5 "ด้วยเหตุผลทางประวัติศาสตร์คำสำคัญของไอคอนอาจนำหน้าด้วยคำหลัก" ทางลัด "หากคำหลัก" ทางลัด "ปรากฏขึ้นจะต้องมาทันทีก่อนที่คำหลักไอคอนและคำหลักสองคำต้องแยกจากกัน โดยตัวละคร U + 0020 SPACE เดียวเท่านั้น " นอกจากนี้โปรดทราบว่า "ไม่มีประเภทเริ่มต้นสำหรับทรัพยากรที่กำหนดโดยคำหลักไอคอน"
DocRoot

12
<link rel="icon" type="image/x-icon" href="http://example.com/favicon.ico" />
<link rel="icon" type="image/png" href="http://example.com/favicon.png" />
<link rel="icon" type="image/gif" href="http://example.com/favicon.gif" />
<link rel="icon" type="image/jpeg" href="http://example.com/favicon.jpeg" />
<link rel="icon" type="image/webp" href="http://example.com/favicon.webp" />

ทุกอย่างขึ้นอยู่กับรูปแบบของภาพที่คุณต้องการใช้!
ถ้าคุณมีไอคอนของเว็บไซต์ของคุณมันจะดีกว่ามากสำหรับ UX!

การสาธิต

แสดงโลโก้ในแท็บเบราว์เซอร์

ป้อนคำอธิบายรูปภาพที่นี่



UX ไม่เกี่ยวข้องกับสิ่งนี้
paddotk

@paddotk สิ่งที่ฉันหมายถึงคือผู้ใช้สามารถบอกได้อย่างง่ายดายว่าแท็บใดเป็นของเว็บไซต์เป้าหมายเมื่อเปิดหลายแท็บในเบราว์เซอร์หากมีไอคอน favicon แสดงอยู่ในแท็บ
xgqfrms

1

เราสามารถเพิ่มอุปกรณ์ทั้งหมดที่มีขนาดเฉพาะแพลตฟอร์ม

<link rel="apple-touch-icon" sizes="57x57" href="fav_icons/apple-icon-57x57.png">
<link rel="apple-touch-icon" sizes="60x60" href="fav_icons/apple-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="fav_icons/apple-icon-72x72.png">
<link rel="apple-touch-icon" sizes="76x76" href="fav_icons/apple-icon-76x76.png">
<link rel="apple-touch-icon" sizes="114x114" href="fav_icons/apple-icon-114x114.png">
<link rel="apple-touch-icon" sizes="120x120" href="fav_icons/apple-icon-120x120.png">
<link rel="apple-touch-icon" sizes="144x144" href="fav_icons/apple-icon-144x144.png">
<link rel="apple-touch-icon" sizes="152x152" href="fav_icons/apple-icon-152x152.png">
<link rel="apple-touch-icon" sizes="180x180" href="fav_icons/apple-icon-180x180.png">

<link rel="icon" type="image/png" sizes="192x192"  href="fav_icons/android-icon-192x192.pn">
<link rel="icon" type="image/png" sizes="32x32" href="fav_icons/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="96x96" href="fav_icons/favicon-96x96.png">
<link rel="icon" type="image/png" sizes="16x16" href="fav_icons/favicon-16x16.png">

0

บรรทัดล่างไม่ใช่ทุกเบราว์เซอร์จะค้นหาไฟล์favicon.icoของคุณ เบราว์เซอร์บางตัวอนุญาตให้ผู้ใช้เลือกว่าควรจะดูโดยอัตโนมัติหรือไม่ ดังนั้นในการสั่งซื้อเพื่อให้แน่ใจว่ามันจะเสมอปรากฏขึ้นและได้รับการมองไปที่คุณจะต้องกำหนดมัน


6
ขอบคุณสำหรับความคิดเห็นของคุณ animuson คุณสามารถตั้งชื่อเบราว์เซอร์บางตัวที่ไม่ได้ดูอัตโนมัติ
user1087110

11
@ user1087110: ฉันไม่ทราบว่าส่วนใดของศีรษะของฉันและใครจะเป็นห่วง ประเด็นคือคุณไม่สามารถคาดเดาได้และคุณจำเป็นต้องคำนึงถึงสิ่งที่จะไม่เกิดขึ้น
animuson

เนื่องจากไม่เกี่ยวข้องอีกต่อไปคุณสามารถลบคำตอบเพื่อล้างหน้า
ไก่
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.