Каким будет лучший способ добиться этого дизайна в CSS?
Спасибо за вашу помощь!
Вот как вы можете создать базовый линейный градиент радуги (пока без интеграции с текстом):
#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>
Если вам нужен тот же градиент для текста, используйте что-то вроде этого.
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>
Я склонен использовать этот генератор градиента. Добавьте цвета в разных точках и используйте опцию поворота.
Это сгенерирует CSS для вас.
В файле 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;
}
Результат