div+css实现大气登录注册表单页面代码
代码语言:html
所属分类:表单美化
代码描述:div+css实现大气登录注册表单页面代码,输入框和按钮有交互动画。
代码标签: div css 大气 登录 注册 表单 页面 代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <style> @import url("https://fonts.googleapis.com/css?family=IBM+Plex+Sans:400,700"); html, body { font-family: "IBM Plex Sans", linkMacSystemFont, San Francisco, Roboto, Helvetica Neue, Segoe UI, sans-serif; -webkit-text-size-adjust: 100%; -moz-text-size-adjust: 100%; text-size-adjust: 100%; text-rendering: optimizeLegibility; box-sizing: border-box; margin: 0; padding: 0; overflow-x: hidden; } *, *:before, *:after { box-sizing: inherit; } .container { background: #101010; display: flex; align-items: center; justify-content: center; background: url(//repo.bfw.wiki/bfwrepo/icon/6056bf753c238.jpg); background-position: center; background-size: cover; padding: 60px 30px; min-height: 100vh; height: 100%; width: 100vw; overflow-y: auto; } .container:before { content: ""; position: fixed; top: 0; right: 0; bottom: 0; left: 0; background: rgba(16, 16, 16, 0.4); } @-webkit-keyframes form-open { 0% { -webkit-clip-path: polygon(0 20px, 20px 0, 20px 0, 20px 0, 0 20px, 0 20px); clip-path: polygon(0 20px, 20px 0, 20px 0, 20px 0, 0 20px, 0 20px); } 50% { -webkit-clip-path: polygon(0 20px, 20px 0, 20px 0, 20px calc(100% - 20px), 0 100%, 0 100%); clip-path: polygon(0 20px, 20px 0, 20px 0, 20px calc(100% - 20px), 0 100%, 0 100%); } 100% { -webkit-clip-path: polygon(0 20px, 20px 0, 100% 0, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0 100%); clip-path: polygon(0 20px, 20px 0, 100% 0, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0 100%); } } @keyframes form-open { 0% { -webkit-clip-path: polygon(0 20px, 20px 0, 20px 0, 20px 0, 0 20px, 0 20px); clip-path: polygon(0 20px, 20px 0, 20px 0, 20px 0, 0 20px, 0 20px); } 50% { -webkit-clip-path: polygon(0 20px, 20px 0, 20px 0, 20px calc(100% - 20px), 0 100%, 0 100%); clip-path: polygon(0 20px, 20px 0, 20px 0, 20px calc(100% - 20px), 0 100%, 0 100%); } 100% { -webkit-clip-path: polygon(0 20px, 20px 0, 100% 0, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0 100%); clip-path: polygon(0 20px, 20px 0, 100% 0, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0 100%); } } @-webkit-keyframes fade-in { 0% { opacity: 0; transform: translate3d(-16px, 0, 0); } 100% { opacity: 1; transform: translate3d(0, 0, 0); } } @keyframes fade-in { 0% { opacity: 0; transform: translate3d(-16px, 0, 0); } 100% { opacity: 1; transform: translate3d(0, 0, 0); } } .form { display: grid; grid-gap: 36px; align-items: center; justify-content: center; max-width: 400px; width: 100%; padding: 30px; overflow: hidden; -webkit-clip-path: polygon(0 20px, 20px 0, 20px 0, 20px 0, 0 20px, 0 20px); clip-path: polygon(0 20px, 20px 0, 20px 0, 20px 0, 0 20px, 0 20px); -webkit-animation: form-open 1s cubic-bezier(0.4, 0, 0.2, 1) forwards 0.5s; animation: form-open 1s cubic-bezier(0.4, 0, 0.2, 1) forwards 0.5s; } .form > * { position: relative; opacity: 0; -webkit-animation: fade-in 0.6s cubic-bezier(0.4, 0, 0.2, 1) forwards; animation: fade-in 0.6s cubic-bezier(0.4, 0, 0.2, 1) forwards; } .form > *:nth-child(2) { -webkit-animation-delay: 1.2s; animation-delay: 1.2s; } .form > *:nth-child(3) { -webkit-animation-delay: 1.3s; animation-delay: 1.3s; } .form > *:nth-child(4) { -webkit-animation-delay: 1.4s; animation-delay: 1.4s; } .form > *:nth-child(5) { -webkit-animation-delay: 1.5s; animation-delay: 1.5s; } .form > *:nth-child(6) { -webkit-animation-delay: 1.6s; animation-delay: 1.6s; } .form__image { position: absolute; -webkit-animation: none; animation: none; opacity: 1; filter: blur(16px); top: 0; left: 0; width: 100vw; height: 100vh; background: linear-gradient(rgba(16, 16, 16, 0.8), rgba(16, 16, 16, 0.8)), url("https://res.cloudinary.com/dokf7npvg/image/upload/v1540355245/0jbUKoX.jpg"); background-position: center; background-size: cover; } .form__logo { width: 80%; height: auto; justify-self: center; } .input { position: relative; display: flex; align-items: center; width: 100%; } .input__element { border: 0; margin: 0; width: 100%; box-shadow: inset 0 -1px 0 0 rgba(0, 0, 0, 0.5); background: rgba(0, 0, 0, 0.3); height: 46px; transition: box-shadow 0.4s ease; padding-left: 10px; color: rgba(255, 255, 255, 0.9); font-size: 16px; } .input__element:focus { box-shadow: inset 0 -2px 0 0 #fdee06; outline: none; } .input__label { font-size: 16px; position: absolute; left: 10px; color: rgba(255, 255, 255, 0.4); pointer-events: none; transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1); } .input__element:not(:-moz-placeholder-shown) + .input__label { top: -16px; left: 0; font-size: 14px; transform: translate3d(0, -5px, 0); } .input__element:not(:-ms-input-placeholder) + .input__label { top: -16px; left: 0; font-size: 14px; transform: translate3d(0, -5px, 0); } .input__element:focus + .input__label, .input__element:not(:placeholder-shown) + .input__label { top: -16px; left: 0; font-size: 14px; transform: translate3d(0, -5px, 0); } .button { background: #fdee06; border: 0; padding: 0; margin: 0; font-family: inherit; font-size: 16px; font-weight: 600; height: 50px; -webkit-clip-path: polygon(0 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%); clip-path: polygon(0 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%); text-transform: uppercase; text-align: left; padding: 0 20px; cursor: pointer; } .button:focus { outline: none; } .button:before { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: #22edfc; transform-origin: right; transform: scaleX(0); transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1); } .button:hover:before, .button:focus:before { transform-origin: left center; transform: scaleX(1); } .button:hover .button__icon, .button:focus .button__icon { transform: translate3d(10px, -50%, 0); } .button__label { position: relative; } .button__icon { position: absolute; top: 50%; transform: translate3d(0, -50%, 0); right: 25px; width: 24px; height: 24px; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); } .button__icon:before { content: ""; height: 1px; width: 100%; background: black; position: absolute; left: 0; top: 12px; } .button__icon:after { content: ""; transform: rotate(45deg); border-top: 1px solid black; border-right: 1px solid black; width: 8px; height: 8px; position: absolute; right: 0; top: 8px; } </style> </head> <body> <!-- partial:index.partial.html --> <main class="container"> .........完整代码请登录后点击上方下载按钮下载查看
网友评论0