为什么不会在我的asp.net-mvc网站上的IE中显示fav图标

时间:2011-04-11 11:30:04

标签: asp.net-mvc internet-explorer-8 favicon

我的asp.net-mvc页面中有这一行。

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

favicon在Firefox中表现不错,但它根本没有出现在IE8中。

有关为什么在IE8中无效的任何建议?

另外,在RegisterRoutes下,我有这个:

   routes.IgnoreRoute("favicon.ico");

我已尝试了所有内容on this page,但它似乎仍无法用于IE8

5 个答案:

答案 0 :(得分:1)

Wikipedia article about favicon可以很好地概述您如何指定favicon以及支持哪些文件格式。

商定的标准与事实上的标准有些冲突。例如,非标准relshortcut icon具有比标准值icon更广泛的支持。您可能希望标准和非标准link标记覆盖更多基础。

如果您只是将它放在根文件夹中,大多数浏览器都会选择它,因此即使您还有一个指向它的link标记,这也是放置它的最佳位置。

即使您做的一切正确,仍然无法保证favicon会出现在任何特定的浏览器中。由于某些未知原因,它有时根本不起作用。

答案 1 :(得分:1)

这似乎是一个ASPX页面问题。我从来没有能够在IE的任何页面中显示favicon(所有其他的是Chrome,FF和safari)我见过的唯一的网站是bing.com,msdn.com和其他人属于MS并在asp.net上运行。有一些他们没有告诉我们的东西!

即使是世界知名的网站也无法在IE中显示,例如:manu.com(世界上浏览量最多的体育团队)aspx网站,并且无法在IE上显示图标。 manu.com/favicon.ico确实显示了图标。

答案 2 :(得分:0)

使用“快捷图标”代替

<link rel="shortcut icon" href="http://mydomain.com/content/images/icons/favicon.ico" />

此维基百科页面lists the compatibility

我想补充一点,为了获得最佳的浏览器兼容性,如果你能够做到这一点,那么图标最好位于名为favicon.ico的根目录中,因为大多数浏览器默认情况下都会查看,即使没有link标记。

答案 3 :(得分:0)

这是本地的吗?

Apparently:如果文件在您的硬盘上,IE8将永远不会显示图标。它必须在互联网上。然而,其他浏览器(如firefox)会显示图标,即使它们在您的硬盘上也是如此。

修改


由于这是在本地和网络服务器上发生的 - 我建议将stackoverflow图标保存到与图标相同的位置,并相应地更改图标链接。如果它然后工作,问题可能是您的图标文件的文件类型。

答案 4 :(得分:-1)

对于IE,Favicon必须位于根目录中。 e.g

<link rel="icon" type="image/x-icon" href='<%: Url.Content("~/favicon.ico") %>' />