系统框架整体做科技感颜色适配

main 6
hshansha 4 days ago
parent cf5b9ce756
commit bfb6359825

@ -50,10 +50,13 @@ public class CaptchaConfig
Properties properties = new Properties(); Properties properties = new Properties();
// 是否有边框 默认为true 我们可以自己设置yesno // 是否有边框 默认为true 我们可以自己设置yesno
properties.setProperty(KAPTCHA_BORDER, "yes"); properties.setProperty(KAPTCHA_BORDER, "yes");
// 边框颜色 默认为Color.BLACK // 边框颜色 修改为科技蓝
properties.setProperty(KAPTCHA_BORDER_COLOR, "105,179,90"); properties.setProperty(KAPTCHA_BORDER_COLOR, "64,158,255");
// 验证码文本字符颜色 默认为Color.BLACK // 验证码文本字符颜色 修改为白色适配深色背景
properties.setProperty(KAPTCHA_TEXTPRODUCER_FONT_COLOR, "blue"); properties.setProperty(KAPTCHA_TEXTPRODUCER_FONT_COLOR, "255,255,255");
//背景颜色渐变 修改为统一的深蓝科技感背景
properties.setProperty(KAPTCHA_BACKGROUND_CLR_FROM, "28,132,198");
properties.setProperty(KAPTCHA_BACKGROUND_CLR_TO, "28,132,198");
// 验证码图片宽度 默认为200 // 验证码图片宽度 默认为200
properties.setProperty(KAPTCHA_IMAGE_WIDTH, "160"); properties.setProperty(KAPTCHA_IMAGE_WIDTH, "160");
// 验证码图片高度 默认为50 // 验证码图片高度 默认为50
@ -70,8 +73,8 @@ public class CaptchaConfig
properties.setProperty(KAPTCHA_TEXTPRODUCER_CHAR_LENGTH, "6"); properties.setProperty(KAPTCHA_TEXTPRODUCER_CHAR_LENGTH, "6");
// 验证码文本字体样式 默认为new Font("Arial", 1, fontSize), new Font("Courier", 1, fontSize) // 验证码文本字体样式 默认为new Font("Arial", 1, fontSize), new Font("Courier", 1, fontSize)
properties.setProperty(KAPTCHA_TEXTPRODUCER_FONT_NAMES, "Arial,Courier"); properties.setProperty(KAPTCHA_TEXTPRODUCER_FONT_NAMES, "Arial,Courier");
// 验证码噪点颜色 默认为Color.BLACK // 验证码噪点颜色 修改为科技蓝
properties.setProperty(KAPTCHA_NOISE_COLOR, "white"); properties.setProperty(KAPTCHA_NOISE_COLOR, "64,158,255");
// 干扰实现类 // 干扰实现类
properties.setProperty(KAPTCHA_NOISE_IMPL, "com.google.code.kaptcha.impl.NoNoise"); properties.setProperty(KAPTCHA_NOISE_IMPL, "com.google.code.kaptcha.impl.NoNoise");
// 图片样式 水纹com.google.code.kaptcha.impl.WaterRipple 鱼眼com.google.code.kaptcha.impl.FishEyeGimpy 阴影com.google.code.kaptcha.impl.ShadowGimpy // 图片样式 水纹com.google.code.kaptcha.impl.WaterRipple 鱼眼com.google.code.kaptcha.impl.FishEyeGimpy 阴影com.google.code.kaptcha.impl.ShadowGimpy
@ -80,4 +83,5 @@ public class CaptchaConfig
defaultKaptcha.setConfig(config); defaultKaptcha.setConfig(config);
return defaultKaptcha; return defaultKaptcha;
} }
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 509 KiB

After

Width:  |  Height:  |  Size: 1.1 MiB

@ -4,24 +4,32 @@
**/ **/
/* theme color */ /* theme color */
$--color-primary: #1890ff; $--color-primary: #00d4ff;
$--color-success: #13ce66; $--color-success: #00ff9d;
$--color-warning: #ffba00; $--color-warning: #ffaa00;
$--color-danger: #ff4949; $--color-danger: #ff4d4d;
// $--color-info: #1E1E1E; $--color-info: #6b7280;
$--button-font-weight: 400; $--button-font-weight: 400;
// $--color-text-regular: #1f2d3d; $--color-text-primary: #ffffff;
$--color-text-regular: #e2e8f0;
$--color-text-secondary: #cbd5e1;
$--color-text-placeholder: #94a3b8;
$--border-color-light: #dfe4ed; $--border-color-base: #334155;
$--border-color-lighter: #e6ebf5; $--border-color-light: #475569;
$--border-color-lighter: #64748b;
$--table-border: 1px solid #dfe6ec; $--background-color-base: #1a1a2e;
$--color-white: #1e1e2d;
$--table-border: 1px solid #334155;
/* icon font path, required */ /* icon font path, required */
$--font-path: '~element-ui/lib/theme-chalk/fonts'; $--font-path: '~element-ui/lib/theme-chalk/fonts';
@import "~element-ui/packages/theme-chalk/src/index"; @import "~element-ui/packages/theme-chalk/src/index";
// the :export directive is the magic sauce for webpack // the :export directive is the magic sauce for webpack

File diff suppressed because it is too large Load Diff

@ -125,8 +125,8 @@
/* tree border */ /* tree border */
.tree-border { .tree-border {
margin-top: 5px; margin-top: 5px;
border: 1px solid #e5e6e7; border: 1px solid #2a3a3a;
background: #FFFFFF none; background: var(--tech-card-bg) none;
border-radius: 4px; border-radius: 4px;
} }
@ -283,5 +283,11 @@
/* 分割面板样式 */ /* 分割面板样式 */
.splitpanes.default-theme .splitpanes__pane { .splitpanes.default-theme .splitpanes__pane {
background-color: #fff!important; background-color: rgba(13, 23, 47, 0.85)!important;
} }
//
.splitpanes.default-theme .splitpanes__splitter {
background-color: #10a3c1 !important;
border-left: 1px solid #10a3c1 !important;
}

@ -80,7 +80,7 @@
.submenu-title-noDropdown, .submenu-title-noDropdown,
.el-submenu__title { .el-submenu__title {
&:hover { &:hover {
background-color: rgba(0, 0, 0, 0.06) !important; background-color: rgba(0, 212, 255, 0.1) !important;
} }
} }
@ -93,16 +93,24 @@
min-width: $base-sidebar-width !important; min-width: $base-sidebar-width !important;
&:hover { &:hover {
background-color: rgba(0, 0, 0, 0.06) !important; background-color: rgba(0, 212, 255, 0.1) !important;
} }
} }
& .theme-dark .nest-menu .el-submenu>.el-submenu__title, & .theme-dark .nest-menu .el-submenu>.el-submenu__title,
& .theme-dark .el-submenu .el-menu-item { & .theme-dark .el-submenu .el-menu-item {
background-color: $base-sub-menu-background !important; background-color: $base-sub-menu-background !important;
color: hsla(0,0%,100%,.65);
&:hover { &:hover {
background-color: $base-sub-menu-hover !important; background-color: $base-sub-menu-hover !important;
color: #00d4ff !important;
}
&.is-active {
color: #00d4ff !important;
background-color: rgba(0, 212, 255, 0.15) !important;
border-left: 3px solid #00d4ff;
} }
} }
} }
@ -159,6 +167,10 @@
.el-menu--collapse .el-menu .el-submenu { .el-menu--collapse .el-menu .el-submenu {
min-width: $base-sidebar-width !important; min-width: $base-sidebar-width !important;
.el-submenu__title.is-active {
background-color: rgba(0, 212, 255, 0.15) !important;
}
} }
// mobile responsive // mobile responsive
@ -202,7 +214,7 @@
.el-menu-item { .el-menu-item {
&:hover { &:hover {
// you can use $subMenuHover // you can use $subMenuHover
background-color: rgba(0, 0, 0, 0.06) !important; background-color: rgba(0, 212, 255, 0.1) !important;
} }
} }
@ -210,9 +222,10 @@
>.el-menu--popup { >.el-menu--popup {
max-height: 100vh; max-height: 100vh;
overflow-y: auto; overflow-y: auto;
background-color: #16213e !important;
&::-webkit-scrollbar-track-piece { &::-webkit-scrollbar-track-piece {
background: #d3dce6; background: #000c17;
} }
&::-webkit-scrollbar { &::-webkit-scrollbar {
@ -220,7 +233,7 @@
} }
&::-webkit-scrollbar-thumb { &::-webkit-scrollbar-thumb {
background: #99a9bf; background: #00d4ff;
border-radius: 20px; border-radius: 20px;
} }
} }

@ -8,24 +8,10 @@ $tiffany: #4AB7BD;
$yellow:#FEC171; $yellow:#FEC171;
$panGreen: #30B08F; $panGreen: #30B08F;
// //
$base-menu-color:#bfcbd9;
$base-menu-color-active:#f4f4f5;
$base-menu-background:#304156;
$base-logo-title-color: #ffffff;
$base-menu-light-color:rgba(0,0,0,.70);
$base-menu-light-background:#ffffff;
$base-logo-light-title-color: #001529;
$base-sub-menu-background:#1f2d3d;
$base-sub-menu-hover:#001528;
//
/**
$base-menu-color:hsla(0,0%,100%,.65); $base-menu-color:hsla(0,0%,100%,.65);
$base-menu-color-active:#fff; $base-menu-color-active:#00d4ff;
$base-menu-background:#001529; $base-menu-background:#16213e;
$base-logo-title-color: #ffffff; $base-logo-title-color: #ffffff;
$base-menu-light-color:rgba(0,0,0,.70); $base-menu-light-color:rgba(0,0,0,.70);
@ -34,7 +20,6 @@ $base-logo-light-title-color: #001529;
$base-sub-menu-background:#000c17; $base-sub-menu-background:#000c17;
$base-sub-menu-hover:#001528; $base-sub-menu-hover:#001528;
*/
$base-sidebar-width: 200px; $base-sidebar-width: 200px;

@ -256,7 +256,7 @@ export default {
::v-deep .el-upload-list--picture-card.is-disabled + .el-upload--picture-card { ::v-deep .el-upload-list--picture-card.is-disabled + .el-upload--picture-card {
display: none !important; display: none !important;
} }
// //
::v-deep .el-list-enter-active, ::v-deep .el-list-enter-active,

@ -105,7 +105,7 @@ export default {
<style scoped> <style scoped>
.pagination-container { .pagination-container {
background: #fff; background: #1e1e2d;
} }
.pagination-container.hidden { .pagination-container.hidden {
display: none; display: none;

@ -114,8 +114,9 @@ export default {
height: 50px; height: 50px;
overflow: hidden; overflow: hidden;
position: relative; position: relative;
background: #fff; background: rgba(13, 23, 47, 0.85); //
box-shadow: 0 1px 4px rgba(0,21,41,.08); box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);
border-bottom: 1px solid rgba(64, 158, 255, 0.2); //
.hamburger-container { .hamburger-container {
line-height: 46px; line-height: 46px;
@ -123,10 +124,11 @@ export default {
float: left; float: left;
cursor: pointer; cursor: pointer;
transition: background .3s; transition: background .3s;
-webkit-tap-highlight-color:transparent; -webkit-tap-highlight-color: transparent;
color: #e4e7ed; //
&:hover { &:hover {
background: rgba(0, 0, 0, .025) background: rgba(64, 158, 255, 0.1); //
} }
} }
@ -148,6 +150,7 @@ export default {
float: right; float: right;
height: 100%; height: 100%;
line-height: 50px; line-height: 50px;
background: rgba(13, 23, 47, 0.85); /* 确保右侧菜单背景色 */
&:focus { &:focus {
outline: none; outline: none;
@ -158,7 +161,7 @@ export default {
padding: 0 8px; padding: 0 8px;
height: 100%; height: 100%;
font-size: 18px; font-size: 18px;
color: #5a5e66; color: #e4e7ed; //
vertical-align: text-bottom; vertical-align: text-bottom;
&.hover-effect { &.hover-effect {
@ -166,7 +169,7 @@ export default {
transition: background .3s; transition: background .3s;
&:hover { &:hover {
background: rgba(0, 0, 0, .025) background: rgba(64, 158, 255, 0.1); //
} }
} }
} }
@ -185,6 +188,7 @@ export default {
width: 30px; width: 30px;
height: 30px; height: 30px;
border-radius: 50%; border-radius: 50%;
border: 1px solid rgba(64, 158, 255, 0.2); //
} }
.user-nickname{ .user-nickname{
@ -193,6 +197,7 @@ export default {
left: 2px; left: 2px;
font-size: 14px; font-size: 14px;
font-weight: bold; font-weight: bold;
color: #e4e7ed; //
} }
.el-icon-caret-bottom { .el-icon-caret-bottom {
@ -201,6 +206,7 @@ export default {
right: -20px; right: -20px;
top: 25px; top: 25px;
font-size: 12px; font-size: 12px;
color: #e4e7ed; //
} }
} }
} }

@ -271,12 +271,12 @@ export default {
} }
} }
} }
.drawer-container { .drawer-container {
padding: 20px; padding: 20px;
font-size: 14px; font-size: 14px;
line-height: 1.5; line-height: 1.5;
word-wrap: break-word; word-wrap: break-word;
background-color: #898b8d;
.drawer-title { .drawer-title {
margin-bottom: 12px; margin-bottom: 12px;

@ -240,10 +240,9 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
.tags-view-container { .tags-view-container {
height: 34px; height: 34px;
width: 100%; border-bottom: 1px solid rgba(64, 158, 255, 0.2);
background: #fff; background: rgba(13, 23, 47, 0.85);
border-bottom: 1px solid #d8dce5; box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.12);
box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .12), 0 0 3px 0 rgba(0, 0, 0, .04);
.tags-view-wrapper { .tags-view-wrapper {
.tags-view-item { .tags-view-item {
display: inline-block; display: inline-block;
@ -251,13 +250,14 @@ export default {
cursor: pointer; cursor: pointer;
height: 26px; height: 26px;
line-height: 26px; line-height: 26px;
border: 1px solid #d8dce5; border: 1px solid rgba(64, 158, 255, 0.3);
color: #495060; color: #e4e7ed;
background: #fff; background: rgba(255, 255, 255, 0.08);
padding: 0 8px; padding: 0 12px;
font-size: 12px; font-size: 12px;
margin-left: 5px; margin-left: 5px;
margin-top: 4px; margin-top: 4px;
border-radius: 4px;
&:first-of-type { &:first-of-type {
margin-left: 15px; margin-left: 15px;
} }
@ -265,9 +265,9 @@ export default {
margin-right: 15px; margin-right: 15px;
} }
&.active { &.active {
background-color: #42b983; background: linear-gradient(135deg, #1a73e8, #0d47a1);
color: #fff; color: #ffffff;
border-color: #42b983; border-color: #1a73e8;
&::before { &::before {
content: ''; content: '';
background: #fff; background: #fff;
@ -279,6 +279,10 @@ export default {
margin-right: 2px; margin-right: 2px;
} }
} }
&:hover {
background: rgba(64, 158, 255, 0.2);
color: #ffffff;
}
} }
} }
@ -303,7 +307,7 @@ export default {
padding: 7px 16px; padding: 7px 16px;
cursor: pointer; cursor: pointer;
&:hover { &:hover {
background: #eee; background: rgba(0, 212, 255, 0.1);
} }
} }
} }
@ -327,6 +331,7 @@ export default {
display: inline-block; display: inline-block;
vertical-align: -3px; vertical-align: -3px;
} }
&:hover { &:hover {
background-color: #b4bccc; background-color: #b4bccc;
color: #fff; color: #fff;

@ -167,44 +167,109 @@ export default {
background-image: url("../assets/images/login-background.jpg"); background-image: url("../assets/images/login-background.jpg");
background-size: cover; background-size: cover;
} }
.title {
margin: 0px auto 30px auto;
text-align: center;
color: #707070;
}
.login-form { .login-form {
border-radius: 6px; border-radius: 12px;
background: #ffffff; background: rgba(13, 23, 47, 0.85); /* 深蓝科技感背景 */
width: 400px; width: 420px;
padding: 25px 25px 5px 25px; padding: 30px 30px 20px 30px;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
backdrop-filter: blur(10px);
border: 1px solid rgba(64, 158, 255, 0.3);
z-index: 1; z-index: 1;
.el-input {
height: 38px;
input {
height: 38px;
}
}
.input-icon {
height: 39px;
width: 14px;
margin-left: 2px;
}
} }
.login-header {
text-align: center;
margin-bottom: 25px;
}
.login-title {
color: #409eff; /* 科技蓝 */
font-size: 24px;
font-weight: 600;
margin-bottom: 8px;
}
.login-subtitle {
color: #c0c4cc; /* 浅灰色 */
font-size: 14px;
margin: 0;
}
.login-tip { .login-tip {
font-size: 13px; font-size: 13px;
text-align: center; text-align: center;
color: #bfbfbf; color: #bfbfbf;
} }
.login-code { .login-code {
width: 33%; width: 37%;
height: 38px; height: 46px;
float: right; float: right;
img { img {
margin-left: 1px;
cursor: pointer; cursor: pointer;
vertical-align: middle; vertical-align: middle;
border-radius: 8px;
height: 46px;
}
}
/* 输入框样式调整 */
.el-input {
height: 46px;
::v-deep .el-input__inner {
height: 46px;
background-color: rgba(255, 255, 255, 0.08);
border: 1px solid rgba(64, 158, 255, 0.2);
color: #fff;
border-radius: 8px;
&::placeholder {
color: #909399;
}
}
::v-deep .el-input__prefix {
left: 12px;
}
.input-icon {
height: 46px;
width: 14px;
margin-left: 0;
}
}
/* 复选框颜色调整 */
::v-deep .el-checkbox {
color: #e4e7ed;
.el-checkbox__label {
color: #e4e7ed;
}
}
/* 按钮样式 */
::v-deep .el-button--primary {
height: 46px;
border-radius: 8px;
background: linear-gradient(135deg, #1a73e8, #0d47a1);
border: none;
font-size: 16px;
font-weight: 500;
letter-spacing: 1px;
&:hover {
background: linear-gradient(135deg, #0d47a1, #1a73e8);
transform: translateY(-2px);
box-shadow: 0 6px 16px rgba(26, 115, 232, 0.3);
} }
} }
.el-login-footer { .el-login-footer {
height: 40px; height: 40px;
line-height: 40px; line-height: 40px;
@ -217,7 +282,9 @@ export default {
font-size: 12px; font-size: 12px;
letter-spacing: 1px; letter-spacing: 1px;
} }
.login-code-img { .login-code-img {
height: 38px; height: 46px;
border-radius: 8px;
} }
</style> </style>

@ -555,4 +555,4 @@ export default {
} }
} }
} }
</script> </script>

@ -171,7 +171,7 @@ export default {
right: 0; right: 0;
top: 0; top: 0;
bottom: 0; bottom: 0;
color: #eee; color: #94a3b8;
background: rgba(0, 0, 0, 0.5); background: rgba(0, 0, 0, 0.5);
font-size: 24px; font-size: 24px;
font-style: normal; font-style: normal;

Loading…
Cancel
Save