项目任务管理进度条页面效果
代码语言:html
所属分类:布局界面
代码描述:项目任务管理进度条页面效果
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <link type="text/css" rel="stylesheet" href="http://repo.bfw.wiki/bfwrepo/css/normalize.min.css"> <style> @import url("https://fonts.googleapis.com/css2?family=Jost:wght@300;400;500;600;700&display=swap"); :root { --body-bg-color: #e4e6f5; --border-color: #e5e4e9; --theme-bg-color: #fff; --body-color: #1b1f31; --main-color: #7a7e9d; --main-light-color: #a1a4b9; --title-color: #979dc3; --body-font: "Jost", sans-serif; --button-bg-color: #eaeefc; --button-color: #4d76fd; --unselected-mail: #f1f2f7; --calendar-border-color: #cbcfe0; --main-container-bg: #f0f0f7; } * { outline: none; box-sizing: border-box; } html { box-sizing: border-box; -webkit-font-smoothing: antialiased; } body { font-family: var(--body-font); background-color: var(--body-bg-color); color: var(--body-color); font-size: 15px; } img { max-width: 100%; } .container { background-color: var(--theme-bg-color); display: flex; max-width: 1600px; height: 100vh; overflow: hidden; margin: 0 auto; } .user-profile-area { width: 360px; border-right: 1px solid var(--border-color); display: flex; flex-direction: column; flex-shrink: 0; overflow: auto; } .task-manager { font-size: 15px; color: var(--title-color); font-weight: 700; text-align: center; height: 70px; letter-spacing: 0.7px; line-height: 70px; position: sticky; top: 0; z-index: 3; text-transform: uppercase; background-color: var(--theme-bg-color); border-bottom: 1px solid var(--border-color); } .user-photo { width: 70px; height: 70px; border-radius: 50%; object-fit: cover; } .user-name { font-weight: 600; margin: 15px 0 8px; } .user-mail { color: var(--main-light-color); font-size: 12px; font-weight: 600; } .user-profile { display: flex; flex-direction: column; text-align: center; align-items: center; } .side-wrapper { padding: 25px 40px; border-bottom: 1px solid var(--border-color); } .side-wrapper:last-child { border-bottom: none; } .user-notification { display: flex; justify-content: center; align-items: center; margin-top: 25px; } .user-notification svg { width: 36px; padding: 10px; flex-shrink: 0; border-radius: 50%; overflow: visible; background-color: var(--button-bg-color); color: var(--button-color); } .notify { position: relative; } .notify:not(:last-child) { margin-right: 25px; } .notify.alert { position: relative; } .notify.alert:before { content: "2"; font-size: 9px; font-weight: 700; position: absolute; background-color: #ff537b; width: 14px; height: 14px; border-radius: 50%; top: -3px; display: flex; justify-content: center; align-items: center; right: 0px; color: #fff; } .notify.alert:last-child:before { content: "5"; } .progress { margin-top: 5px; border-radius: 4px; background-color: #e7e7ef; height: 8px; overflow: hidden; } .progress-bar { background-color: var(--button-color); border-radius: 4px; width: 35%; height: 100%; animation: progressAnimation 6s; transition: 0.3s linear both; transition-property: width, background-color; } .progress-status { margin-top: 30px; text-align: right; color: var(--main-color); font-size: 10px; font-weight: 600; } @keyframes progressAnimation { 0% { width: 5%; background-color: #a2b6f5; } 100% { width: 35%; } } .task-status { margin-top: 20px; display: flex; align-items: center; justify-content: space-between; } .task-stat { text-align: center; } .task-number { font-size: 17px; font-weight: 700; margin-bottom: 10px; } .task-condition { font-size: 12px; color: var(--main-color); font-weight: 700; } .task-tasks { margin-top: 4px; font-size: 10px; font-weight: 600; color: var(--main-light-color); } .project-title { text-transform: uppercase; font-weight: 700; margin-bottom: 18px; } .project-department { position: relative; vertical-align: middle; padding: 0 30px; color: var(--main-color); font-size: 13px; font-weight: 600; margin-top: 14px; } .project-department:before { position: absolute; content: ""; width: 8px; height: 8px; border-radius: 50%; top: 10; left: 0; } .project-department:nth-child(1):before { border: 3px solid #b36dfb; } .project-department:nth-child(2):before { border: 3px solid #625be8; } .project-department:nth-child(3):before { border: 3px solid #fec267; } .project-department:nth-child(4):before { border: 3px solid #fc6679; } .members { width: 36px; height: 36px; object-fit: cover; border-radius: 50%; } .team-member { display: flex; justify-content: space-between; } .main-area { display: flex; flex-direction: column; flex-grow: 1; overflow: hidden; } .header { height: 70px; width: 100%; border-bottom: 1px solid var(--border-color); } .search-bar { height: 70px; position: relative; } .search-bar input { height: 100%; width: 100%; display: block; background-color: transparent; border: none; color: var(--body-color); padding: 0 35px; background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23a1a4b9' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' class='feather feather-search'%3e%3ccircle cx='11' cy='11' r='8'/%3e%3cpath d='M21 21l-4.35-4.35'/%3e%3c/svg%3e"); background-repeat: no-repeat; background-size: 18px; background-position: 0 50%; font-family: var(--body-font); font-weight: 600; font-size: 14px; } .search-bar input::placeholder { color: var(--main-light-color); } .header { display: flex; align-items: center; justify-content: space-between; padding: 0 20px 0 30px; } .inbox-calendar { margin-right: 200px; } .color-menu { flex-shrink: 0; } .msg { padding: 30px; background-color: var(--unselected-mail); border-bottom: 1px solid var(--border-color); display: flex; align-items: center; transition: 0.4s ease; } .msg-title { font-weight: 600; font-size: 14px; } .msg-date { font-size: 11px; color: var(--main-light-color); font-weight: 600; margin-top: 5px; } .selected-bg { background-color: var(--theme-bg-color); } .msg-department { display: flex; justify-content: space-between; text-transform: uppercase; position: sticky; top: 0; left: 0; z-index: 3; font-weight: 700; letter-spacing: 0.8px; background-color: var(--theme-bg-color); border-left: 4px solid #b36dfb; } .msg-department svg { width: 12px; } .inbox { overflow: auto; } .inbox-container { border-right: 1px solid var(--border-color); width: 420px; display: flex; flex-direction: column; overflow: auto; flex-shrink: 0; } .main-container { display: flex; flex-grow: 1; overflow: hidden; background-color: var(--main-container-bg); } .mail-members { width: 40px; height: 40px; margin-left: auto; } .mail-choice { display: none; } .mail-choice + label:before { content: ""; display: flex; width: 35px; height: 35px; border: 2px solid var(--main-light-color); margin-right: 15px; border-radius: 50%; transition: 0.3s; background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='20' height='28' viewBox='0 0 24 24' fill='none' stroke='%23a1a4b9' stroke-width='4' stroke-linecap='round' stroke-linejoin='round' class='feather feather-check'%3e%3cpath d='M20 6L9 17l-5-5'/%3e%3c/svg%3e"); background-repeat: no-repeat; background-position: center; cursor: pointer; } .mail-choice:checked + label:before { border-color: green; background-color: var(--button-color); border-color: var(--button-color); background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='20' height='28' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round' class='feather feather-check'%3e%3cpath d='M20 6L9 17l-5-5'/%3e%3c/svg%3e"); } .mail-choice:checked .msg { background-color: red; } .add-task { position: sticky; flex-shrink: 0; bottom: 0; left: 0; height: 80px; margin-top: auto; border-top: 1px solid var(--border-color); display: flex; align-items: center; background-color: var(--theme-bg-color); animation: slideUp .45s .4s both; } .add-button { position: sticky; bottom: 10px; background-color: var(--button-color); border: 0; margin: auto; padding: 10px 30px; color: #fff; font-size: 12px; font-weight: 600; border-radius: 20px; flex-shrink: 0; z-index: 1; cursor: pointer; } .mail-detail { display: flex; animation: slideX .6s both; flex-direction: column; overflow: auto; background-color: var(--theme-bg-color); } .mail-detail-profile { display: flex; align-items: center; } .mail-detail-header { border-bottom: 1px solid var(--border-color); padding: 16px 30px; display: flex; align-items: center; justify-content: space-between; } .mail-detail-name { font-size: 14px; font-weight: 600; margin-left: 10px; white-space: nowrap; } @keyframes slideX { 0% { opacity: 0; transform: translateX(200px); } } .inbox-detail { width: 44px; height: 44px; } .mail-icons { flex-shrink: 0; } .mail-icons svg { width: 42px; height: 42px; padding: 13px; flex-shrink: 0; margin-left: 10px; border-radius: 50%; overflow: visible; background-color: var(--button-bg-color); color: var(--button-color); } .mail-icons svg:first-child { margin-left: 0; } .mail-contents { padding: 30px; } .mail-contents-subject { display: flex; align-items: center; } .mail-contents-title { font-weight: 700; font-size: 17px; margin-left: 5px; } .mail { padding-left: 55px; font-size: 14px; color: var(--main-light-color); } .mail-time { font-weight: 600; display: flex; align-items: center; font-size: 13px; } .mail-time svg { width: 12px; margin-right: 8px; } .mail-inside { padding: 20px 0 30px; border-bottom: 1px solid var(--border-color); color: var(--main-color); line-height: 1.8em; } .mail-checklist { padding: 20px 0; display: flex; align-items: center; border-bottom: 1px solid var(--border-color); } .mail-checklist .mail-choice + label:before { width: 20px; height: 20px; flex-shrink: 0; margin-right: 12px; background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='14' height='18' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round' class='feather feather-check'%3e%3cpath d='M20 6L9 17l-5-5'/%3e%3c/svg%3e"); } .mail-checklist label { display: flex; align-items: center; color: var(--button-color); font-weight: 600; font-size: 13px; } .mail-checklist-date { margin-left: 16px; font-size: 13px; } .assignee { font-size: 13px; margin-bottom: 10px; } .assignee :last-child { margin-bottom: 0; } .mail-assign { padding: 20px 0; border-bottom: 1px solid var(--border-color); } .mail-doc { display: flex; align-items: center; padding: 30px 0; flex-shrink: 0; justify-content: space-between; } .mail-doc-name { color: var(--body-color); font-weight: 600; font-size: 15px; margin-bottom: 3px; } .mail-doc-date { font-size: 13px; } .mail-doc-wrapper { display: flex; align-items: center; } .mail-doc-wrapper svg { margin-right: 15px; background-color: var(--button-bg-color); color: var(--button-color); width: 50px; padding: 9px; border-radius: 4px; } .mail-doc-icons svg:not(:last-child) { margin-right: 8px; } .mail-textarea { display: flex; background-color: var(--unselected-mail); padding: 30px 0; border-top: 1px solid var(--border-color); position: sticky; bottom: 0; justify-content: space-between; margin-top: auto; left: 0; overflow: hidden; height: 80px; flex-shrink: 0; } .mail-textarea input { border: none; background-color: transparent; font-size: 15px; width: 100%; padding: 0 30px; color: var(--main-color); } .mail-textarea input::placeholder { color: var(--main-light-color); } .textarea-icons { display: flex; align-items: center; } .attach { padding: 30px; border-right: 1px solid var(--border-color); border-left: 1px solid var(--border-color); } .attach svg { color: var(--main-color); } .send { padding: 30px; background-color: var(--button-color); } .send svg { color: var(--theme-bg-color); } .inbox-calendar-checkbox { position: relative; width: 100%; height: 100%; padding: 0; margin: 0; opacity: 0; z-index: 3; cursor: pointer; } .toggle-page { overflow: hidden; z-index: 2; } .inbox-calendar { position: relative; width: 220px; border-radius: 20px; height: 36px; display: flex; align-items: center; overflow: hidden; flex-shrink: 0; } .layer { position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; background-color: var(--unselected-mail); transition: 0.3s ease all; z-index: 1; } .toggle-page:before, .toggle-page:after, .toggle-page span { position: absolute; top: 4px; width: 100px; height: 10px; font-size: 12px; font-weight: bold; text-align: center; line-height: 1; padding: 9px 4px; border-radius: 20px; transition: 0.3s ease all; } .toggle-page:before { content: ""; left: 4px; background-color: var(--button-color); } .toggle-page span { color: var(--theme-bg-color); z-index: 1; left: 6px; } .toggle-page:after { content: "Calendar"; right: 4px; color: var(--main-light-color); } .inbox-calendar-checkbox:checked + .toggle-page span { color: var(--main-light-color); } .inbox-calendar-checkbox:checked + .toggle-page:before { left: 109px; } .inbox-calendar-checkbox:checked + .toggle-page:after { color: var(--theme-bg-color); } .calendar { display: grid; width: 100%; grid-template-columns: repeat(7, minmax(195px, 1fr)); grid-template-rows: 57px; grid-auto-rows: 120px; overflow: auto; } .calendar-wrapper { width: 100%; margin: auto; margin-top: 0; overflow: auto; border-radius: 10px; background: #fff; max-width: 975px; border: 1px solid var(--calendar-border-color); } .days { font-size: 12px; font-weight: 700; color: var(--main-color); text-align: center; line-height: 60px; } .days:not(:nth-of-type(7n + 7)) { border-right: 1px solid var(--calendar-border-color); } .day { padding: 15px; overflow: hidden; font-weight: 700; font-size: 13px; border-right: 1px solid var(--calendar-border-color); border-top: 1px solid var(--calendar-border-color); } .day:nth-of-type(7n + 7) { border-right: 0; } .day.not-work { color: var(--main-color); } .day.project-market { background-color: #f5eafd; border-left: 3px solid #b86df7; transition: 0.2s ease; cursor: pointer; display: flex; flex-direction: column; } .day.project-market:hover { transform: scale(1.3); border: 0; border-radius: 4px; background-image: linear-gradient(to top, #6625dc, #7739e3, #874cea, #965df1, #a46ef8); color: #fff; font-size: 15px; } .day.project-market:hover .project-detail { color: #fff; font-size: 9px; } .day.project-market:hover .project-detail:before { top: 2px; } .day.project-market:hover .hover-title { display: block; font-size: 8px; padding-left: 18px; margin-top: 5px 0 3px; } .day.project-market:hover .popup-check { display: block; width: 12px; margin-left: auto; margin-top: 6px; } .day.project-design { bac.........完整代码请登录后点击上方下载按钮下载查看
网友评论0