vue3实现暗色周期性待办事项列表代码
代码语言:html
所属分类:布局界面
代码描述:vue3实现暗色周期性待办事项列表代码,支持一次性任务及周期性任务,支持本地持久存储。
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<meta
name="viewport"
content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"
/>
<title>今日待办 - Vue CDN 版</title>
<style>
:root{
--bg:#0b1020;
--bg-2:#0f172a;
--panel:#111827;
--panel-2:#0b1220;
--muted:#94a3b8;
--text:#e5e7eb;
--primary:#6366f1;
--primary-2:#8b5cf6;
--danger:#ef4444;
--success:#10b981;
--warning:#f59e0b;
--border:#1f2937;
--chip:#334155;
--overlay: rgba(2,6,23,.6);
}
*{ box-sizing: border-box; }
html, body { height: 100%; }
body{
margin:0;
font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
background: radial-gradient(1200px 600px at 10% -10%, rgba(99,102,241,.18), transparent 60%), linear-gradient(180deg, var(--bg), var(--bg-2));
color:var(--text);
}
.container{
max-width: 960px;
margin: 18px auto 100px;
padding: 0 16px;
}
header{
display:flex;
align-items:center;
gap:12px;
margin-bottom: 10px;
}
header h1{
font-size: 22px;
margin:0;
letter-spacing:.3px;
display:flex;
align-items:center;
gap:10px;
}
.today{
margin-left:auto;
color:var(--muted);
font-size: 14px;
}
.actions{
display:flex;
gap:8px;
margin-left: 8px;
}
.panel{
background: rgba(17, 24, 39, .6);
backdrop-filter: blur(10px);
border:1px solid var(--border);
border-radius: 14px;
padding: 14px;
box-shadow: 0 10px 30px rgba(0,0,0,.25);
}
.toolbar{
display:flex;
align-items:center;
justify-content: space-between;
margin-bottom: 10px;
gap:10px;
}
.segmented{
background: var(--panel-2);
border:1px solid var(--border);
padding:4px;
border-radius: 999px;
display:inline-flex;
gap:4px;
}
.segmented button{
border:none;
background: transparent;
color: var(--muted);
padding: 6px 12px;
border-radius: 999px;
font-weight:600;
cursor:pointer;
}
.segmented button.active{
background: linear-gradient(135deg, var(--primary), var(--primary-2));
color:white;
box-shadow: 0 6px 16px rgba(99,102,241,.35);
}
.btn{
border: none;
border-radius: 10px;
padding: 10px 14px;
font-weight: 700;
cursor: pointer;
transition: .15s transform, .15s opacity, .15s box-shadow, .15s background;
display:inline-flex;
align-items:center;
gap:8px;
white-space: nowrap;
color:var(--text);
background: transparent;
border: 1px solid var(--border);
}
.btn:hover{ opacity:.95; }
.btn:active{ transform: translateY(1px); }
.btn-primary{
background: linear-gradient(135deg, var(--primary), var(--primary-2));
color:white;
border: none;
box-shadow: 0 6px 16px rgba(99,102,241,.35);
}
.btn-danger{
background: rgba(239, 68, 68, .14);
color:#fecaca;
border: 1px solid rgba(239, 68, 68, .35);
}
.btn-success{
background: rgba(16,185,129,.14);
color:#bbf7d0;
border: 1px solid rgba(16,185,129,.35);
}
.btn-ghost{ background: transparent; }
.btn-sm{ padding: 6px 10px; border-radius: 8px; font-size: 13px; }
.list{ display:flex; flex-direction: column; gap: 8px; }
.item{
display:grid;
grid-template-columns: auto 1fr auto auto;
align-items:center;
gap: 12px;
background: #0b1220;
border:1px solid var(--border);
padding: 12px;
border-radius: 12px;
}
@media (max-width:720px){
.item{ grid-template-columns: auto 1fr auto; }
.item .meta-tag{ display:none; }
}
.t.........完整代码请登录后点击上方下载按钮下载查看
















网友评论0