为什么字体超棒的图标没有显示?

Why are the font-awesome icons not showing?

我创建了一个 angular 项目,出于美观的原因,我想使用超棒的字体图标。 我是这样安装的:

npm install font-awesome

然后将其添加到我的 angular.json 中的 javascript:

"styles": [
  "node_modules/font-awesome/css/font-awesome.css"
]

已检查,路径正确(对于我的设置)

因此,当我现在尝试添加 "plus" 图标(包含在免费版本中)时,它只是显示为一个奇怪的占位符...

我添加了这样的图标:

<i class="fas fa-plus-circle"></i>

希望大家能帮帮我

虽然问题已经在评论中得到解答,这里是一个简短的总结:

Font Awesome有好几个版本,最新的是5.15.1relying on the GitHub repository). However, in the NPM repository作者还发布了旧版本4.7.0 .

Font Awesome 的基础名称 class 已从版本 4.x 中的 fa 更改为版本 5.x 中的 fas。又因为文档引用的是最新版本,但是npm包版本比较旧,所以必须到处把fas改成fa

编辑: 正如我发现的那样,在 Font Awesome 5.x 中还有几种 class 的替代图标样式,例如 farfab。如有疑问,您应该检查每个图标属于哪种样式 class。

不过,最新版本的 Font Awesome 也已在 NPM 上以包名 @fortawesome/fontawesome-free.

发布

fas更改为fa

如果你有这样的代码<i class="fas fa-caret-down"></i> 改成这个<i class="fa fa-caret-down"></i>

这是因为版本问题。