我想实现一个像电池一样充满的按钮。它将首先以红色开始,然后在悬停时变为绿色。
我知道填充动画,但在填充时改变颜色,我无法实现。
.outer {
margin: 50px;
}
.button {
border: 1px solid black;
border-radius: 3px;
width: 100px;
height: 30px;
display: block;
position: relative;
overflow: hidden;
background-color: green;
}
.button::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 20%;
height: 100%;
background-color: red;
transition: width 0.5s ease-out;
}
.button:hover::before {
width: 100%;
}
.text {
text-align: center;
font-size: 16px;
line-height: 30px;
color: black;
transition: color 0.6s ease-out;
display: block;
}
.button:hover .text {
color: white;
}
<div class="outer">
<button class="button">
<span class="text">Click me</span>
<span class="charging-animation"></span>
</button>
</div>
2条答案
按热度按时间uurity8g1#
希望我的代码可以帮助你。它只是在背景颜色和宽度上使用了css过渡。
js81xvg62#
.button {background-color:} .button::before {width:0%;背景色:绿色;}