From f4cba1a368eb739e04995851ba742ec202f81230 Mon Sep 17 00:00:00 2001 From: hxr <1490493387@qq.com> Date: Wed, 25 Oct 2023 23:50:19 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20:sparkles:=20=E4=BD=BF=E7=94=A8vue?= =?UTF-8?q?=E7=9A=84transaction=E7=BB=84=E4=BB=B6=E5=AE=9E=E7=8E=B0?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E8=BF=87=E6=B8=A1=E5=8A=A8=E7=94=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/layout/components/AppMain.vue | 14 ++--- src/styles/index.scss | 1 + src/styles/transition.scss | 85 +++++++++++++++++++++++++++++++ 3 files changed, 94 insertions(+), 6 deletions(-) create mode 100644 src/styles/transition.scss diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue index 14a64e9..4d24b3f 100644 --- a/src/layout/components/AppMain.vue +++ b/src/layout/components/AppMain.vue @@ -6,12 +6,14 @@ const tagsViewStore = useTagsViewStore(); diff --git a/src/styles/index.scss b/src/styles/index.scss index 0f529d3..e925063 100644 --- a/src/styles/index.scss +++ b/src/styles/index.scss @@ -1,3 +1,4 @@ +@import "./transition"; @import "./sidebar"; @import "./reset"; @import "./dark"; diff --git a/src/styles/transition.scss b/src/styles/transition.scss new file mode 100644 index 0000000..7ba5363 --- /dev/null +++ b/src/styles/transition.scss @@ -0,0 +1,85 @@ +// global transition css + +/* fade */ +.fade-enter-active, +.fade-leave-active { + transition: opacity 0.28s; +} + +.fade-enter, +.fade-leave-active { + opacity: 0; +} + +/* fade-transform */ +.fade-transform-leave-active, +.fade-transform-enter-active { + transition: all 0.5s; +} + +.fade-transform-enter { + opacity: 0; + transform: translateX(-30px); +} + +.fade-transform-leave-to { + opacity: 0; + transform: translateX(30px); +} + +/* breadcrumb transition */ +.breadcrumb-enter-active, +.breadcrumb-leave-active { + transition: all 0.5s; +} + +.breadcrumb-enter, +.breadcrumb-leave-active { + opacity: 0; + transform: translateX(20px); +} + +.breadcrumb-move { + transition: all 0.5s; +} + +.breadcrumb-leave-active { + position: absolute; +} + +/* 缩放过渡 */ +.fade-scale-enter-active, +.fade-scale-leave-active { + transition: transform 0.3s ease-in-out; +} + +.fade-scale-enter-from, +.fade-scale-leave-to { + transform: scale(0); +} + +.fade-slide-leave-active, +.fade-slide-enter-active { + transition: opacity 0.3s, transform 0.3s; +} + +.fade-slide-enter-from { + opacity: 0; + transform: translateX(-30px); +} + +.fade-slide-leave-to { + opacity: 0; + transform: translateX(30px); +} + +/* 旋转过渡 */ +.fade-rotate-enter-active, +.fade-rotate-leave-active { + transition: transform 0.3s ease-in-out; +} + +.fade-rotate-enter-from, +.fade-rotate-leave-to { + transform: rotate(90deg); +}