通过CSS的动画属性animation可以实现音频播放时的动画效果,同时配合JS操作动画的animation-play-state属性,来控制动画的暂停和播放。
网页布局采用的flex布局。若在客户端展示,可使用定位布局(本人遇到flex布局会出现底部轻微颤动的bug)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
.voice-playing{
height: 50px;
width: 40px;
display: flex;
/* 底部对齐,实现从下往上的动画效果 */
align-items: flex-end;
justify-content: space-between;
}
.play1{
width: 10px;
background-color: #bfc;
animation: playing1 1s linear infinite alternate;
}
.play2{
width: 10px;
background-color: #bfc;
animation: playing2 1s linear infinite alternate;
}
.play3{
width: 10px;
height: 10px;
background-color: #bfc;
animation: playing3 1s .5s linear infinite alternate;
}
@keyframes playing1 {
0%{
height: 10px;
}
100%{
height: 30px;
}
}
@keyframes playing2 {
0%{
height: 30px;
}
100%{
height: 10px;
}
}
@keyframes playing3 {
0%{
height: 10px;
}
100%{
height: 30px;
}
}
|
|