代码之家  ›  专栏  ›  技术社区  ›  vsync Qantas 94 Heavy

IE不以HTML显示.ico图标(如果不作为“image/x-icon”)。

  •  5
  • vsync Qantas 94 Heavy  · 技术社区  · 15 年前

    我在列表中显示网站的传真,如 <img /> 元素。

    有些网站的作用是:

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

    其中一些是:

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

    工业工程 没有显示那些没有 type=“图像/x-icon” .
    我无法控制网站如何服务他们的favicons,那么我能从我这边做些什么呢?

    3 回复  |  直到 11 年前
        1
  •  2
  •   DisgruntledGoat    15 年前

    我认为最好的办法是把它们转换成另一种格式。如果您是手动显示图标,那么您可以下载每个图标,使用图像程序将其转换,并将其上载到您的站点。

    如果您是自动执行的,那么您需要查看服务器端的任何图像处理工具。如果您使用的是PHP,那么 GD ImageMagick 图书馆。例如,只需转换为PNG,并将其缓存在您的网站上。

    如果IE不在一个页面中显示.ico文件,那么你不太可能不进行某种处理就可以让它显示出来。在最简单的层次上,您只需读取外部图像,并将其作为正确的mime类型提供,而无需转换它们。

        2
  •  2
  •   NT3RP    12 年前

    把这个放在Apache配置中,或者 .htaccess 文件:

    AddType image/x-icon .ico
    
        3
  •  0
  •   jed    11 年前

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