| | |
| | | <template> |
| | | <div |
| | | :class="prefixCls" |
| | | class="relative h-[100%] lt-md:px-10px lt-sm:px-10px lt-xl:px-10px lt-xl:px-10px" |
| | | > |
| | | <div class="relative mx-auto h-full flex"> |
| | | <div |
| | | :class="`${prefixCls}__left flex-1 bg-gray-500 bg-opacity-20 relative p-30px lt-xl:hidden overflow-x-hidden overflow-y-auto`" |
| | | > |
| | | <!-- 左上角的 logo + 系统标题 --> |
| | | <!-- <div class="relative flex items-center text-white">--> |
| | | <!-- <img alt="" class="mr-10px h-48px w-48px" src="@/assets/imgs/logo.png" />--> |
| | | <!-- <span class="text-20px font-bold">{{ underlineToHump(appStore.getTitle) }}</span>--> |
| | | <!-- </div>--> |
| | | <!-- 左边的背景图 + 欢迎语 --> |
| | | <div class="h-[calc(100%-60px)] flex items-center justify-center"> |
| | | <TransitionGroup |
| | | appear |
| | | enter-active-class="animate__animated animate__bounceInLeft" |
| | | tag="div" |
| | | > |
| | | <img key="1" alt="" class="w-350px" src="@/assets/svgs/login-box-bg.svg" /> |
| | | <div key="2" class="text-3xl text-white">{{ t('login.welcome') }}</div> |
| | | <div key="3" class="mt-5 text-14px font-normal text-white"> |
| | | {{ t('login.message') }} |
| | | </div> |
| | | </TransitionGroup> |
| | | </div> |
| | | </div> |
| | | <div |
| | | class="relative flex-1 p-30px dark:bg-[var(--login-bg-color)] lt-sm:p-10px overflow-x-hidden overflow-y-auto" |
| | | > |
| | | <!-- 右上角的主题、语言选择 --> |
| | | <div |
| | | class="flex items-center justify-between at-2xl:justify-end at-xl:justify-end" |
| | | style="color: var(--el-text-color-primary);" |
| | | > |
| | | <div class="flex items-center at-2xl:hidden at-xl:hidden"> |
| | | <img alt="" class="mr-10px h-48px w-48px" src="@/assets/imgs/logo.png" /> |
| | | <span class="text-20px font-bold" >{{ underlineToHump(appStore.getTitle) }}</span> |
| | | </div> |
| | | <div class="flex items-center justify-end space-x-10px h-48px"> |
| | | <ThemeSwitch /> |
| | | <LocaleDropdown /> |
| | | </div> |
| | | </div> |
| | | <div class="bei"> |
| | | <div class=""> |
| | | <!-- 右边的登录界面 --> |
| | | <Transition appear enter-active-class="animate__animated animate__bounceInRight"> |
| | | <div |
| | | class="m-auto h-[calc(100%-60px)] w-[100%] flex items-center at-2xl:max-w-500px at-lg:max-w-500px at-md:max-w-500px at-xl:max-w-500px" |
| | | > |
| | | <div class="form-box"> |
| | | <!-- 账号登录 --> |
| | | <LoginForm class="m-auto h-auto p-20px lt-xl:(rounded-3xl light:bg-white)" /> |
| | | <LoginForm class="m-auto h-auto p-20px lt-xl:(rounded-3xl light:bg-white) bai" /> |
| | | <!-- 手机登录 --> |
| | | <MobileForm class="m-auto h-auto p-20px lt-xl:(rounded-3xl light:bg-white)" /> |
| | | <MobileForm class="m-auto h-auto p-20px lt-xl:(rounded-3xl light:bg-white) bai" /> |
| | | <!-- 二维码登录 --> |
| | | <QrCodeForm class="m-auto h-auto p-20px lt-xl:(rounded-3xl light:bg-white)" /> |
| | | <QrCodeForm class="m-auto h-auto p-20px lt-xl:(rounded-3xl light:bg-white) bai" /> |
| | | <!-- 注册 --> |
| | | <RegisterForm class="m-auto h-auto p-20px lt-xl:(rounded-3xl light:bg-white)" /> |
| | | <RegisterForm class="m-auto h-auto p-20px lt-xl:(rounded-3xl light:bg-white) bai" /> |
| | | <!-- 三方登录 --> |
| | | <SSOLoginVue class="m-auto h-auto p-20px lt-xl:(rounded-3xl light:bg-white)" /> |
| | | <SSOLoginVue class="m-auto h-auto p-20px lt-xl:(rounded-3xl light:bg-white) bai" /> |
| | | </div> |
| | | </Transition> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | <script lang="ts" setup> |
| | |
| | | } |
| | | }) |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | $prefix-cls: #{$namespace}-login; |
| | | |
| | | .#{$prefix-cls} { |
| | | overflow: auto; |
| | | |
| | | &__left { |
| | | &::before { |
| | | position: absolute; |
| | | top: 0; |
| | | left: 0; |
| | | z-index: -1; |
| | | width: 100%; |
| | | height: 100%; |
| | | background-image: url('@/assets/svgs/login-bg.svg'); |
| | | background-position: center; |
| | | background-repeat: no-repeat; |
| | | content: ''; |
| | | } |
| | | } |
| | | <style scoped> |
| | | *{ |
| | | margin: 0; |
| | | padding: 0; |
| | | } |
| | | </style> |
| | | |
| | | <style lang="scss"> |
| | | .dark .login-form { |
| | | .el-divider__text { |
| | | background-color: var(--login-bg-color); |
| | | } |
| | | |
| | | .el-card { |
| | | background-color: var(--login-bg-color); |
| | | } |
| | | .bei{ |
| | | width: 100%; |
| | | height: 100%; |
| | | background-image: url('@/assets/imgs/bei.png'); |
| | | background-size: 100% 100%; |
| | | } |
| | | .form-box{ |
| | | width: 25%; |
| | | padding: 20px; |
| | | box-sizing: border-box; |
| | | background: #fff; |
| | | float: right; |
| | | margin-top: 25vh; |
| | | margin-right: 10vw; |
| | | } |
| | | </style> |