字体真棒背景颜色

时间:2014-10-22 20:17:54

标签: font-awesome

当使用辉煌的Font Awesome时,如何使图标不透明 - 例如,如果我想使用http://fortawesome.github.io/Font-Awesome/icon/chevron-circle-up/但没有"向上箭头"在黑色圆圈内是透明但纯色(白色)?

谢谢!

5 个答案:

答案 0 :(得分:35)

你可以使用fa-stack和另一个下方的fa-circle图标来更好地控制边界处的像素:

<span class="fa-stack">
    <i class="fa fa-circle fa-stack-1x icon-a"></i>
    <i class="fa fa-times-circle fa-stack-1x icon-b"></i>
</span>

with:

.icon-a {
    color: #FFF;
    font-size: 0.9em;
}
.icon-b {
    color: #000;
}

答案 1 :(得分:31)

<强>更新 正如xavier在下面指出的那样,font-awesome有Stacked Icons,它可以让你在一个图标后面放一个圆圈而不使用黑客。基本上,您可以在fa-circle图标的顶部堆叠您想要的任何图标。然后,您可以独立于图标设置圆形样式,并将其更改为您喜欢的任何颜色。

以下是基于其网站代码的示例:

&#13;
&#13;
.fa-circle {
  color: black;
}
&#13;
<link href="https://use.fontawesome.com/releases/v5.7.2/css/all.css" rel="stylesheet"/>
<span class="fa-stack" style="vertical-align: top;">
  <i class="fas fa-circle fa-stack-2x"></i>
  <i class="fas fa-chevron-up fa-stack-1x fa-inverse"></i>
</span>
&#13;
&#13;
&#13;

原始回答: 不幸的是,整个图标被认为是单个&#34;字符&#34;在页面上,因此,您无法控制它。你可以简单地设置一个&#34;颜色&#34;用于将字符/图标的颜色设置为所需的属性。

现在,有可能创造性的黑客攻击。由于角色的中间部分是透明的,因此您可以在角色后面设置彩色背景,通过执行以下操作,使中间颜色看起来不同:

    <i class="fa fa-chevron-circle-up"></i>

然后在你的CSS中:

.fa-chevron-circle-up {
  background: yellow;
  border-radius: 50%;
  height: 1em;
  width: 1em;
}

如果背景圈偏移了图标,则可以使用line-height进行修复。

答案 2 :(得分:8)

对于仍然感兴趣的人,我还有另一个黑客攻击:

<i class="fa fa-chevron-circle-up fa_with_bg"></i>

和css:

.fa_with_bg{
    position: relative;
}

.fa_with_bg::after{
    position: absolute;
    content: '';
    background: #fff;
    z-index: -1;
    top: 10px;
    left: 3px;
    width: 35px;
    height: 33px;
}

您只需要将fa_with_bg课程添加到其中 *您可能需要使用topleftwidthheight属性进行一些播放。

答案 3 :(得分:1)

我发现的最简单的解决方案是仅使用具有径向渐变的背景。 HTML:

<i aria-hidden="true" class="fa fa-arrow-alt-circle-up fa-3x"></i>

CSS:

.fa{
    color: red; 
    background: radial-gradient(grey 50%, transparent 50%);
}

您可以只更改所需的颜色或选择器,但这可以防止背景颜色越过圆圈箭头或类似的颜色。

希望这对某人有帮助,因为其他一些答案可能无法很好地扩展。

答案 4 :(得分:0)

  

白色背景的字体大小从1px缩放到150px(加正圆)。

// Note: Change background color to match your criteria

// SCSS
.fa-bg-white {
  position: relative;

  &:before {
    position: relative;
    z-index: 1;
  }

  &:after {
    position: absolute;
    content: '';
    background: #FFF;
    border-radius: 50%;
    z-index: 0;
    top: 10%;
    left: 10%;
    width: 75%;
    height: 75%;
  }
}


// HTML
<i class="fa fa-plus-circle fa-bg-white"></i>