.gradient-animation { background: linear-gradient(to right, #ffafbd, #ffc3a0, #ffdca2); animation: gradient 5s ease infinite; } @keyframes gradient { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } }
上面这段代码定义了一个CSS类。当一个元素应用了这个CSS类之后,它的背景就会呈现出一种由左往右渐变的颜色过渡效果。
让大家仔细分析一下这个CSS类。
.gradient-animation { background: linear-gradient(to right, #ffafbd, #ffc3a0, #ffdca2); animation: gradient 5s ease infinite; }
首先,大家定义了一个线性渐变的背景色。这个背景色会由左往右渐变,颜色从#ffafbd过渡到#ffc3a0,再从#ffc3a0到#ffdca2。
接下来,大家使用animation
属性来制定了这个类的动画效果。名称为gradient
,持续时间为5秒,运动方式为ease
,动画无限循环。
@keyframes gradient { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } }
这个@keyframes
定义了上面声明的动画效果。它指定了背景在不同时间点的颜色渐变过渡方式。
第一帧(或说第0%)的背景位置是从左边开始的50%位置。第二帧(或说50%)的背景位置是在右边的50%位置。最后一帧(或说100%)的背景位置又回到了起始位置,即左边的50%位置。
综上所述,这个CSS类通过线性渐变动画让背景色渐变成不同的颜色,从而产生出现代Web界面设计中不可或缺的动画效果。