Просмотр исходного кода

fix: limit the configured banner height so it cannot cover the page

The AppShell banner area is sticky, so a long bannerMessage could fill a
short viewport. Cap its height, scroll the overflow, and make it focusable
so the full message can be read with the keyboard.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
jamesread 5 часов назад
Родитель
Сommit
fcc6a00cc3
1 измененных файлов с 7 добавлено и 0 удалено
  1. 7 0
      frontend/resources/vue/App.vue

+ 7 - 0
frontend/resources/vue/App.vue

@@ -42,6 +42,7 @@
         v-if="bannerMessage"
         v-if="bannerMessage"
         id="banner"
         id="banner"
         type="info"
         type="info"
+        tabindex="0"
         :message="bannerMessage"
         :message="bannerMessage"
         :style="bannerCss"
         :style="bannerCss"
       />
       />
@@ -635,6 +636,12 @@ onMounted(async () => {
 </script>
 </script>
 
 
 <style scoped>
 <style scoped>
+/* The banner area is sticky, so a long configured message must not fill a short viewport. */
+#banner {
+    max-height: 25vh;
+    overflow-y: auto;
+}
+
 .language-dialog,
 .language-dialog,
 .theme-dialog {
 .theme-dialog {
     border: 1px solid var(--border-color, #ccc);
     border: 1px solid var(--border-color, #ccc);