142 lines
2.7 KiB
Vue
Raw Normal View History

2024-01-23 17:05:40 +08:00
<template>
2024-04-08 09:06:28 +08:00
<div id='userLayout' :class="['user-layout-wrapper', isMobile && 'mobile']">
<div class='container'>
<div class='top'>
<div class='header'>
<div class='logoView'>
<img src='~@/assets/logo.png' class='logo' alt='logo'>
<span class='title'>园区管理系统</span>
</div>
2024-01-23 17:05:40 +08:00
</div>
2024-04-08 09:06:28 +08:00
<div class='desc'>
2024-01-23 17:05:40 +08:00
</div>
</div>
<router-view />
2024-04-08 09:06:28 +08:00
<div class='footer'>
<div class='links'>
<a href='_self'>帮助</a>
<a href='_self'>隐私</a>
<a href='_self'>条款</a>
2024-01-23 17:05:40 +08:00
</div>
2024-04-08 09:06:28 +08:00
<div class='copyright'>
<a target='_blank' href='https://beian.miit.gov.cn'>浙ICP备2021888888号</a>
2024-01-23 17:05:40 +08:00
</div>
</div>
</div>
</div>
</template>
<script>
import { deviceMixin } from '@/store/device-mixin'
export default {
name: 'UserLayout',
mixins: [deviceMixin],
2024-04-08 09:06:28 +08:00
mounted() {
2024-01-23 17:05:40 +08:00
document.body.classList.add('userLayout')
},
2024-04-08 09:06:28 +08:00
beforeDestroy() {
2024-01-23 17:05:40 +08:00
document.body.classList.remove('userLayout')
}
}
</script>
2024-04-08 09:06:28 +08:00
<style lang='less' scoped>
#userLayout.user-layout-wrapper {
height: 100%;
2024-01-23 17:05:40 +08:00
2024-04-08 09:06:28 +08:00
&.mobile {
.container {
.main {
max-width: 368px;
width: 98%;
2024-01-23 17:05:40 +08:00
}
}
2024-04-08 09:06:28 +08:00
}
2024-01-23 17:05:40 +08:00
2024-04-08 09:06:28 +08:00
.container {
width: 100%;
min-height: 100%;
background: #f0f2f5 url(~@/assets/background.svg) no-repeat 50%;
background-size: 100%;
padding: 110px 0 144px;
position: relative;
2024-01-23 17:05:40 +08:00
2024-04-08 09:06:28 +08:00
a {
text-decoration: none;
}
.top {
text-align: center;
.header {
height: 44px;
line-height: 44px;
.logoView {
display: flex;
justify-content: center;
align-items: center;
2024-01-23 17:05:40 +08:00
.logo {
2024-04-08 09:06:28 +08:00
height: 34px;
2024-01-23 17:05:40 +08:00
margin-right: 16px;
}
.title {
font-size: 33px;
color: rgba(0, 0, 0, .85);
font-family: Avenir, 'Helvetica Neue', Arial, Helvetica, sans-serif;
font-weight: 600;
}
}
}
2024-04-08 09:06:28 +08:00
.desc {
font-size: 14px;
color: rgba(0, 0, 0, 0.45);
margin-top: 12px;
margin-bottom: 40px;
2024-01-23 17:05:40 +08:00
}
2024-04-08 09:06:28 +08:00
}
2024-01-23 17:05:40 +08:00
2024-04-08 09:06:28 +08:00
.main {
min-width: 260px;
width: 368px;
margin: 0 auto;
}
.footer {
position: absolute;
width: 100%;
bottom: 0;
padding: 0 16px;
margin: 48px 0 24px;
text-align: center;
.links {
margin-bottom: 8px;
font-size: 14px;
a {
2024-01-23 17:05:40 +08:00
color: rgba(0, 0, 0, 0.45);
2024-04-08 09:06:28 +08:00
transition: all 0.3s;
&:not(:last-child) {
margin-right: 40px;
}
2024-01-23 17:05:40 +08:00
}
}
2024-04-08 09:06:28 +08:00
.copyright {
color: rgba(0, 0, 0, 0.45);
font-size: 14px;
}
2024-01-23 17:05:40 +08:00
}
}
2024-04-08 09:06:28 +08:00
}
2024-01-23 17:05:40 +08:00
</style>