chore(部署): 同步 www 官网深浅色主题构建产物

This commit is contained in:
TermiNexus committed 2026-10-18 22:39:42 +08:00
1 parent 4493d62f29
commit d8d1b48846
2 files changed
+393 -4

No files matched your search

+215 -2
View File
@@ -5,10 +5,223 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>银河锋锐(GVSDS)</title>
<link rel="icon" href="https://hb.cdn.gvsds.com/assets/icon/ICON.png">
<script type="module" crossorigin src="/GVSite/index-CEf7BUYR.js"></script>
<link rel="stylesheet" crossorigin href="/GVSite/index-DuyvKk1P.css">
<!-- 主题预置:在首屏绘制前按「本地偏好 → 系统设置」写入主题,避免深浅色闪烁 -->
<script>
(function () {
var mode = 'system'
try {
var stored = localStorage.getItem('gvsds-theme')
if (stored === 'light' || stored === 'dark' || stored === 'system') mode = stored
} catch (e) {}
var systemDark = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
var theme = mode === 'system' ? (systemDark ? 'dark' : 'light') : mode
var root = document.documentElement
root.dataset.themeMode = theme
root.classList.toggle('dark', theme === 'dark')
root.style.colorScheme = theme
})()
</script>
<!-- 首屏加载样式内联:在 JS 包下载/执行前即可渲染,避免白屏 -->
<style>
#site-loader {
position: fixed;
inset: 0;
z-index: 9999;
display: grid;
place-items: center;
overflow: hidden;
background: #ffffff;
opacity: 1;
visibility: visible;
transition: opacity 0.45s ease, visibility 0.45s ease;
}
#site-loader.is-done {
opacity: 0;
visibility: hidden;
pointer-events: none;
}
#site-loader .gvs-loader-glow {
position: absolute;
width: 520px;
height: 520px;
border-radius: 50%;
filter: blur(90px);
pointer-events: none;
}
#site-loader .gvs-loader-glow-left {
top: -180px;
left: -160px;
background: rgba(59, 130, 246, 0.16);
}
#site-loader .gvs-loader-glow-right {
right: -180px;
bottom: -200px;
background: rgba(30, 64, 175, 0.12);
}
#site-loader .gvs-loader-content {
position: relative;
display: flex;
flex-direction: column;
align-items: center;
padding: 0 24px;
}
#site-loader .gvs-loader-logo-wrap {
position: relative;
width: 96px;
height: 96px;
display: grid;
place-items: center;
margin-bottom: 28px;
}
#site-loader .gvs-loader-logo {
width: 56px;
height: 56px;
object-fit: contain;
filter: drop-shadow(0 6px 14px rgba(30, 64, 175, 0.18));
}
#site-loader .gvs-loader-ring {
position: absolute;
inset: 0;
border: 2px solid transparent;
border-top-color: #3b82f6;
border-right-color: rgba(59, 130, 246, 0.35);
border-radius: 50%;
animation: gvsLoaderSpin 0.9s linear infinite;
}
#site-loader .gvs-loader-ring-inner {
inset: 9px;
border-top-color: rgba(30, 64, 175, 0.5);
border-right-color: transparent;
border-bottom-color: #93c5fd;
animation: gvsLoaderSpin 1.5s linear infinite reverse;
}
#site-loader .gvs-loader-title {
font-family: 'Inter', system-ui, -apple-system, sans-serif;
font-size: 22px;
font-weight: 700;
letter-spacing: 0.24em;
text-indent: 0.24em;
color: #1e40af;
}
#site-loader .gvs-loader-subtitle {
margin-top: 10px;
font-family: 'Inter', system-ui, -apple-system, sans-serif;
font-size: 10px;
font-weight: 500;
letter-spacing: 0.28em;
text-indent: 0.28em;
color: #9ca3af;
text-align: center;
}
#site-loader .gvs-loader-track {
position: relative;
width: 180px;
height: 3px;
margin-top: 30px;
border-radius: 999px;
background: #e5edff;
overflow: hidden;
}
#site-loader .gvs-loader-bar {
position: absolute;
top: 0;
left: 0;
width: 40%;
height: 100%;
border-radius: inherit;
background: linear-gradient(90deg, #1e40af, #3b82f6, #60a5fa);
box-shadow: 0 0 12px rgba(59, 130, 246, 0.55);
animation: gvsLoaderSlide 1.25s cubic-bezier(0.65, 0, 0.35, 1) infinite;
}
#site-loader .gvs-loader-status {
margin-top: 14px;
font-family: 'Inter', system-ui, -apple-system, sans-serif;
font-size: 11px;
letter-spacing: 0.16em;
color: #94a3b8;
animation: gvsLoaderPulse 1.6s ease-in-out infinite;
}
@keyframes gvsLoaderSpin {
to { transform: rotate(360deg); }
}
@keyframes gvsLoaderSlide {
0% { left: -40%; }
100% { left: 100%; }
}
@keyframes gvsLoaderPulse {
0%, 100% { opacity: 0.55; }
50% { opacity: 1; }
}
/* 深色主题下的首屏 loading */
html[data-theme-mode="dark"] #site-loader {
background: #0b1120;
}
html[data-theme-mode="dark"] #site-loader .gvs-loader-title {
color: #dbeafe;
}
html[data-theme-mode="dark"] #site-loader .gvs-loader-subtitle {
color: #64748b;
}
html[data-theme-mode="dark"] #site-loader .gvs-loader-track {
background: #1e293b;
}
html[data-theme-mode="dark"] #site-loader .gvs-loader-status {
color: #64748b;
}
@media (prefers-reduced-motion: reduce) {
#site-loader .gvs-loader-ring,
#site-loader .gvs-loader-status {
animation: none;
}
#site-loader .gvs-loader-bar {
left: 0;
width: 70%;
animation: none;
}
}
</style>
<script type="module" crossorigin src="/GVSite/index-DukTqxut.js"></script>
<link rel="stylesheet" crossorigin href="/GVSite/index-YNi1kyHa.css">
</head>
<body>
<div id="site-loader" role="status" aria-live="polite" aria-label="页面加载中">
<div class="gvs-loader-glow gvs-loader-glow-left"></div>
<div class="gvs-loader-glow gvs-loader-glow-right"></div>
<div class="gvs-loader-content">
<div class="gvs-loader-logo-wrap">
<span class="gvs-loader-ring"></span>
<span class="gvs-loader-ring gvs-loader-ring-inner"></span>
<img class="gvs-loader-logo" src="https://hb.cdn.gvsds.com/assets/hlogos/gnobg.png" alt="GVSDS">
</div>
<div class="gvs-loader-title">银河锋锐</div>
<div class="gvs-loader-subtitle">G V S D S · SOFTWARE DEVELOPMENT STUDIO</div>
<div class="gvs-loader-track"><span class="gvs-loader-bar"></span></div>
<div class="gvs-loader-status">正在加载 · LOADING</div>
</div>
</div>
<div id="app"></div>
</body>
</html>
+178 -2
View File
@@ -5,10 +5,186 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>银河锋锐(GVSDS)</title>
<link rel="icon" href="https://hb.cdn.gvsds.com/assets/icon/ICON.png">
<script type="module" crossorigin src="/GVSite/index-BRfB7xqD.js"></script>
<link rel="stylesheet" crossorigin href="/GVSite/index-DuyvKk1P.css">
<!-- 首屏加载样式内联:在 JS 包下载/执行前即可渲染,避免白屏 -->
<style>
#site-loader {
position: fixed;
inset: 0;
z-index: 9999;
display: grid;
place-items: center;
overflow: hidden;
background: #ffffff;
opacity: 1;
visibility: visible;
transition: opacity 0.45s ease, visibility 0.45s ease;
}
#site-loader.is-done {
opacity: 0;
visibility: hidden;
pointer-events: none;
}
#site-loader .gvs-loader-glow {
position: absolute;
width: 520px;
height: 520px;
border-radius: 50%;
filter: blur(90px);
pointer-events: none;
}
#site-loader .gvs-loader-glow-left {
top: -180px;
left: -160px;
background: rgba(59, 130, 246, 0.16);
}
#site-loader .gvs-loader-glow-right {
right: -180px;
bottom: -200px;
background: rgba(30, 64, 175, 0.12);
}
#site-loader .gvs-loader-content {
position: relative;
display: flex;
flex-direction: column;
align-items: center;
padding: 0 24px;
}
#site-loader .gvs-loader-logo-wrap {
position: relative;
width: 96px;
height: 96px;
display: grid;
place-items: center;
margin-bottom: 28px;
}
#site-loader .gvs-loader-logo {
width: 56px;
height: 56px;
object-fit: contain;
filter: drop-shadow(0 6px 14px rgba(30, 64, 175, 0.18));
}
#site-loader .gvs-loader-ring {
position: absolute;
inset: 0;
border: 2px solid transparent;
border-top-color: #3b82f6;
border-right-color: rgba(59, 130, 246, 0.35);
border-radius: 50%;
animation: gvsLoaderSpin 0.9s linear infinite;
}
#site-loader .gvs-loader-ring-inner {
inset: 9px;
border-top-color: rgba(30, 64, 175, 0.5);
border-right-color: transparent;
border-bottom-color: #93c5fd;
animation: gvsLoaderSpin 1.5s linear infinite reverse;
}
#site-loader .gvs-loader-title {
font-family: 'Inter', system-ui, -apple-system, sans-serif;
font-size: 22px;
font-weight: 700;
letter-spacing: 0.24em;
text-indent: 0.24em;
color: #1e40af;
}
#site-loader .gvs-loader-subtitle {
margin-top: 10px;
font-family: 'Inter', system-ui, -apple-system, sans-serif;
font-size: 10px;
font-weight: 500;
letter-spacing: 0.28em;
text-indent: 0.28em;
color: #9ca3af;
text-align: center;
}
#site-loader .gvs-loader-track {
position: relative;
width: 180px;
height: 3px;
margin-top: 30px;
border-radius: 999px;
background: #e5edff;
overflow: hidden;
}
#site-loader .gvs-loader-bar {
position: absolute;
top: 0;
left: 0;
width: 40%;
height: 100%;
border-radius: inherit;
background: linear-gradient(90deg, #1e40af, #3b82f6, #60a5fa);
box-shadow: 0 0 12px rgba(59, 130, 246, 0.55);
animation: gvsLoaderSlide 1.25s cubic-bezier(0.65, 0, 0.35, 1) infinite;
}
#site-loader .gvs-loader-status {
margin-top: 14px;
font-family: 'Inter', system-ui, -apple-system, sans-serif;
font-size: 11px;
letter-spacing: 0.16em;
color: #94a3b8;
animation: gvsLoaderPulse 1.6s ease-in-out infinite;
}
@keyframes gvsLoaderSpin {
to { transform: rotate(360deg); }
}
@keyframes gvsLoaderSlide {
0% { left: -40%; }
100% { left: 100%; }
}
@keyframes gvsLoaderPulse {
0%, 100% { opacity: 0.55; }
50% { opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
#site-loader .gvs-loader-ring,
#site-loader .gvs-loader-status {
animation: none;
}
#site-loader .gvs-loader-bar {
left: 0;
width: 70%;
animation: none;
}
}
</style>
<script type="module" crossorigin src="/GVSite/index-CJHoCWqn.js"></script>
<link rel="stylesheet" crossorigin href="/GVSite/index-B7Q4hW4H.css">
</head>
<body>
<div id="site-loader" role="status" aria-live="polite" aria-label="页面加载中">
<div class="gvs-loader-glow gvs-loader-glow-left"></div>
<div class="gvs-loader-glow gvs-loader-glow-right"></div>
<div class="gvs-loader-content">
<div class="gvs-loader-logo-wrap">
<span class="gvs-loader-ring"></span>
<span class="gvs-loader-ring gvs-loader-ring-inner"></span>
<img class="gvs-loader-logo" src="https://hb.cdn.gvsds.com/assets/hlogos/gnobg.png" alt="GVSDS">
</div>
<div class="gvs-loader-title">银河锋锐</div>
<div class="gvs-loader-subtitle">G V S D S · SOFTWARE DEVELOPMENT STUDIO</div>
<div class="gvs-loader-track"><span class="gvs-loader-bar"></span></div>
<div class="gvs-loader-status">正在加载 · LOADING</div>
</div>
</div>
<div id="app"></div>
</body>
</html>