Merge pull request 'tmp-upload' (#4) from tmp-upload into main
Reviewed-on: #4
1
.gitignore
vendored
@@ -22,3 +22,4 @@ dist-ssr
|
||||
*.njsproj
|
||||
*.sln
|
||||
*.sw?
|
||||
vs100.zip
|
||||
1107
data/config.json
@@ -7,7 +7,8 @@
|
||||
"dev": "vite",
|
||||
"build": "vite build",
|
||||
"preview": "vite preview",
|
||||
"start": "npm run build && node server.js"
|
||||
"server": "npm run build && node server.js",
|
||||
"start": "node server.js"
|
||||
},
|
||||
"dependencies": {
|
||||
"cors": "^2.8.5",
|
||||
|
||||
|
Before Width: | Height: | Size: 508 KiB After Width: | Height: | Size: 1.3 MiB |
|
Before Width: | Height: | Size: 1.3 MiB After Width: | Height: | Size: 508 KiB |
|
Before Width: | Height: | Size: 625 KiB After Width: | Height: | Size: 430 KiB |
|
Before Width: | Height: | Size: 2.1 MiB After Width: | Height: | Size: 596 KiB |
BIN
public/completed_performance.png
Normal file
|
After Width: | Height: | Size: 253 KiB |
BIN
public/crown.png
Normal file
|
After Width: | Height: | Size: 247 KiB |
BIN
public/individual-propagation.png
Normal file
|
After Width: | Height: | Size: 472 KiB |
BIN
public/team-propagation.png
Normal file
|
After Width: | Height: | Size: 508 KiB |
91
src/App.vue
@@ -19,7 +19,16 @@
|
||||
<img src="/banner2.png" alt="右侧标题语" class="banner-image" />
|
||||
</div>
|
||||
|
||||
<router-view />
|
||||
<div class="main-content">
|
||||
<router-view />
|
||||
|
||||
<!-- 页脚 -->
|
||||
<footer class="game-footer">
|
||||
<div class="footer-content">
|
||||
<p>© 2025-2026 聚上集团 | 云上企 版权所有.</p>
|
||||
</div>
|
||||
</footer>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -69,6 +78,60 @@
|
||||
/* 不设置固定宽度,让logo保持原始尺寸 */
|
||||
}
|
||||
|
||||
/* 主容器 */
|
||||
.main-content {
|
||||
min-height: 100vh;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
/* 背景覆盖层,确保文本可读性 */
|
||||
.main-content::before {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
background: transparent;
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
.game-footer {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
background-color: var(--dark-bg);
|
||||
color: var(--gold-secondary);
|
||||
padding: 20px 0;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.footer-content {
|
||||
font-size: 14px;
|
||||
/* 雕刻效果:使用多层text-shadow创建凸起感 */
|
||||
text-shadow:
|
||||
-1px -1px 0 rgba(255, 255, 255, 0.3), /* 高光 - 左上 */
|
||||
1px 1px 0 rgba(0, 0, 0, 0.5), /* 阴影 - 右下 */
|
||||
0 0 5px rgba(17, 17, 17, 0.5); /* 光晕 */
|
||||
/* 背景和内边距 */
|
||||
padding: 8px 16px;
|
||||
border-radius: 4px;
|
||||
|
||||
/* 添加轻微的3D效果 */
|
||||
transform: perspective(1000px) rotateX(0deg);
|
||||
transition: all 0.3s ease;
|
||||
}
|
||||
|
||||
/* 鼠标悬停时增强3D效果 */
|
||||
.footer-content:hover {
|
||||
transform: perspective(1000px) rotateX(2deg) translateY(-2px);
|
||||
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
|
||||
text-shadow:
|
||||
-1px -1px 0 rgba(255, 255, 255, 0.4),
|
||||
1px 1px 0 rgba(0, 0, 0, 0.6),
|
||||
0 0 8px rgba(15, 15, 15, 0.7);
|
||||
}
|
||||
|
||||
/* 针对1920x1080分辨率的banner精确定位 */
|
||||
@media (width: 1920px) and (height: 1080px) {
|
||||
.banner-left {
|
||||
@@ -86,6 +149,17 @@
|
||||
|
||||
/* 移动设备响应式设计 */
|
||||
@media (max-width: 768px) {
|
||||
/* 1. 背景图片全屏显示并固定 */
|
||||
.main-content {
|
||||
padding: 0 !important;
|
||||
margin-top: 50px;
|
||||
background-image: url('/battle-background.jpg');
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
background-attachment: fixed;
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
/* 移动设备上隐藏左右标题语,避免遮挡主要内容 */
|
||||
.banner-left,
|
||||
.banner-right {
|
||||
@@ -119,5 +193,20 @@
|
||||
.app-logo {
|
||||
width: 200px; /* 移动设备上设置固定宽度为200px */
|
||||
}
|
||||
|
||||
/* 移动设备上的页脚雕刻效果适配 */
|
||||
.footer-content {
|
||||
font-size: 12px;
|
||||
padding: 6px 12px;
|
||||
text-shadow:
|
||||
-1px -1px 0 rgba(255, 255, 255, 0.2),
|
||||
1px 1px 0 rgba(0, 0, 0, 0.4),
|
||||
0 0 3px rgba(255, 215, 0, 0.4);
|
||||
}
|
||||
|
||||
.footer-content:hover {
|
||||
transform: none; /* 移动设备上禁用悬停效果 */
|
||||
box-shadow: none;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -100,7 +100,6 @@ export const validateUser = (username, password) => {
|
||||
export const initializeData = async () => {
|
||||
try {
|
||||
await refreshData();
|
||||
console.log('数据初始化成功');
|
||||
} catch (error) {
|
||||
console.error('数据初始化失败:', error);
|
||||
}
|
||||
|
||||
@@ -5,6 +5,13 @@
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
/* 图片预加载 - 提升移动端加载性能 */
|
||||
body::before {
|
||||
content: "";
|
||||
display: none;
|
||||
background-image: url(/battle-background.jpg);
|
||||
}
|
||||
|
||||
/* 根元素样式 */
|
||||
:root {
|
||||
/* 王者荣耀风格字体 - 使用系统默认字体但设置更多样化 */
|
||||
@@ -135,6 +142,7 @@ h2.game-subtitle {
|
||||
font-size: 1.8rem;
|
||||
font-weight: 700;
|
||||
letter-spacing: 0.5px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
/* 游戏化链接样式 */
|
||||
@@ -528,14 +536,15 @@ table {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
/* 移动端body不设置任何背景相关属性 */
|
||||
/* 移动端背景图片优化:保留图片但优化加载性能 */
|
||||
html, body {
|
||||
background: none !important;
|
||||
background-image: none !important;
|
||||
background-color: var(--dark-color) !important;
|
||||
background-size: auto !important;
|
||||
background-position: static !important;
|
||||
background-repeat: repeat !important;
|
||||
background-color: var(--dark-color);
|
||||
background-image: url(/battle-background.jpg);
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
background-repeat: no-repeat;
|
||||
background-attachment: scroll;
|
||||
/* 预加载优化 */
|
||||
background-attachment: scroll !important;
|
||||
}
|
||||
|
||||
@@ -548,6 +557,16 @@ table {
|
||||
:root {
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
/* 小屏幕手机背景图片优化 */
|
||||
html, body {
|
||||
background-color: var(--dark-color);
|
||||
background-image: url(/battle-background.jpg);
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
background-repeat: no-repeat;
|
||||
background-attachment: scroll;
|
||||
}
|
||||
|
||||
.content-container {
|
||||
padding: 0;
|
||||
@@ -697,4 +716,4 @@ table {
|
||||
.text-gold:hover {
|
||||
color: var(--gold-secondary);
|
||||
text-shadow: 0 0 10px rgba(255, 193, 7, 0.7);
|
||||
}
|
||||
}
|
||||
BIN
uploads/1763860106271.jpg
Normal file
|
After Width: | Height: | Size: 115 KiB |
BIN
uploads/1763956859312.jpg
Normal file
|
After Width: | Height: | Size: 135 KiB |
BIN
uploads/1763972044872.jpg
Normal file
|
After Width: | Height: | Size: 208 KiB |
BIN
uploads/1763979489455.png
Normal file
|
After Width: | Height: | Size: 128 KiB |