问题描述
我在一个项目中使用laravel,并且我使用google-webfonts-helper应用程序下载了google字体以离线使用该字体,但是我在浏览器中遇到此错误:
GET http://127.0.0.1:8000/css/public/fonts/nunito-v14-latin-800.woff2 net::ERR_ABORTED 404 (Not Found)
这是css调用
<link href="{{asset('css/fonts.css')}}" rel="stylesheet">
这是fonts.css
文件的一部分(我没有放入所有代码,因为它基本上是相同的,只是字体粗细不同)
@font-face {
font-family: 'Nunito';
font-style: normal;
font-weight: 200;
src: url('public/fonts/nunito-v14-latin-200.eot');
/* IE9 Compat Modes */
src: local('Nunito ExtraLight'),local('Nunito-ExtraLight'),url('public/fonts/nunito-v14-latin-200.eot?#iefix') format('embedded-opentype'),/* IE6-IE8 */
url('public/fonts/nunito-v14-latin-200.woff2') format('woff2'),/* Super Modern Browsers */
url('public/fonts/nunito-v14-latin-200.woff') format('woff'),/* Modern Browsers */
url('public/fonts/nunito-v14-latin-200.ttf') format('truetype'),/* Safari,Android,iOS */
url('public/fonts/nunito-v14-latin-200.svg#Nunito') format('svg');
/* Legacy iOS */
}
我将字体文件粘贴到public/fonts
中,浏览器实际上重新识别了css文件,但我不知道我在做什么错
解决方法
在laravel中,url
函数植根于公用文件夹中。
因此,如果将字体文件粘贴到public/font/file.ttf
中,请使用url('font/file.ttf')
而不是url('public/font/file.tff')
。
因为它将指向public/public/font/file.ttf
文件