-
模拟简单的电池充电效果
先画出电池的轮廓
<html> <head> <style> html,body { width: 100%; height: 100%; display: flex; background-color: #e4e4e4; overflow: hidden; } .container { position: relative; width: 140px; margin: auto; } .battery { height: 220px; box-sizing: border-box; border-radius: 15px 15px 5px 5px; filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.22)); background: #fff; z-index: 1; } </style> </head> <body> <div class="container"> <div class="battery"></div> </div> </body> </html>
电池的轮廓如下:
此时需要给电池加上一个冒,使用伪元素实现:
.battery::before {
content: '';
/*清除浮动*/
position: absolute;
width: 26px;
height: 10px;
top: 0;
left: 50%;
transform: translate(-50%, -10px);
border-radius: 5px 5px 0 0;
background: rgba(240, 240, 240, .88);
}
效果如下:
下面模拟充电的效果:通过色块的位移动画实现充电的动画。
.battery::after {
content: "";
position: absolute;
left: 0;
right: 0;
bottom: 0;
top: 90%;
background: linear-gradient(to bottom, #7abcff 0%, #00BCD4 44%, #2196F3 100%);
border-radius