diff --git a/frontend/app/components/parts/site_options/LanguageSelector.vue b/frontend/app/components/parts/site_options/LanguageSelector.vue index ff40197..e21a986 100644 --- a/frontend/app/components/parts/site_options/LanguageSelector.vue +++ b/frontend/app/components/parts/site_options/LanguageSelector.vue @@ -35,16 +35,18 @@ const changeLocale = (lang) => { @@ -63,8 +65,17 @@ const changeLocale = (lang) => { background-color: #30363d; } } +/* Dropdown transitions */ +.dropdown-enter-active, .dropdown-leave-active { + transition: opacity 0.2s ease, transform 0.2s ease; +} +.dropdown-enter-from, .dropdown-leave-to { + opacity: 0; + transform: translateY(-8px); +} + .dropdown { -z-index: 10; + z-index: 10; position: absolute; top: 50px; right: 110px; diff --git a/frontend/app/components/parts/site_options/ThemeSelector.vue b/frontend/app/components/parts/site_options/ThemeSelector.vue index 0bed30e..49d1775 100644 --- a/frontend/app/components/parts/site_options/ThemeSelector.vue +++ b/frontend/app/components/parts/site_options/ThemeSelector.vue @@ -30,58 +30,60 @@ onUnmounted(() => { @@ -146,9 +148,18 @@ onUnmounted(() => { margin-right: 15px; } +/* Dropdown transitions */ +.dropdown-enter-active, .dropdown-leave-active { + transition: opacity 0.2s ease, transform 0.2s ease; +} +.dropdown-enter-from, .dropdown-leave-to { + opacity: 0; + transform: translateY(-8px); +} + /* Dropdown */ .dropdown { -z-index: 10; + z-index: 10; position: absolute; top: 50px; right: 0;