<template>
|
<div class="avue-logo">
|
<transition name="fade">
|
<span v-if="keyCollapse"
|
class="avue-logo_subtitle"
|
key="0">
|
<img class="imgTop" :src=imgurl>
|
</span>
|
</transition>
|
<transition-group name="fade">
|
<template v-if="!keyCollapse">
|
<span>
|
<img class="imgSpan" :src=imgurl>
|
</span>
|
<span class="avue-logo_title"
|
key="1">
|
<span>
|
<img class="imgSpan" :src=imgurl>
|
</span>
|
<span class="indexTitle"> {{ website.indexTitle }}</span>
|
</span>
|
</template>
|
</transition-group>
|
</div>
|
</template>
|
|
<script>
|
import {mapGetters} from "vuex";
|
import img from "./favicon.png"
|
|
export default {
|
name: "logo",
|
data() {
|
return {
|
imgurl: img
|
};
|
},
|
created() {
|
},
|
computed: {
|
...mapGetters(["website", "keyCollapse"])
|
},
|
methods: {}
|
};
|
</script>
|
|
<style lang="scss">
|
.fade-leave-active {
|
transition: opacity 0.2s;
|
}
|
|
.fade-enter-active {
|
transition: opacity 2.5s;
|
}
|
|
.fade-enter,
|
.fade-leave-to {
|
opacity: 0;
|
}
|
|
.avue-logo {
|
position: fixed;
|
top: 0;
|
left: 0;
|
width: 240px;
|
height: 64px;
|
line-height: 64px;
|
background-color: #20222a;
|
font-size: 20px;
|
overflow: hidden;
|
box-sizing: border-box;
|
box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.15);
|
color: rgba(255, 255, 255, 0.8);
|
z-index: 1024;
|
|
&_title {
|
display: block;
|
text-align: center;
|
font-weight: 300;
|
font-size: 20px;
|
}
|
|
&_subtitle {
|
display: block;
|
text-align: center;
|
font-size: 18px;
|
font-weight: bold;
|
color: #fff;
|
}
|
}
|
|
.imgSpan {
|
position: absolute;
|
top: 15px;
|
left: 37px;
|
}
|
.imgTop{
|
position: absolute;
|
top: 15px;
|
left: 12px;
|
}
|
.indexTitle{
|
//background-image: linear-gradient(120deg, #54b6d0 16%, #3f8bdb, #3f8bdb);
|
background-image: linear-gradient(-225deg, #5D9FFF 0%, #9cbcdc 48%, #6BBBFF 100%);
|
background-clip: text;
|
color: transparent;
|
font-weight: 700;
|
}
|
</style>
|