代码之家  ›  专栏  ›  技术社区  ›  Jon Galloway

favicon.png与favicon.ico-为什么我应该使用png而不是ico?

  •  406
  • Jon Galloway  · 技术社区  · 15 年前

    除了PNG是一种更常见的图像格式之外,还有什么技术上的理由支持favicon.png和favicon.ico吗?

    我支持所有支持PNG收藏图标的现代浏览器。

    8 回复  |  直到 7 年前
        1
  •  206
  •   Amber    8 年前

    答案被替换(并且变成了社区维基),因为在这个线程中有许多来自其他人的更新和注释:

    • ICOS和PNG都允许完全基于Alpha通道的透明度
    • ICO允许向后兼容旧浏览器(如IE6)
    • PNG可能对透明度有更广泛的工具支持,但您也可以找到创建alpha通道图标的工具,例如 Dynamic Drive tool Photoshop plugin 由@mercator提及。

    有关更多详细信息,请参阅此处的其他答案。

        2
  •  348
  •   mercator    14 年前

    所有的现代浏览器(使用chrome 4、firefox 3.5、ie8、opera 10和safari 4测试)都会请求 favicon.ico 除非您指定了一个快捷方式图标,通过 <link> . 因此,如果您没有明确指定一个,最好始终具有 图标文件 文件,以避免404。 Yahoo! suggests you make it small and cacheable.

    你也不必只为了透明度而选择PNG。 ICO files 支持alpha透明(即32位颜色),尽管几乎没有任何工具允许您创建它们。我经常使用 Dynamic Drive's FavIcon Generator 创建 图标文件 具有透明度的文件。这是我所知道的唯一能做到这一点的在线工具。

    还有一个免费的 Photoshop plug-in 可以创造它们。

        3
  •  40
  •   Koraktor    8 年前

    .png文件很好,但是.ico文件也提供alpha通道透明性, 它们提供向后兼容性。

    看看哪种类型 堆栈溢出 例如使用(注意它是透明的):

    <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"> 
    

    苹果iTouch Thingy是为iPhone用户提供一个网站的快捷方式。

        4
  •  24
  •   Álvaro González    15 年前

    *.ico文件的理论优势在于它们是容器,不能容纳多个图标。例如,您可以使用alpha通道和16色版本来存储旧系统的图像,也可以添加32x32和48x48图标(将链接拖动到Windows资源管理器时,该图标应该会出现)。

    然而,这个好主意往往与浏览器实现冲突。

        5
  •  14
  •   pmoleri    14 年前

    巴布亚新几内亚有两个优点:它的尺寸更小,而且使用和支持更广泛(除了在案件中的favicons)。 如前所述,ICO可以有多个大小的图标,这对桌面应用程序很有用,但对网站来说不算太多。 我建议您在应用程序的根目录中放置favicon.ico。如果您可以访问网站页面的头部,请使用标记指向PNG文件。 所以旧的浏览器将显示favicon.ico,而新的浏览器将显示png。

    要创建PNG和图标文件,我建议 The Gimp .

        6
  •  12
  •   Chris Forrence Shreya Gupta    12 年前

    一些社交工具,如google+使用一个简单的方法获取外部链接的favicon,获取 http://your.domainname.com/favicon.ico

    因为它们不预取HTML内容, <link> 标签不起作用。在这种情况下,您可能希望使用mod重写规则,或者只是将文件放在默认位置。

        7
  •  4
  •   Adria    8 年前

    ICO罐头 一个PNG。

    更准确地说,您可以在这个最小容器格式中存储一个或多个PNG,而不是通常的位图+阿尔法,每个人都与ICO密切相关。

    支持是旧的, appearing in Windows Vista (2007年),浏览器很好地支持它,但图标编辑软件不一定支持它。

    任何有效的PNG(包括标题)都可以由 6 byte ico header 以及16字节图像目录。
    gimp具有本机支持。只需导出为ICO并勾选“压缩(PNG)”。

        8
  •  3
  •   aehlke    15 年前

    如果你想要可靠的IE6兼容性,在任何情况下都要避免PNG。