当前位置: 首页 > 面试题库 >

使用JS + SVG版本时,Font Awesome 5显示空白方块

文嘉禧
2023-03-14
问题内容

试图用Font Awesome图标替换列表项标签上的项目符号类型,但出现一个空的正方形:

ul {

  list-style: none;

}



.testitems {

  line-height: 2em;

}



.testitems:before {

  font-family: "Font Awesome 5 Free";

  content: "\f058";

  margin: 0 5px 0 -15px;

  color: #004d00;

  display: inline-block;

}


<script src="https://use.fontawesome.com/releases/v5.12.0/js/all.js"></script>

<ul>

  <li class="testitems">List Item 1</li>

  <li class="testitems">List Item 2</li>

  <li class="testitems">List Item 3</li>

  <li class="testitems">List Item 4</li>

  <li class="testitems">List Item 5</li>

</ul>

我知道字体库正在加载,因为我能够使用<i class="fas fa-check-circle"></i><li class="testitems">List Item 1</li>并且字体呈现正确(尽管样式不正确)。


问题答案:

如果您使用的是 CSS版本,请 阅读以下内容:FontAwesome5,为什么CSS内容没有显示?

使用Font Awesome 5的最新版本,您可以通过添加data-search-pseudo-elements如下内容来将伪元素与JS版本一起使用:

ul {

  list-style: none;

}



.testitems {

  line-height: 2em;

}



.testitems:before {

  font-family: "Font Awesome 5 Free";

  content: "\f058";

  display:none; /* We need to hide the pseudo element*/

}

/*target the svg for styling*/

.testitems svg {

  color: blue;

  margin: 0 5px 0 -15px;

}


<script data-search-pseudo-elements src="https://use.fontawesome.com/releases/v5.13.0/js/all.js"></script>

<ul>

  <li class="testitems">List Item 1</li>

  <li class="testitems">List Item 2</li>

  <li class="testitems">List Item 3</li>

  <li class="testitems">List Item 4</li>

  <li class="testitems">List Item 5</li>

</ul>

<i class="fa fa-user"></i>

您可以查看文档以了解更多详细信息:

如果您使用我们的SVG + JS框架渲染图标,则需要做一些额外的事情:

启用伪元素

使用我们的SVG + JS框架时,默认情况下,禁用CSS伪元素来呈现图标。您需要将<script data-search-pseudo- elements ... >属性添加到<script />调用Font Awesome 的元素中。

将伪元素的显示设置为无

由于我们的JS会找到每个图标引用(使用伪元素样式)并将图标自动插入页面的DOM中,因此我们需要隐藏渲染的由CSS创建的真实伪元素。



 类似资料:
  • 我已经在本地机器上成功安装了 CakePHP 3。我使用WAMP服务器(http: // localhost /)。一切正常。当我通过FTP将相同的文件传输到Web服务器时 http://example.com/ cakephp 3不起作用,它会显示白色空白页。Web服务器(example.com)使用php 5.6版本。问题出在哪里?怎么了?

  • 本文向大家介绍tensorboard显示空白的解决,包括了tensorboard显示空白的解决的使用技巧和注意事项,需要的朋友参考一下 ubuntu 14.04 + python3.4 + chrome, 在浏览器中查看tensorboard, 发现出了graph,其他的数据都是空白。 通过分析,发现js中如下一些错误 Uncaught SyntaxError: Block-scoped decl

  • 我已经用php5 fpm设置了一个nginx服务器。当我尝试加载网站时,我得到一个没有错误的空白页面。Html页面可以很好地使用,但php却不行。我尝试在php中打开显示错误。但是没有运气。php5-fpm。日志没有产生任何错误,nginx也没有。 nginx。形态 编辑 这是我的nginx错误日志:

  • 我在这里遵循GLUT教程。我将第一个示例“YAT”复制并粘贴到xcode中,稍微修改了包含,发现出现了一个空白窗口。未修改的代码设置为显示线框茶壶。对我来说,这不会发生。 但是,如果我取消对创建金牛座的注释,则金牛座和茶壶的一部分会出现在窗口中。在//draw下,似乎还有一些随机的非注释行和注释行的组合,它们实际上会导致对象出现……或者只是一个空白屏幕。 P、 我知道每个人都说不要使用GLUT,但

  • 我正在尝试使用 iReport 设计器(两者都具有空数据源)从主报告(report1.jrxml)创建一个子报告(report1_subreport3.jrxml)。主报表详细信息带包含静态文本(“主报表”),子报表元素和子报表在其相应的详细信息带中包含静态文本(“子报表”) 但单击主报表的预览选项卡仅显示静态文本“主报表”,而不显示子报表(“子报表”)的静态文本。 我还浏览了http://com

  • webview.xml 单击“播放”按钮时,音频正在运行,但视频未显示,显示黑屏。**