first commit

This commit is contained in:
2026-09-21 19:21:35 +08:00
commit 6c944c4ffd
2733 changed files with 296956 additions and 0 deletions
+255
View File
@@ -0,0 +1,255 @@
@import './variables.scss';
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
@import './sidebar.scss';
@import './btn.scss';
body {
height: 100%;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
background: #f3f7ff;
}
label {
font-weight: 600;
}
html {
height: 100%;
box-sizing: border-box;
background: #f3f7ff;
}
#app {
height: 100%;
}
*,
*:before,
*:after {
box-sizing: inherit;
}
.no-padding {
padding: 0px !important;
}
.padding-content {
padding: 4px 0;
}
a:focus,
a:active {
outline: none;
}
a,
a:focus,
a:hover {
cursor: pointer;
color: inherit;
text-decoration: none;
}
div:focus {
outline: none;
}
.fr {
float: right;
}
.fl {
float: left;
}
.pr-5 {
padding-right: 5px;
}
.pl-5 {
padding-left: 5px;
}
.block {
display: block;
}
.pointer {
cursor: pointer;
}
.inlineBlock {
display: block;
}
.clearfix {
&:after {
visibility: hidden;
display: block;
font-size: 0;
content: " ";
clear: both;
height: 0;
}
}
aside {
background: #eef1f6;
padding: 8px 24px;
margin-bottom: 20px;
border-radius: 2px;
display: block;
line-height: 32px;
font-size: 16px;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
color: #2c3e50;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
a {
color: #337ab7;
cursor: pointer;
&:hover {
color: rgb(32, 160, 255);
}
}
}
// 整页卡片由 layout 的 .page-card 统一提供,页面容器只负责内部留白
// 注意:这两张卡片都不能加 backdrop-filter / filter / transform,
// 它们会创建层叠上下文,把 position:fixed 的 el-dialog 困在卡片里,
// 而 Element UI 的 .v-modal 遮罩挂在 body 上(z-index:2000) → 弹窗被遮罩盖住(整页变黑、点一下才恢复)
.app-container {
padding: 24px;
background: rgba(255, 255, 255, 0.88);
border: 1px solid rgba(255, 255, 255, 0.9);
border-radius: 16px;
box-shadow: 0 8px 24px rgba(72, 105, 166, 0.09), inset 0 1px 0 rgba(255, 255, 255, 0.95);
min-height: 500px;
}
// 顶栏 + 标签页 + 内容 在同一张卡片里(与设计图一致)
// 上边距尽量收,把高度让给下面的表格和分页
.page-card {
position: relative;
margin: 6px 10px 6px 0;
padding: 10px 24px 24px;
background: rgba(255, 255, 255, 0.88);
border: 1px solid rgba(255, 255, 255, 0.9);
border-radius: 16px;
box-shadow: 0 8px 24px rgba(72, 105, 166, 0.09), inset 0 1px 0 rgba(255, 255, 255, 0.95);
min-height: calc(100vh - 150px);
}
/* 只有「固定顶栏」时顶栏才脱离文档流,卡片才需要给它让位;
fixedHeader=false(本项目默认)时顶栏自己占位置,再加边距就会多出一条空白 */
.fixed-header + .page-card {
margin-top: 76px;
}
.hasTagsView .fixed-header + .page-card {
margin-top: 126px;
}
// 页面标题通用样式
.page-header {
display: flex;
align-items: baseline;
margin-bottom: 20px;
padding-bottom: 16px;
border-bottom: 1px solid rgba(115, 133, 166, 0.12);
}
.page-title {
margin: 0;
font-size: 24px;
font-weight: 700;
color: #263654;
letter-spacing: 0.3px;
}
.page-subtitle {
margin-left: 12px;
font-size: 16px;
font-weight: 500;
color: #7385a6;
&::before {
content: '·';
margin-right: 8px;
color: #b0bace;
}
}
.page-description {
margin-top: 8px;
font-size: 14px;
color: #7385a6;
line-height: 1.6;
}
.components-container {
margin: 30px 50px;
position: relative;
}
.pagination-container {
margin-top: 30px;
}
.text-center {
text-align: center
}
.sub-navbar {
height: 50px;
line-height: 50px;
position: relative;
width: 100%;
text-align: right;
padding-right: 20px;
transition: 600ms ease position;
background: linear-gradient(90deg, rgba(32, 182, 249, 1) 0%, rgba(32, 182, 249, 1) 0%, rgba(33, 120, 241, 1) 100%, rgba(33, 120, 241, 1) 100%);
.subtitle {
font-size: 20px;
color: #fff;
}
&.draft {
background: #d0d0d0;
}
&.deleted {
background: #d0d0d0;
}
}
.link-type,
.link-type:focus {
color: #337ab7;
cursor: pointer;
&:hover {
color: rgb(32, 160, 255);
}
}
.filter-container {
padding-bottom: 10px;
.filter-item {
display: inline-block;
vertical-align: middle;
margin-bottom: 10px;
}
}
// 皮肤层放最后,保证覆盖 Element UI 默认样式
@import './skin.scss';