Answers:
由于此线程中的许多其他更新和注解,答案被替换(并变为社区Wiki):
请随时在此处咨询其他答案以获取更多详细信息。
favicon.ico
除非您通过指定了快捷方式图标,否则所有现代浏览器(经过Chrome 4,Firefox 3.5,IE8,Opera 10和Safari 4的测试)都将始终请求<link>
。因此,如果您未明确指定一个文件,则最好始终有一个favicon.ico
文件,以避免404。Yahoo ! 建议您将其缩小并缓存。
而且您也不必只为Alpha透明度而去PNG。ICO文件支持alpha透明度很好(即32位颜色),尽管几乎没有工具允许您创建它们。我经常使用Dynamic Drive的FavIcon Generator创建favicon.ico
具有Alpha透明度的文件。我知道这是唯一可以做到的在线工具。
还有一个免费的Photoshop插件可以创建它们。
.ico
在PS中进行编辑非常困难。即使这样做,最终结果还是很糟糕的,您会认为这.bmp
是一种更好的格式(它增加了许多元数据,使重新编辑非常痛苦)。
.png文件都不错,但.ico文件提供alpha通道透明度,也加上他们给你的向后兼容性。
看一下StackOverflow使用哪种类型(例如,它是透明的):
<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 whaty适用于为网站建立快捷方式的iPhone用户。
* .ico文件的理论优势在于,它们是容器,可以容纳多个图标。例如,您可以为旧版系统存储带有alpha通道和16色版本的图像,或者可以添加32x32和48x48图标(例如,将链接拖到Windows资源管理器时会显示)。
但是,这个好主意容易与浏览器实现冲突。
PNG有2个优点:它具有更小的尺寸,并且得到了更广泛的使用和支持(在favicon中除外)。正如ICO之前提到的,图标可以有多个大小,这对桌面应用程序很有用,但对网站而言却不太多。我建议您将favicon.ico放在应用程序的根目录中。如果您有权访问网站页面的首页,则使用标记指向png文件。因此,较旧的浏览器将显示favicon.ico,而较新的浏览器将显示png。
要创建Png和Icon文件,我建议使用The Gimp。
某些Google+等社交工具使用一种简单的方法来获取外部链接的图标,从而获取 http://your.domainname.com/favicon.ico
由于它们不预提取HTML内容,因此该<link>
标记将无效。在这种情况下,您可能要使用mod_rewrite规则或仅将文件放在默认位置。
ico可以是 png。
更准确地说,您可以在此最小容器格式中存储一个或多个png,而不是每个人都与ico紧密关联的通常的bitmap + alpha。
支持已久,出现在Windows Vista(2007)中,并且得到了浏览器的很好支持,尽管不一定由图标编辑软件提供。
任何有效的png(包括标头)都可以以6字节的ico标头和16字节的图像目录作为前缀。
GIMP具有本机支持。只需将其导出为ico,然后勾选“压缩(PNG)”即可。
如果要可靠的IE6兼容性,无论如何都要避免使用PNG。
<link>
现代浏览器的页面代码中通过a指定的PNG 。
对于它的价值,我这样做:
<!-- 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">
而且我仍然保留favicon.ico根目录。