diff --git a/.vitepress/config.mts b/.vitepress/config.mts index 66fe7ba..3f8b6bc 100644 --- a/.vitepress/config.mts +++ b/.vitepress/config.mts @@ -41,6 +41,14 @@ export default defineConfig({ head: [ ['link', { rel: 'icon', href: '/img/logo.ico' }], ['meta', { name: 'theme-color', content: '#0066CC' }], + [ + 'script', + { + defer: '', + src: 'https://um.fis.ink/script.js', + 'data-website-id': '4e7333ce-6a82-408f-9ed5-bd0d0784cb5b', + }, + ], // SEO 基础标签 ['meta', { name: 'author', content: 'PCL Community' }], ['meta', { name: 'keywords', content: DEFAULT_KEYWORDS }], diff --git a/.vitepress/theme/components/HistoryReleases.vue b/.vitepress/theme/components/HistoryReleases.vue index c5f8e9a..750f991 100644 --- a/.vitepress/theme/components/HistoryReleases.vue +++ b/.vitepress/theme/components/HistoryReleases.vue @@ -270,6 +270,8 @@ const releaseHtml = computed(() => { max-width: 960px; margin: 0 auto; padding: 2rem 1.5rem 3rem; + width: 100%; + box-sizing: border-box; } .history-header { @@ -353,12 +355,14 @@ const releaseHtml = computed(() => { position: relative; flex: 1; min-width: 220px; + min-width: 0; } .history-select { width: 100%; flex: 1; min-width: 220px; + min-width: 0; padding: 0.55rem 0.9rem; border-radius: 10px; border: 1px solid rgba(2, 102, 193, 0.4); @@ -390,6 +394,10 @@ const releaseHtml = computed(() => { display: inline-flex; align-items: center; gap: 0.5rem; + min-width: 0; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; } .history-select-arrow { @@ -428,6 +436,7 @@ const releaseHtml = computed(() => { gap: 0.75rem; text-align: left; cursor: pointer; + min-width: 0; } .history-select-option:hover { @@ -436,6 +445,8 @@ const releaseHtml = computed(() => { .history-select-title { font-weight: 600; + min-width: 0; + overflow-wrap: anywhere; } .history-changelog { @@ -464,6 +475,8 @@ const releaseHtml = computed(() => { margin: 0 0 0.5rem; line-height: 1.55; color: inherit; + overflow-wrap: anywhere; + word-break: break-word; } .history-changelog-body :deep(p) { @@ -508,6 +521,8 @@ const releaseHtml = computed(() => { padding: 0.6rem 0.8rem; border-radius: 10px; background: rgba(255, 255, 255, 0.08); + overflow-x: auto; + max-width: 100%; } .history-changelog-body :deep(hr) { @@ -619,5 +634,14 @@ const releaseHtml = computed(() => { .history-header h1 { font-size: 1.6rem; } + + .history-selector { + flex-direction: column; + align-items: stretch; + } + + .history-label { + width: 100%; + } } diff --git a/.vitepress/theme/components/SiteFooter.vue b/.vitepress/theme/components/SiteFooter.vue index 4b2d501..c1ec208 100644 --- a/.vitepress/theme/components/SiteFooter.vue +++ b/.vitepress/theme/components/SiteFooter.vue @@ -154,6 +154,10 @@ onMounted(() => (currentYear.value = new Date().getFullYear().toString())); max-width: 65%; } +.list-container section { + text-align: center; +} + .list-title { margin-bottom: 0.5em; font-weight: 600; @@ -162,6 +166,9 @@ onMounted(() => (currentYear.value = new Date().getFullYear().toString())); } .list-links { + list-style: none; + padding: 0; + margin: 0; font-weight: 500; font-size: 0.75em; line-height: 2.4; diff --git a/.vitepress/theme/style.css b/.vitepress/theme/style.css index 811ba2e..917e23b 100644 --- a/.vitepress/theme/style.css +++ b/.vitepress/theme/style.css @@ -148,6 +148,60 @@ a:focus-visible { border-bottom: none; } +.VPNavBarMenu { + justify-content: center; +} + +.VPNavBarMenu .VPNavBarMenuLink, +.VPNavBarMenu .VPNavBarMenuGroup { + justify-content: center; +} + +.VPNavScreenMenuLink, +.VPNavScreenMenuGroup { + text-align: center; + justify-content: center; +} + +.VPNavBarExtra .VPNavBarMenuGroup, +.VPNavBarExtra .VPNavBarMenuGroup .button, +.VPNavBarExtra .VPNavBarMenuGroup .text { + text-align: center; + justify-content: center; +} + +.VPNavScreenMenuGroup .button, +.VPNavScreenMenuGroup .button .text { + text-align: center; + justify-content: center; + width: 100%; +} + +.VPNavScreenTranslations { + text-align: center; +} + +.VPNavScreenTranslations .title { + justify-content: center; + width: 100%; +} + +.VPNavScreenTranslations .list { + padding: 4px 0 0 0; + text-align: center; +} + +.VPNavScreenTranslations .item { + display: flex; + justify-content: center; +} + +.VPNavScreenTranslations .link { + display: inline-flex; + justify-content: center; + width: 100%; +} + .divider { display: none; }