1

这是我的 HTML:

<a class="iconContainer" href="#">
  <span class="containerIcon chevron-right"/>
  Test
</a>

这是我的CSS:

.chevron-right::before {
  display: inline-block;
  content: "";
  background-image: url("data:image/svg+xml,<svg width='1em' height='1em' viewBox='0 0 16 16' class='bi bi-chevron-right' fill='currentColor' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/></svg>");
  background-repeat: no-repeat;
  background-size: 10px 10px;
}

由于某种原因,该图标未显示。这与此处的引导图标文档中显示的示例几乎相似: https ://icons.getbootstrap.com/#usage

有没有人知道我做错了什么?我想我错过了一些非常明显的东西。这是它的 jsFiddle 链接。https://jsfiddle.net/w5bvs7n6/8/

编辑:我想这与内容为空有关,但如果不是,我不知道它会如何工作。

4

1 回答 1

4

困难的方法是您必须使用转换器工具。能够在您的 CSS 中使用 SVG,例如 SVG 的URL-encoder

因此,您需要找到打开的 SVG 文件,将其内容复制到工具中并让魔法发生,然后您需要复制适合您的代码。

在此处输入图像描述

完成此过程后,您将获得一个工作并准备好粘贴代码。你只需要复制它并使用它。

.header__shape-quote::before {
    font-size: 4rem;
    position: absolute;
    top: -50px;
    left: -60px;
    background-image: url("data:image/svg+xml,%3Csvg width='1em' height='1em' viewBox='0 0 16 16' class='bi bi-chevron-right' fill='currentColor' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    height: 40px;
    width: 40px;
    background-size: 40px 40px;
    content: "";
}

简单的方法是跟随路径并调用它。

.header__shape-quote::before {
    font-size: 4rem;
    position: absolute;
    top: -50px;
    left: -60px;
    /* calling the icon from the folder */
    background-image: url("../images/bootstrap-icons-1.0.0/chevron-right.svg");
    background-repeat: no-repeat;
    height: 40px;
    width: 40px;
    background-size: 40px 40px;
    content: "";
}

在此处输入图像描述

于 2020-09-11T05:24:44.100 回答