Skip to content
Click to toggle
Interaction
Click toggle
Category
Media
Duration
1.00 s
Frame rate
30 fps
Artboard
32 × 32 px
Lottie size
4.2 kB

Volume

Animated volume icon

Use the Volume icon for mute and unmute buttons: it toggles between two states on click and takes 1 s. Its static SVGs cover the volume-1, volume-2, volume-x and volume states, so the resting icon still shows which one is active.

Also known asspeakersoundaudio
mute

Free under the MIT license · Markdown version · About the files

Use it

npm install react-useanimations
import UseAnimations from 'react-useanimations';
import volume from 'react-useanimations/lib/volume';

<UseAnimations animation={volume} size={32} />

Static SVG

Volume icon, volume-1 state
volume-1.svg
Volume icon, volume-2 state
volume-2.svg
Volume icon, volume-x state
volume-x.svg
Volume icon, volume state
volume.svg

Questions about the Volume icon

›Can my app decide whether Volume shows volume-1 or volume-2?

Make it controlled: pass active and flip it in onClick, e.g. active={on} onClick={() => setOn(!on)}. true plays to the last frame and false back to the first; an icon that mounts with active already true starts there without animating, and with reduced motion it jumps instead of playing.

›Should the Volume icon be a <button>?

Put its events on a real button with the render prop: render={(events, icon) => <button aria-label="Volume" aria-pressed={on} {...events}><span {...icon} /></button>}. The animation itself stays aria-hidden, and aria-pressed tells screen readers which state is on.

All media icons →