问题描述
如何实现点击文字之后,在文字背景颜色中出现渐变色效果?比如点击0.5s前出现深灰色,0.5s之后出现浅灰色,直至消失?
您可以使用 CSS 来实现这个效果。一种可能的实现方式是使用 CSS 的 transition
属性,以及一个动态改变背景颜色的 JavaScript 函数。
CSS 部分:
.fade-text {
transition: background-color 0.5s;
background-color: transparent;
color: white;
cursor: pointer;
}
.fade-text.active {
background-color: darkgrey;
}
JavaScript 部分:
let textElement = document.querySelector('.fade-text');
textElement.addEventListener('click', function() {
this.classList.add('active');
setTimeout(() => this.classList.remove('active'), 500);
});
在这个例子中,我们首先为 .fade-text
类定义了一个过渡效果,使其背景颜色在 0.5 秒内平滑变化。然后,我们定义了一个 .active
类,当添加到元素上时,它会改变元素的背景颜色。最后,我们为 .fade-text
元素添加了一个点击事件监听器。当元素被点击时,我们添加 .active
类,并在 0.5 秒后移除它,从而产生渐变效果。
代码示例
参考链接
显式动画