由于某种原因,我的图标不工作。
我将favicon保存为/public目录中的favicon.ico,并在我的页面(位于/pages目录中)的<Head>
中引用它,但没有任何效果。
有人能帮忙吗?
下面是我的index.js的代码:
<Head>
<title>Create Next App</title>
<link rel="icon" href="/favicon.ico" />
dir/pages/index.js
dir/public/favicon.ico
7条答案
按热度按时间vhmi4jdf1#
将favicons放在
/public
目录下的/image
目录中,并将下面的代码放在您的_app.js
中1cklez4t2#
.ico
图像可能创建不正确-可能是从.png
联机转换而来。这将导致该图像可以在浏览器和其他位置查看,但无法用作favicon
。为了排除故障,请尝试使用
.png
而不是.ico
,并查看问题是否仍然存在。如果这样可以解决问题,请考虑使用专门针对favicons
的转换器,即https://favicon.io/favicon-converter/在我的例子中,文件在正确的位置(
/public/favicon.ico
),被正确地引用(href="/favicon.ico"
),并且在访问http://localhost:3000/favicon.ico
时被提供,但是直到我重新转换它,它才显示在浏览器选项卡中。ig9co6j13#
我遇到了和你完全一样的问题。看起来有必要把图像文件放在/public/images/
一旦我这样做了,它就会正常工作。
0qx6xfy64#
仅当您在使用nextbasePath时遇到问题时才有帮助:
我遇到了一个问题,我的图标没有显示。在我的情况下,这是因为我在我的下一个配置使用
basePath: '/some-base-path'
。当你添加一个basePath
,它改变了静态资产的路径。示例:
/test
的basePath在public/favicon.ico
处有一个图像,可以在/test/public/favicon.ico
处引用调试注意事项:我还必须清除缓存才能看到更改(或者尝试隐姓埋名)。
nbewdwxp5#
在我的例子中,**我在
src/
**目录中有public/
。我把它改成:
(将
public/
移到根目录.
)ctrmrzij6#
从以下位置删除
/
:/favicon.ico
和您的图像应该加载如果格式ico
工作。如果它不工作,将.ico
图像转换为.png
或.jpg
。ffdz8vbo7#
我在创建图标时遇到了这个错误,结果发现我在
type
中输入了错误的图像格式!例如,我这样做了:但由于格式不匹配,我不得不将
image/png
更改为image/x-icon
。