svg加css压缩文件动画效果
代码语言:html
所属分类:表单美化
代码描述:svg加css压缩文件动画效果
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <link rel='stylesheet' href='https://fonts.googleapis.com/css?family=Inter:400,500,600,700&display=swap'> <style> .button { --button-width: 152px; --background: #404660; --background-transparent: rgba(64, 70, 96, 0); --background-hover: #3A4059; --background-back: #1E2235; --shadow: rgba(0, 9, 61, 0.125); --text: #F6F8FF; --paper: #F6F8FF; --paper-lines: #D1D6EE; --paper-shadow: rgba(0, 9, 61, 0.15); --zipper: #BBC1E1; --zipper-end: #D1D6EE; --zipper-line: #8A91B4; --zipper-lines: #646B8C; --tick: #F6F8FF; display: -webkit-box; display: flex; outline: none; cursor: pointer; text-align: center; border: 0; padding: 0; line-height: 24px; font-family: inherit; font-weight: 600; font-size: 14px; border-radius: 3px; color: var(--text); background: var(--background-back); -webkit-transition: -webkit-transform .3s; transition: -webkit-transform .3s; transition: transform .3s; transition: transform .3s, -webkit-transform .3s; -webkit-transform: scale(var(--scale, 1)) translateZ(0); transform: scale(var(--scale, 1)) translateZ(0); -webkit-appearance: none; -webkit-tap-highlight-color: transparent; } .button:not(.compress):active { --scale: .95; } .button:not(.compress):hover { --b: var(--background-hover); } .button .paper { width: 26px; height: 32px; pointer-events: none; position: absolute; top: -2px; left: var(--left, 50%); margin: 0 0 0 -13px; background: var(--paper); border-radius: 3px; box-shadow: 0 1px 1px var(--paper-shadow); opacity: 0; -webkit-transform: translate(var(--x, 0), var(--y, -68px)); transform: translate(var(--x, 0), var(--y, -68px)); } .button .paper:before { content: ''; position: absolute; left: 4px; top: 6px; width: 18px; height: 2px; border-radius: 1px; background: var(--paper-lines); box-shadow: 0 6px 0 var(--paper-lines), 0 12px 0 var(--paper-lines), 0 18px 0 var(--paper-lines); } .button .paper.left { --left: 25%; --x: -12px; --y: -52px; } .button .paper.right { --left: 75%; --x: 12px; --y: -52px; } .button .inner { position: relative; z-index: 1; padding: 10px 0; width: var(--button-width); border-radius: 3px; color: var(--text); -webkit-transform-origin: 50% 100%; transform-origin: 50% 100%; background: var(--b, var(--background)); box-shadow: 0 1px 2px var(--shadow), 0 4px 7px var(--shadow); -webkit-transition: background .4s; transition: background .4s; } .button .inner span { display: block; opacity: var(--span-o, 1); -webkit-transform: translateY(var(--span-y, 0)) translateZ(0); transform: translateY(var(--span-y, 0)) translateZ(0); -webkit-transition: opacity 0.3s linear var(--span-de, 0.5s), -webkit-transform 0.3s ease var(--span-de, 0.5s); transition: opacity 0.3s linear var(--span-de, 0.5s), -webkit-transform 0.3s ease var(--span-de, 0.5s); transition: transform 0.3s ease var(--span-de, 0.5s), opacity 0.3s linear var(--span-de, 0.5s); transition: transform 0.3s ease var(--span-de, 0.5s), opacity 0.3s linear var(--span-de, 0.5s), -webkit-transform 0.3s ease var(--span-de, 0.5s); } .button .inner svg { width: 20px; height: 16px; display: block; position: absolute; top: 14px; left: calc(var(--button-width) / 2); margin-left: -10px; fill: none; stroke-width: 2px; stroke-linecap: round; stroke-linejoin: round; stroke: var(--tick); opacity: var(--tick-o, 0); -webkit-transform: scale(var(--tick-s, 0.5)); transform: scale(var(--tick-s, 0.5)); -webkit-transition: opacity 0.3s linear var(--tick-de, 0s), -webkit-transform 0.4s ease var(--tick-de, 0s); transition: opacity 0.3s linear var(--tick-de, 0s), -webkit-transform 0.4s ease var(--tick-de, 0s); transition: transform 0.4s ease var(--tick-de, 0s), opacity 0.3s linear var(--tick-de, 0s); transition: transform 0.4s ease var(--tick-de, 0s), opacity 0.3s linear var(--tick-de, 0s), -webkit-transform 0.4s ease var(--tick-de, 0s); } .button .inner .zipper { width: calc(var(--button-width) + 12px); position: absolute; top: 4px; left: 0; height: 12px; overflow: hidden; opacity: 0; } .button .inner .zipper:before, .button .inner .zipper:after { content: ''; position: absolute; top: var(--top, 1px); left: var(--left, 1px); height: 3px; width: 2px; border-radius: 1px; box-shadow: 5px 0 0 var(--zipper-lines), 10px 0 0 var(--zipper-lines), 15px 0 0 var(--zipper-lines), 20px 0 0 var(--zipper-lines), 25px 0 0 var(--zipper-lines), 30px 0 0 var(--zipper-lines), 35px 0 0 var(--zipper-lines), 40px 0 0 var(--zipper-lines), 45px 0 0 var(--zipper-lines), 50px 0 0 var(--zipper-lines), 55px 0 0 var(--zipper-lines), 60px 0 0 var(--zipper-lines), 65px 0 0 var(--zipper-lines), 70px 0 0 var(--zipper-lines), 75px 0 0 var(--zipper-lines), 80px 0 0 var(--zipper-lines), 85px 0 0 var(--zipper-lines), 90px 0 0 var(--zipper-lines), 95px 0 0 var(--zipper-lines), 100px 0 0 var(--zipper-lines), 105px 0 0 var(--zipper-lines), 110px 0 0 var(--zipper-lines), 115px 0 0 var(--zipper-lines), 120px 0 0 var(--zipper-lines), 125px 0 0 var(--zipper-lines), 130px 0 0 var(--zipper-lines), 135px 0 0 var(--zipper-lines), 140px 0 0 var(--zipper-lines), 145px 0 0 var(--zipper-lines); background: var(--zipper-lines); } .button .inner .zipper:after { --top: 8px; --left: 3px; } .button .inner .zipper .gradient { position: absolute; top: 0; bottom: 0; width: 200%; right: 12px; z-index: 1; background: -webkit-gradient(linear, left top, right top, from(var(--background-transparent)), color-stop(33.33%, var(--background-transparent)), color-stop(66.66%, var(--background)), to(var(--background))); background: linear-gradient(to right, var(--background-transparent) 0%, var(--background-transparent) 33.33%, var(--background) 66.66%, var(--background) 100%); background-size: 300% 100%; background-position-x: var(--gradient, 100%); -webkit-transition: background-position var(--gradient-d, 0s) ease var(--gradient-de, 0s); transition: background-position var(--gradient-d, 0s) ease var(--gradient-de, 0s); } .button .inner .zipper .line { width: calc(var(--button-width) + 12); height: 2px; margin: 5px 0; position: relative; left: -12px; z-index: 2; background: var(--zipper-line); -webkit-transform: translateX(calc(calc(var(--button-width) * -1) + 8px)); transform: translateX(calc(calc(var(--button-w.........完整代码请登录后点击上方下载按钮下载查看
网友评论0