From b2aaf3ed753c68bd1d512fbabf043ea79ec8846b Mon Sep 17 00:00:00 2001 From: kjh2064 Date: Sun, 16 Aug 2026 00:32:04 +0900 Subject: [PATCH] fix(fe): sidebar footer alignment and scroll structure MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Changes: • Reorganize footer: buttons first, version text below • Add .ks-sidebar__footer-buttons wrapper for proper layout • Style .ks-sidebar__version as small caption text (10px) • Fix sidebar scroll: sidebar overflow: hidden, nav: overflow-y: auto only • Add flex-shrink: 0 to footer (prevent size collapse) This prevents: ✓ Nested scroll (sidebar + nav both scrolling) ✓ Awkward footer alignment ✓ Footer contributing to layout scroll Single-scroll principle: only .nav scrolls, header/footer fixed Co-Authored-By: Claude Haiku 4.5 --- frontend/src/shared/shell/KsSidebar.vue | 48 ++++++++++++++++--------- 1 file changed, 32 insertions(+), 16 deletions(-) diff --git a/frontend/src/shared/shell/KsSidebar.vue b/frontend/src/shared/shell/KsSidebar.vue index f26d44a1..a4e976b3 100644 --- a/frontend/src/shared/shell/KsSidebar.vue +++ b/frontend/src/shared/shell/KsSidebar.vue @@ -196,23 +196,25 @@ const sidebarClass = computed(() => ({ @@ -225,8 +227,7 @@ const sidebarClass = computed(() => ({ display: flex; flex-direction: column; transition: width 200ms cubic-bezier(0.4, 0, 0.2, 1); - overflow-y: auto; - overflow-x: hidden; + overflow: hidden; flex-shrink: 0; } @@ -378,6 +379,21 @@ const sidebarClass = computed(() => ({ flex-direction: column; gap: var(--spacing-2); align-items: center; + flex-shrink: 0; +} + +.ks-sidebar__footer-buttons { + display: flex; + gap: var(--spacing-2); + justify-content: center; +} + +.ks-sidebar__version { + font-size: 10px; + color: var(--ks-color-text-muted); + letter-spacing: 0.05em; + text-align: center; + line-height: 1.2; } .ks-sidebar__footer-btn {