在CSS的文本的彩虹梯度

时间:2016-11-11 22:54:32

标签: css css3

在CSS中实现此设计的最佳方法是什么?

enter image description here

并且: enter image description here

感谢您的帮助!

4 个答案:

答案 0 :(得分:32)

以下是如何创建基本彩虹线性渐变(尚未与文本集成):



#grad1 {
    height: 200px;
    background: red; /* For browsers that do not support gradients */
    background: -webkit-linear-gradient(left, orange , yellow, green, cyan, blue, violet); /* For Safari 5.1 to 6.0 */
    background: -o-linear-gradient(right, orange, yellow, green, cyan, blue, violet); /* For Opera 11.1 to 12.0 */
    background: -moz-linear-gradient(right, orange, yellow, green, cyan, blue, violet); /* For Firefox 3.6 to 15 */
    background: linear-gradient(to right, orange , yellow, green, cyan, blue, violet); /* Standard syntax (must be last) */
}

<div id="grad1"></div>
&#13;
&#13;
&#13;

或者,您可以使用其中一个渐变生成器(我更喜欢this one)。

这是文本集成:

&#13;
&#13;
#grad1 {
    background: red;
    background: -webkit-linear-gradient(left, orange , yellow, green, cyan, blue, violet);
    background: -o-linear-gradient(right, orange, yellow, green, cyan, blue, violet);
    background: -moz-linear-gradient(right, orange, yellow, green, cyan, blue, violet);
    background: linear-gradient(to right, orange , yellow, green, cyan, blue, violet);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 20vw;
}
&#13;
<h1 id="grad1">Fake Text</h1>
&#13;
&#13;
&#13;

这里的主要部分是background-cliptext-fill-color属性,但请准备好,并非所有浏览器都支持它。有关浏览器兼容性的更多信息,请检查这些页面底部附近具有相同名称的部分:

background-clip

text-fill-color

答案 1 :(得分:9)

如果您需要相同的文本渐变使用这样的东西。

    h1 {
  background: linear-gradient(to right, orange , yellow, green, cyan, blue, violet);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 60px;
  line-height: 60px;
}
<h1>100% Unicorn</h1>

但Internet Explorer中不支持text-fill-color。 所以最好在前台使用透明的png或svg。

答案 2 :(得分:4)

我倾向于使用此gradient generator。在不同的点添加颜色并使用旋转选项。

它会为你生成CSS。

答案 3 :(得分:2)

在CSS文件中:

.rainbow {
  background-image: -webkit-gradient( linear, left top, right top, color-stop(0, #f22), color-stop(0.15, #f2f), color-stop(0.3, #22f), color-stop(0.45, #2ff), color-stop(0.6, #2f2),color-stop(0.75, #2f2), color-stop(0.9, #ff2), color-stop(1, #f22) );

background-image: gradient( linear, left top, right top, color-stop(0, #f22), color-stop(0.15, #f2f), color-stop(0.3, #22f), color-stop(0.45, #2ff), color-stop(0.6, #2f2),color-stop(0.75, #2f2), color-stop(0.9, #ff2), color-stop(1, #f22) );

color:transparent;

border: 2px dotted white;

-webkit-background-clip: text;

background-clip: text;

}

<强>结果

enter image description here