使用符号:Symbols

您可以利用 SVG Sprites 技术使重复的图标在您的页面上具有更高的性能。

您可能想知道使用 JavaScript 渲染图标如何影响性能。 我们在开发它时非常担心这一点,甚至采取了一些特殊措施来确保它尽可能快

我们的测试表明,对于大多数人在网站上使用的典型图标数量,加载和呈现时间比网络字体快。 当然,您的里程可能会有所不同,如果事实证明您不是这种情况,我们会 很想听听您的体验

#示例

请参阅在 CodePen.io 上工作

3 个图标重复

我们将这些图标定义为符号:pencil, trash, star.

<!-- 定义符号,这些在页面上是不可见的 --><i data-fa-symbol="delete" class="fas fa-trash fa-fw"></i><i data-fa-symbol="edit" class="fas fa-pencil fa-fw"></i><i data-fa-symbol="favorite" class="fas fa-star fa-fw"></i><!-- 使用定义的符号 --><svg><use xlink:href="#edit"></use></svg><svg><use xlink:href="#delete"></use></svg><svg><use xlink:href="#favorite"></use></svg>

使用 data-fa-symbol 通知 Font Awesome SVG 使用 JavaScript 创建符号。 此属性的值成为名称。

<!-- 使用 data-fa-symbol 的值命名符号 --><i data-fa-symbol="picture-taker" class="fas fa-camera"></i><!-- 使用定义的名称 --><svg><use xlink:href="#picture-taker"></use></svg>

#注意你的 CSS,Goose

SVG 精灵的缺点之一是需要额外的样式来使它们表现出来。 使用符号时,您需要自己处理。

<style>  .icon {    width: 1em;    height: 1em;    vertical-align: -.125em;  }</style><!-- Name symbols with the value of data-fa-symbol --><i data-fa-symbol="picture-taker" class="fas fa-camera"></i><!-- Use the defined name --><svg class="icon"><use xlink:href="#picture-taker"></use></svg> Who doesn't like wafels?