如何找出浏览器实际使用的图标

How to find out which favicon a browser actually uses

我有一个新网站,其中包含一组使用 Real Favicon Generator 从源文件自动生成的网站图标图像,并且有:

显然,其中大部分都可以放置在各自的供应商 - Apple、Microsoft tiles 等

我有一个问题 运行 Firefox 上的网站,我想改变它使用的图标,但我不知道它实际使用的是哪个?

我已阅读 this question 但此处规定的答案是 不正确

Firefox and Safari will use the favicon that comes last.

不再正确。

显然,重复浏览约 15 张图像以找到在一个浏览器上发生更改的图像是一项耗时的工作,而且我实际上发现 Firefox 42 选择了 96x96 尺寸的图标,而不是最后一个显示的图标。

问题:

有没有办法[除了反复试验]加载一个页面,然后在浏览器中找到一个声明来定义HTMLhead 用作该浏览器中的页面图标?

附加信息:

参考列表不完整here。但是,这遗漏了各种版本和各种 OS,我只能假设这些细节是通过反复试验找到的。

虽然 this 很有用,但该问题的各种链接和解决方案为自动化过程提供了单个 URL 结果,例如

http://www.google.com/s2/favicons?domain=www.domain.com

在 return 使用有效的网站图标时效果很好,但它不会 return 我的浏览器在测试时使用的网站图标。

该问题的其他链接类似,大多数仅 return 编辑了 16x16 的图标,许多显然没有 return 使用的图像。有些人可能没有 return 使用的图像...有时很难区分 16x16px!

您可以使用 Compatibility test 的 RealFaviconGenerator。测试会询问您看到了哪个图标。但有一个转折点:测试并不是真正针对最终用户的,因此您必须右键单击与您看到的图标相对应的图像,检查它,然后查看 alt 属性 img标签。但这会阻止您使用 20 多张图像来使它们与众不同。容易多了!

完全披露:我是 RealFaviconGenerator 的作者。

注意:我会对您的调查感兴趣,以修复您提到的答案(我是他的作者)。

使用 Inspect Element,或仅使用 Inspect 工具,在 Firefox 和 Chromium 中可用。 Network 选项卡显示与重新加载相关的所有 http 操作。当页面重新加载时,按 'favicon' 过滤最有可能查看正确的操作。

浏览器下载图像这一事实强烈暗示了所显示的内容。然而,怀疑可能会持续存在,例如.ICO 的哪一部分。不幸的是,该选项卡是一个计算元素,在(计算的)页面源中不可见。

在 Firefox 上,iconuri 在导出书签的 json 代码中可见。