【问题标题】:Font-Awesome displaying square instead of icon using CSS Pseudo AfterFont-Awesome 使用 CSS Pseudo After 显示正方形而不是图标
【发布时间】:2020-02-19 05:50:38
【问题描述】:

所以,我已经阅读并尝试了谷歌前 5 页上的几乎所有 Stack Overflow 答案,但我无法弄清楚实际发生了什么。

所以,这是我的导航栏显示的屏幕截图。如您所见,右边的方块实际上应该是this icon here。单击博客链接时,它应该更改为this icon here。有关示例,请参见下面的屏幕截图。

有关我正在尝试完成的工作的示例,您可以访问 this link here,它直接来自 StartBootstrap.com,它是一个实时演示模板。除了演示网站说“页面”而不是像我的网站那样的“博客”。您可以找到模板的完整 GitHub Repo Here

所以我复制了他们的代码,我通过 CDN 添加了 Font Awesome,我使用他们的新 Kit 的 Script 标签添加了它,我什至下载了它并将 /css/all.min.css/webfonts 文件夹包含到我的网站,它仍然无法正常工作。

这是我的代码:

Sidebar.blade.php

<!-- Sidebar -->
<ul class="sidebar navbar-nav">
    <li class="nav-item active">
        <a class="nav-link" href="index.html">
            <i class="fas fa-fw fa-tachometer-alt"></i>
            <span>Dashboard</span>
        </a>
    </li>
    <li class="nav-item dropdown">
        <a class="nav-link dropdown-toggle" href="#" id="pagesDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
            <i class="fab fa-blogger-b"></i>
            <span>Blog</span>
        </a>
        <div class="dropdown-menu" aria-labelledby="pagesDropdown">
            {{-- <h6 class="dropdown-header">Login Screens:</h6> --}}
            <a class="dropdown-item" href="#"><i class="far fa-newspaper"></i> Posts</a>
            <a class="dropdown-item" href=""><i class="far fa-list-alt"></i> Categories</a>
            {{-- <div class="dropdown-divider"></div> --}}
        </div>
    </li>
    <li class="nav-item">
        <a class="nav-link" href="">
            <i class="fas fa-fw fa-chart-area"></i>
            <span>Stuff</span>
        </a>
    </li>
    <li class="nav-item">
        <a class="nav-link" href="tables.html">
            <i class="fas fa-fw fa-table"></i>
            <span>Tables</span>
        </a>
    </li>
</ul>

侧边栏的相关 CSS

.navbar-nav .form-inline .input-group {
  width: 100%;
}

.navbar-nav .nav-item.active .nav-link {
  color: #fff;
}

.navbar-nav .nav-item.dropdown .dropdown-toggle::after {
  width: 1rem;
  text-align: center;
  float: right;
  vertical-align: 0;
  border: 0;
  font-weight: 900;
  content: '\f105';
  font-family: 'Font Awesome 5 Solid' !important;
}

.navbar-nav .nav-item.dropdown.show .dropdown-toggle::after {
  content: "\f107";
}

.navbar-nav .nav-item.dropdown.no-arrow .dropdown-toggle::after {
  display: none;
}

.navbar-nav .nav-item .nav-link:focus {
  outline: none;
}

.navbar-nav .nav-item .nav-link .badge {
  position: absolute;
  margin-left: 0.75rem;
  top: 0.3rem;
  font-weight: 400;
  font-size: 0.5rem;
}

这个网站是用 Laravel 设计的。然而,这实际上是一个 Laravel 包开发,而不是一个实际的 Laravel Web 应用程序。所以这段代码被符号链接到我的实际网站中。并不是说它应该有任何区别。

那么,我在这里错过了什么?

编辑 1

我尝试过的参考链接:

FontAwesome icons not showing. Why?

Font Awesome not working, icons showing as squares

Font Awesome in CSS pseudo elements not showing

Font Awesome 5 on pseudo elements shows square instead of icon

Font awesome is not showing icon

https://www.hanselman.com/blog/WhyDoMyFontAwesomeIconsShowUpAsBlankSquares.aspx

编辑 2

我认为这不是一个重复的问题,因为所有其他问题的答案都建议我做以下一些事情。

  1. 将字体系列更改为“Font Awesome 5 Free”、“Font Awesome 5 Solid”等。
  2. 将字体粗细设置为 900、粗体、400 等。
  3. 通过CDN包含Font Awesome,通过“Hosting Font-Awesome Yourself”页面直接下载等
  4. 尝试将伪从 after 更改为 before。

因此,虽然这是一个“重复问题”,但所有相同问题或问题类型的答案都不适用于我的具体案例。

我还添加了指向我的full package repo as it sits right nowLaravel web application repo 的链接。

编辑 3

现在 GitHub repo 中的 admin.css 文件是正确的,相关代码从第 10626 行开始。

【问题讨论】:

  • 很难调试你的代码,但是你试过用font-family: "Font Awesome 5 Free"吗?
  • 你真的尝试过你分享的所有链接吗?其中一个包含解决方案:stackoverflow.com/q/50681748/8620333
  • @ChrisHappy 是的,我已经尝试过了。
  • @TemaniAfif 是的,我已经尝试过该解决方案。
  • 您的实际代码显示的字体系列无效

标签: css twitter-bootstrap font-awesome webfonts


【解决方案1】:

使用fa fa-list-altfa fa-fw fa-table 修复类别和表格。

【讨论】:

    【解决方案2】:

    (代表问题作者发布,将其从问题移至答案部分)。

    问题已解决。整个问题是由于使用了过时的 Font-Awesome 版本。因此,对于遇到此问题的任何人,请确保您使用的是最新版本的 Font-Awesome!

    【讨论】:

      【解决方案3】:

      您是否尝试为特定元素赋予字体粗细:粗体; ?

      如果是 fas,字体粗体有时会修复它。

      【讨论】:

      • 是的,但是粗体是 700 而不是 900。也许会有所不同。
      【解决方案4】:

      您需要使用“Font Awesome 5 Free”作为字体系列(如果您使用的是免费版)

      https://fontawesome.com/how-to-use/on-the-web/advanced/css-pseudo-elements

      【讨论】:

      • 是的,我已经尝试过使用它以及“Font Awesome 5 Free”。
      猜你喜欢
      • 2020-05-09
      • 2018-07-07
      • 2017-06-05
      • 1970-01-01
      • 1970-01-01
      • 2022-01-18
      • 1970-01-01
      • 2020-08-17
      • 2020-08-01
      相关资源
      最近更新 更多