我有一个简单的html块在本地Windows PC上运行。
<html>
<head>
<title>FavIcon Test</title>
<link id='favicon' rel='icon' href='favicon.ico' type='image/x-icon'/>
</head>
<body style='margin-left:10px'>
Hello World
</body>
</html>
我随机抓取了一个网站的favicon文件*,并将其保存到与html相同的位置,然后在Chrome和Edge中运行;Chrome向我显示了预期的网站图标,而Edge则未能显示。
这到底是怎么回事?
谢谢Abe
*例如,前往 https:/ico.org.ukfavicon.ico。 然后在结果上右击[图片另存为...]。
在本地服务器的Edge Legacy上无法显示favicon,原因在于 服务器返回的不完整的头文件 和 由于某些Windows安全设置,Edge无法访问localhost。. 详细的信息您可以参考 本回答.
如果你把网站部署到web服务器上,或者使用绝对的全局http-address favicon href,这个问题就会得到解决。以下代码将在Edge Legacy上工作。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>FavIcon Test</title>
<link id='favicon' rel='icon' href='https://ico.org.uk/favicon.ico' type='image/x-icon' />
</head>
<body style='margin-left:10px'>
Hello World
</body>
</html>