UAsset
Motion icon · Free

Upload icon — animated SVG

A free upload motion icon that acts out its meaning. The animation is pure CSS inside the SVG, so it works in any website or app without Lottie or JavaScript. 24px grid, 2px stroke, round caps. Free for personal and commercial use.

Open in UAsset

Hover SVG code (plays when hovered)

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="uah-upload" overflow="visible"><style>.uah-upload g.uam,.uah-upload [class^=p]{transform-box:fill-box;transform-origin:center}:is(.uah-upload:hover,:hover>.uah-upload,:focus-visible>.uah-upload) .pa{animation:uaLrise 0.75s cubic-bezier(.2,.8,.2,1) 0s 1 both}:is(.uah-upload:hover,:hover>.uah-upload,:focus-visible>.uah-upload) .pb{animation:uaLdip 0.75s cubic-bezier(.2,.8,.2,1) 0s 1 both}@keyframes uaLrise{0%,100%{transform:none}30%{transform:translateY(3px)}60%{transform:translateY(-2.4px)}80%{transform:translateY(.6px)}}@keyframes uaLdip{0%,100%{transform:none}60%{transform:translateY(1.2px)}}@media (prefers-reduced-motion:reduce){.uah-upload *{animation:none!important}}</style><g class="uam"><g class="pa"><path pathLength="1" d="M12 15V3"/><path pathLength="1" d="M7 8l5-5 5 5"/></g><g class="pb"><path pathLength="1" d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"/></g></g></svg>

Looping SVG code

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="ual-upload" overflow="visible"><style>.ual-upload g.uam,.ual-upload [class^=p]{transform-box:fill-box;transform-origin:center}.ual-upload .pa{animation:uaLriseL 1.95s cubic-bezier(.2,.8,.2,1) 0s infinite}.ual-upload .pb{animation:uaLdipL 1.95s cubic-bezier(.2,.8,.2,1) 0s infinite}@keyframes uaLriseL{0.0%,38.0%{transform:none}11.4%{transform:translateY(3px)}22.8%{transform:translateY(-2.4px)}30.4%{transform:translateY(.6px)}}@keyframes uaLdipL{0.0%,38.0%{transform:none}22.8%{transform:translateY(1.2px)}}@media (prefers-reduced-motion:reduce){.ual-upload *{animation:none!important}}</style><g class="uam"><g class="pa"><path pathLength="1" d="M12 15V3"/><path pathLength="1" d="M7 8l5-5 5 5"/></g><g class="pb"><path pathLength="1" d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"/></g></g></svg>

Static SVG code

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"><g class="pa"><path pathLength="1" d="M12 15V3"/><path pathLength="1" d="M7 8l5-5 5 5"/></g><g class="pb"><path pathLength="1" d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"/></g></svg>

Tags: actions, line, outline, stroke, upload

More Actions motion icons

PlusMinusCloseCheckCheck CircleClose CirclePlus CirclePlus SquarePencilEditTrashCopyDownloadShareShare UpLinkPinBookmarkHeartStarThumbs UpFlagSendLog In

Browse categories