5

我在列表中显示网站的图标,作为<img />元素。

一些网站将它们用作:

<link rel="icon" type="image/x-icon" href="favicon.ico" />

还有一些作为:

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

IE不显示那些没有type="image/x-icon" 的网站图标图像。
我无法控制网站如何为其网站图标提供服务,那么我能做些什么呢?

4

3 回答 3

2

我认为最好的办法是将它们转换为另一种格式。如果您手动显示图标,则可以下载每个图标,使用图像程序对其进行转换,然后将其上传到您的站点。

如果您是自动执行此操作,则需要查看您在服务器端获得的任何图像处理工具。如果您使用的是 PHP,那就是GDImageMagick库。例如,只需转换为 PNG,然后将其缓存在您的网站上。

如果 IE 不显示与页面内联的 .ico 文件,那么您不太可能在不进行某种处理的情况下使其显示。在最简单的层面上,您可以只读取外部图像并将它们作为正确的 mime 类型提供,而无需转换它们。

于 2009-09-17T16:19:15.217 回答
2

把它放在你的 apache 配置或.htaccess文件中:

AddType image/x-icon .ico
于 2012-12-12T16:07:56.267 回答
0

不幸的是,似乎没有解决我遇到的问题。IE 无法在我的链接列表 ( http://www.jerbils.info/wxlinks.php ) 中显示所有 favicon.ico,而所有其他浏览器都会显示(即它们显示所有存在的 favicon.ico)。有趣的是,如果我在 IE 中手动显示域的 favicon.ico,则在 IE 中未显示但在所有其他浏览器中显示的内容显示为文本内容,而不是图像。这意味着 IE 不喜欢文件中的某些内容,因此它会生成导致默认图标显示的 onerror 条件。

于 2013-06-05T19:46:55.423 回答