Motion icon · Free
Maximize icon — animated SVG
A free maximize 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 UAssetHover 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-maximize" overflow="visible"><style>.uah-maximize g.uam,.uah-maximize [class^=p]{transform-box:fill-box;transform-origin:center}:is(.uah-maximize:hover,:hover>.uah-maximize,:focus-visible>.uah-maximize) .pa{animation:uaLcornersA 0.55s cubic-bezier(.34,1.56,.64,1) 0s 1 both}:is(.uah-maximize:hover,:hover>.uah-maximize,:focus-visible>.uah-maximize) .pb{animation:uaLcornersB 0.55s cubic-bezier(.34,1.56,.64,1) 0s 1 both}:is(.uah-maximize:hover,:hover>.uah-maximize,:focus-visible>.uah-maximize) .pc{animation:uaLcornersC 0.55s cubic-bezier(.34,1.56,.64,1) 0s 1 both}:is(.uah-maximize:hover,:hover>.uah-maximize,:focus-visible>.uah-maximize) .pd{animation:uaLcornersD 0.55s cubic-bezier(.34,1.56,.64,1) 0s 1 both}@keyframes uaLcornersA{0%,100%{transform:none}45%{transform:translate(-1.6px,-1.6px)}}@keyframes uaLcornersB{0%,100%{transform:none}45%{transform:translate(1.6px,-1.6px)}}@keyframes uaLcornersC{0%,100%{transform:none}45%{transform:translate(1.6px,1.6px)}}@keyframes uaLcornersD{0%,100%{transform:none}45%{transform:translate(-1.6px,1.6px)}}@media (prefers-reduced-motion:reduce){.uah-maximize *{animation:none!important}}</style><g class="uam"><g class="pa"><path pathLength="1" d="M8 3H5a2 2 0 0 0-2 2v3"/></g><g class="pb"><path pathLength="1" d="M16 3h3a2 2 0 0 1 2 2v3"/></g><g class="pc"><path pathLength="1" d="M21 16v3a2 2 0 0 1-2 2h-3"/></g><g class="pd"><path pathLength="1" d="M3 16v3a2 2 0 0 0 2 2h3"/></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-maximize" overflow="visible"><style>.ual-maximize g.uam,.ual-maximize [class^=p]{transform-box:fill-box;transform-origin:center}.ual-maximize .pa{animation:uaLcornersAL 1.43s cubic-bezier(.34,1.56,.64,1) 0s infinite}.ual-maximize .pb{animation:uaLcornersBL 1.43s cubic-bezier(.34,1.56,.64,1) 0s infinite}.ual-maximize .pc{animation:uaLcornersCL 1.43s cubic-bezier(.34,1.56,.64,1) 0s infinite}.ual-maximize .pd{animation:uaLcornersDL 1.43s cubic-bezier(.34,1.56,.64,1) 0s infinite}@keyframes uaLcornersAL{0.0%,38.0%{transform:none}17.1%{transform:translate(-1.6px,-1.6px)}}@keyframes uaLcornersBL{0.0%,38.0%{transform:none}17.1%{transform:translate(1.6px,-1.6px)}}@keyframes uaLcornersCL{0.0%,38.0%{transform:none}17.1%{transform:translate(1.6px,1.6px)}}@keyframes uaLcornersDL{0.0%,38.0%{transform:none}17.1%{transform:translate(-1.6px,1.6px)}}@media (prefers-reduced-motion:reduce){.ual-maximize *{animation:none!important}}</style><g class="uam"><g class="pa"><path pathLength="1" d="M8 3H5a2 2 0 0 0-2 2v3"/></g><g class="pb"><path pathLength="1" d="M16 3h3a2 2 0 0 1 2 2v3"/></g><g class="pc"><path pathLength="1" d="M21 16v3a2 2 0 0 1-2 2h-3"/></g><g class="pd"><path pathLength="1" d="M3 16v3a2 2 0 0 0 2 2h3"/></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="M8 3H5a2 2 0 0 0-2 2v3"/></g><g class="pb"><path pathLength="1" d="M16 3h3a2 2 0 0 1 2 2v3"/></g><g class="pc"><path pathLength="1" d="M21 16v3a2 2 0 0 1-2 2h-3"/></g><g class="pd"><path pathLength="1" d="M3 16v3a2 2 0 0 0 2 2h3"/></g></svg>
Tags: interface, line, maximize, outline, stroke
More Interface motion icons
MenuMenu LeftSidebarPanel RightLayout GridLayout ListDashboardSettingsSlidersMoreMore VerticalMinimizeToggle OffToggle OnFilterSortEyeEye OffLoaderSquare CheckRadio ButtonColumnsPointerHand Pointer