react项目引入字体文件失败:Failed to decode downloaded font

react项目中引入字体文件,本地启动时,有时候生效,有时候失败,控制台提示:Failed to decode downloaded font。

解决办法:

1. 重新下载字体文件,保证字体文件无损坏。

2. 将字体文件放在public/fonts/目录下。

3. css文件中引入字体:

@font-face {
  font-family: 'DingTalk-JinBuTi';
  src: url('/fonts/DingTalk-JinBuTi.woff2') format('woff2'),
       url('/fonts/DingTalk-JinBuTi.woff') format('woff'),
       url('/fonts/DingTalk-JinBuTi.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

注意:

1)font-family的值要与字体文件打开后显示的“字体名称”一样。

2)src中url路径不添加public,直接使用/即表示在public目录下,项目中加上/public的别名~@public之后,有时字体文件引入会失效,直接使用上述代码的/fonts/……路径即可。

3)打包后,public目录下的字体文件作为静态资源存在,部署到服务器上之后,发现字体引入失效,控制台提示的download路径为:http://ip/fonts/……,此时结合打包文件在服务器上的存放路径,将url加上打包文件夹名称,即url('/打包文件名/fonts/DingTalk-JinBuTi.woff2'),重新打包部署后字体引入成功。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值