直播平台开发,实现统一按钮点击背景切换

在直播平台开发时,我们可以利用使用 CSS 相对颜色,实现统一按钮点击背景切换。
通常页面上的按钮,都会有 hover/active 的颜色变化,以增强与用户的交互。

像是这样:

 

最常见的写法,就是我们需要在 Normal 状态、Hover 状态、Active 状态下写 3 种颜色:

p {
    color: #ffcc00;
    transition: .3s all;
}
/* Hover 伪类下为 B 颜色 */
p:hover {
    color: #ffd21f;
}
/** Active 伪类下为 C 颜色 **/
p:active {
    color: #ab8a05;
}

在之前,我们介绍过一种利用滤镜 filter: contrast() 或者 filter: brightness() 的统一解决方案,无需写多个颜色值,可以根据 Normal 状态下的色值,通过滤镜统一实现更亮、或者更暗的伪类颜色。

在今天,我们也可以利用 CSS 相对颜色来做这个事情:

div {
    --bg: #fc0;
    background: var(--bg);
    transition: .3s all;
}

div:hover {
    background: hsl(from var(--bg) h s calc(l * 1.2));
}
div:active {
    background: hsl(from var(--bg) h s calc(l * 0.8));
}

我们通过 hsl 色相、饱和度、亮度颜色表示法表示颜色。实现:

在 :hover 状态下,根据背景色,将背景亮度 l 调整为原背景色的 1.2 倍
在 :avtive 状态下,根据背景色,将背景亮度 l 调整为原背景色的 0.8 倍
在实际业务中,这是一个非常有用的用法。

以上就是直播平台开发,使用 CSS 相对颜色,实现统一按钮点击背景切换, 更多内容欢迎关注之后的文章

posted @ 2025-04-12 09:40  云豹科技-苏凌霄  阅读(17)  评论(0)    收藏  举报