Skip to content
Click to toggle
Interaction
Click toggle
Category
Action
Duration
0.83 s
Frame rate
30 fps
Artboard
32 × 32 px
Lottie size
2.6 kB

Visibility V2

Animated visibility v2 icon

Visibility V2 is a 0.83 s micro animation that toggles between two states on click; use it for show and hide password toggle in a login form. Its static SVGs cover the eye-off and eye states, so the resting icon still shows which one is active.

Also known aseyeshow passwordhide passwordpassword toggle
eye-offhidepasswordshow

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

Use it

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

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

Static SVG

Visibility V2 icon, eye-off state
eye-off.svg
Visibility V2 icon, eye state
eye.svg

Other versions

Questions about the Visibility V2 icon

›Can my app decide whether Visibility V2 shows eye-off or eye?

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.

›How do I make Visibility V2 an accessible button?

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