react实现上传进度动画效果
代码语言:html
所属分类:表单美化
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title> File Uploader React.js State Machine</title>
<style>
@import url("https://fonts.googleapis.com/css?family=Lato&display=swap");
*,
*::before,
*::after {
position: relative;
box-sizing: border-box;
}
:root {
--background: #A3B0C1;
--background-light: #E5E9EE;
--accent: #0570FF;
--easing: cubic-bezier(.5, 0, .5, 1);
}
html {
height: 100%;
display: flex;
background: var(--background);
font-family: Lato,sans-serif;
}
body {
margin: auto;
}
.file-uploader {
font-size: 4vmin;
display: grid;
grid-template-rows: 1fr 2em 1em;
justify-content: center;
align-items: center;
text-align: center;
padding: 1em;
min-width: 16em;
}
.file-uploader::after {
font-size: 10px;
position: absolute;
top: 1rem;
left: 1rem;
font-family: monospace;
content: attr(data-state);
opacity: 0.2;
}
.file-uploader:before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: var(--background-light);
border-radius: 1em;
transition: -webkit-transform 0.3s var(--easing);
transition: transform 0.3s var(--easing);
transition: transform 0.3s var(--easing), -webkit-transform 0.3s var(--easing);
box-shadow: 0 1em 2em rgba(0, 0, 0, 0.1);
}
/* ---------------------------------- */
.file-uploader [data-hidden] {
transition: all 0.4s var(--easing), visibility 0s linear 0.4s;
}
.file-uploader [data-hidden="true"] {
visibility: hidden;
opacity: 0;
}
.file-uploader [data-hidden="false"] {
visib.........完整代码请登录后点击上方下载按钮下载查看
网友评论0