伪元素上的字体很棒5

Lei*_*igh 47 font-awesome font-awesome-5

在字体真棒4中,您可以使用CSS轻松地将图标应用于:before /:after元素.

新的字体真棒5 JS/SVG实现是否可能相同?从我可以看到,这需要相关标签存在于html中,这并不总是实用的,例如你有一个CMS,并希望将图标应用于所有用户创建的内容<li>元素

我知道在FA5中你仍然可以使用旧的css/webfonts但是如果在使用JS的推荐方法中提供相同的功能会很好

ben*_*che 127

指定正确的font-weight关键似乎是使某些符号正确显示(而不是"□□□").

font-weight 必须:

  • 400RegularBrands符号
  • 900用于Solid符号
  • 300用于Light符号

即如果你使用CSS-Webfonts的Font-Awesome,只有CSS的解决方案是:

@import url("font-awesome/css/fontawesome-all.min.css"); /* FA CSS import */

/* ... */

.class:before {
    /* >> Symbol you want to use: */
    content: "\f16c";
    /* >> Name of the FA free font (mandatory), e.g.:
               - 'Font Awesome 5 Free' for Regular and Solid symbols;
               - 'Font Awesome 5 Pro' for Regular and Solid symbols (Professional License);
               - 'Font Awesome 5 Brand' for Brands symbols. */
    font-family: 'Font Awesome 5 Free';
    /* >> Weight of the font (mandatory):
               - 400 for Regular and Brands symbols;
               - 900 for Solid symbols;
               - 300 for Light symbols. */
    font-weight: 900;

    /* >> Optional styling: */
    display: inline-block;
    /* ... */
}
Run Code Online (Sandbox Code Playgroud)

  • 哇,这应该是官方文件的一部分......你救了我的一天,thx (14认同)
  • 可以确认 - 字体重量也适合我.谢谢 (9认同)
  • 同样在这里.如果您从旧版本的FA升级,则需要在包含"内容"的所有类中设置font-weight (3认同)

小智 46

您需要启用它(默认情况下禁用它).

<script>
  window.FontAwesomeConfig = {
    searchPseudoElements: true
  }
</script>
Run Code Online (Sandbox Code Playgroud)

CSS:

.class:before{
  display: none;
  content: "\f16c";
  font-family: "Font Awesome 5 Brands";
}
Run Code Online (Sandbox Code Playgroud)

其他类型:Font Awesome 5 + Solid或Regular或Light或Brands

  • 小心这一点,它在使用 Edge / IE 时绝对会破坏性能 - 参见 https://github.com/FortAwesome/Font-Awesome/issues/12994 (2认同)

小智 16

我认为它的工作正常如下:

.class:before{
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
}
Run Code Online (Sandbox Code Playgroud)


War*_*ard 7

我有5个工作使用

<link href="https://use.fontawesome.com/releases/v5.0.6/css/all.css" rel="stylesheet">
Run Code Online (Sandbox Code Playgroud)

<head>

:before {
  font-family: "Font Awesome 5 Brands";
  font-weight: 400;
  content: "\f167";
}
Run Code Online (Sandbox Code Playgroud)

在我的CSS


Esa*_*san 6

Font Awesome 5,当我使用免费版本时,所有最佳答案都不适用于我的情况。这个问题的正确答案是在这个问题中。检查您的字体类型(免费或专业),然后按照:

自由

font-family: "Font Awesome 5 Free"
Run Code Online (Sandbox Code Playgroud)

font-family: "Font Awesome 5 Pro"
Run Code Online (Sandbox Code Playgroud)

品牌

font-family: "Font Awesome 5 Brands"
Run Code Online (Sandbox Code Playgroud)

不要忘记,我只是在 HTML 中使用了带有我的 CSS 文件路径的链接标签。不需要启用也没有将 all.css 文件导入我的 css 文件。现在它正在工作!