【问题标题】:How to add a gradient color to an icon with no border如何为没有边框的图标添加渐变色
【发布时间】:2021-01-18 11:54:32
【问题描述】:

我想做一个喜欢的图标,我想在悬停时用渐变颜色填充图标,没有边框,只有心形。我用的是fontawesome。

html:

                    <i class="far fa-heart"></i>

萨斯:

        i{
        position: absolute;
        left: 70vmin;
        top:2vmin;
        font-size: 1.6em;
        z-index: 100;
        cursor: pointer;
        font-weight: 100;
        &:hover{
            transition: all .8s ease-in-out;
            -webkit-background-clip: text;
            font-weight: 900;
            background-image: linear-gradient($color-primary, $color-secondary);
            -webkit-text-fill-color: transparent;
        }

我看到很多人使用 background-clip 和 text-fill-color 但图标只消失了。

有什么解决办法吗?

谢谢

【问题讨论】:

  • 请添加css而不是sass
  • 确保您使用的是字体很棒的 CSS 版本,而不是 SVG/JS 版本
  • 检查后我使用的是css版本

标签: css sass hover icons gradient


【解决方案1】:

你可以实现它:

i{
  position: absolute;
  left: 70vmin;
  top:2vmin;
  font-size: 1.6em;
  z-index: 100;
  cursor: pointer;
  font-weight: 100;
}   
i:hover:before{
  transition: all .8s ease-in-out;
  -webkit-background-clip: text;
  font-weight: 900;
  background-image: linear-gradient(red, yellow);
  -webkit-text-fill-color: transparent;
}
<link rel="stylesheet" href="https://pro.fontawesome.com/releases/v5.10.0/css/all.css" integrity="sha384-AYmEC3Yw5cVb3ZcuHtOA93w35dYTsvhLPVnYs9eStHfGJvOvKxVfELGroGkvsg+p" crossorigin="anonymous"/>
<i class="far fa-heart"></i>

【讨论】:

  • 非常感谢您的回答。黑边有什么解决办法吗?我希望它消失,只留下心的形状
  • 您对问题的更新会创建一个 working 代码,您不应进行此类编辑,因为您不知道 OP 如何包含库以及他所说的问题无边框
  • @TemaniAfif 下次我会接受这个
  • @EdwinLandsfield 所以悬停时不需要黑色边框?
  • 是的,我不需要悬停时的黑色边框
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-07-26
  • 1970-01-01
  • 2018-06-14
  • 2019-12-28
  • 2021-09-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多