From 89de4c7f0e9808e7b42d4ebb28d2e1a19853ee73 Mon Sep 17 00:00:00 2001 From: tim Date: Thu, 17 Jul 2025 13:21:50 +0800 Subject: [PATCH] feat: mobile layout v0 --- open-isle-cli/src/assets/global.css | 1 + .../src/components/HeaderComponent.vue | 18 +++++++ .../src/components/MenuComponent.vue | 52 +++++++++++-------- open-isle-cli/src/views/HomePageView.vue | 8 +++ 4 files changed, 57 insertions(+), 22 deletions(-) diff --git a/open-isle-cli/src/assets/global.css b/open-isle-cli/src/assets/global.css index 51442f406..e2e33c3a4 100644 --- a/open-isle-cli/src/assets/global.css +++ b/open-isle-cli/src/assets/global.css @@ -19,6 +19,7 @@ --text-color: black; --menu-width: 200px; --page-max-width: 1200px; + --page-max-width-mobile: 768px; --article-info-background-color: #f0f0f0; } diff --git a/open-isle-cli/src/components/HeaderComponent.vue b/open-isle-cli/src/components/HeaderComponent.vue index 362606eb0..601f4c9b7 100644 --- a/open-isle-cli/src/components/HeaderComponent.vue +++ b/open-isle-cli/src/components/HeaderComponent.vue @@ -227,4 +227,22 @@ export default { background-color: var(--menu-selected-background-color); } +@media (max-width: 1200px) { + .header-content { + padding-left: 15px; + padding-right: 15px; + width: calc(100% - 30px); + } +} + +@media (max-width: 768px) { + .header-content-item-secondary { + display: none; + } + + .logo-text { + display: none; + } +} + diff --git a/open-isle-cli/src/components/MenuComponent.vue b/open-isle-cli/src/components/MenuComponent.vue index 53bf75254..fbb465358 100644 --- a/open-isle-cli/src/components/MenuComponent.vue +++ b/open-isle-cli/src/components/MenuComponent.vue @@ -17,12 +17,7 @@ 关于 - + 站点统计 @@ -63,7 +58,8 @@
- {{ t.name }} x {{ t.count }} + {{ t.name }} x {{ t.count + }}
@@ -327,20 +323,32 @@ export default { padding: 10px; } -/* -.slide-enter-active, .slide-leave-active { - transition: - transform 0.3s ease, - opacity 0.3s ease, - width 0.3s ease; + +@media (max-width: 768px) { + .menu { + position: fixed; + width: 100%; + z-index: 1000; + } + + .slide-enter-active, + .slide-leave-active { + transition: + transform 0.3s ease, + opacity 0.3s ease, + width 0.3s ease; + } + + .slide-enter-from, + .slide-leave-to { + transform: translateX(-100%); + opacity: 0; + } + + .slide-enter-to, + .slide-leave-from { + transform: translateX(0); + opacity: 1; + } } -.slide-enter-from, .slide-leave-to { - transform: translateX(-100%); - opacity: 0; -} -.slide-enter-to, .slide-leave-from { - transform: translateX(0); - opacity: 1; -} - */ diff --git a/open-isle-cli/src/views/HomePageView.vue b/open-isle-cli/src/views/HomePageView.vue index b1db0ad02..929bb37ef 100644 --- a/open-isle-cli/src/views/HomePageView.vue +++ b/open-isle-cli/src/views/HomePageView.vue @@ -527,4 +527,12 @@ export default { font-size: 14px; opacity: 0.7; } + +@media (max-width: var(--page-max-width)) { + +} + +@media (max-width: var(--page-max-width-mobile)) { + +}