我想尝试使用一种单一的颜色生成渐变色,然后改变亮度或其他相关变量。
这个可行吗?
我想尝试使用一种单一的颜色生成渐变色,然后改变亮度或其他相关变量。
这个可行吗?
html {
background:
linear-gradient(90deg,rgb(255 255 255/50%),rgb(0 0 0/50%)),
red; /* here is your single color */
}
color-mix()
函数从同一种颜色中创建不同的色调。
html {
--c: red; /* the main color */
background:
linear-gradient(90deg,
color-mix(in srgb,var(--c), #fff 30%), /* we mix with white for brighter */
color-mix(in srgb,var(--c), #000 30%) /* we mix with black for darker */
)
}
div {
background-color: #428383; /* for browsers without gradient support */
background: linear-gradient(#42838344, #428383ff);
width: 100px;
height: 100px;
}
<div></div>
background: rgb(2,0,36);
background: linear-gradient(90deg, rgba(2,0,36,1) 0%, rgba(2,0,36,0.3) 100%);
0.3
会使颜色变暗
如果你想在0%,30%,100%处添加三个不同亮度的停止点
background: linear-gradient(90deg, rgba(2,0,36,1) 0%, rgba(2,0,36,0.4) 30%, rgba(2,0,36,1) 100%);
hsl()
可能比使用十六进制或RGB值更好:
.gradient {
width: 200px;
height: 100px;
background: linear-gradient(hsl(193,82%,56%), hsl(193,82%,26%));
}
<div class="gradient"></div>