element/examples/components/footer.vue

150 lines
3.2 KiB
Vue
Raw Normal View History

2016-08-23 16:57:58 +08:00
<template>
<footer class="footer">
<div class="container">
2016-09-08 18:11:18 +08:00
<div class="footer-main">
<p class="footer-main-title">Element 1.0 Hydrogen</p>
<a href="https://github.com/ElemeFE/element/issues" class="footer-main-link" target="_blank">{{ langConfig.feedback }}</a>
<a href="https://github.com/ElemeFE/element/blob/master/.github/CONTRIBUTING.md" class="footer-main-link" target="_blank">{{ langConfig.contribution }}</a>
2016-09-08 18:11:18 +08:00
</div>
2016-08-23 16:57:58 +08:00
<div class="footer-social">
<el-popover
ref="weixin"
placement="top"
width="120"
popper-class="footer-popover"
2016-08-23 16:57:58 +08:00
trigger="hover">
<div class="footer-popover-title">{{ langConfig.eleme }} UED</div>
2016-08-23 16:57:58 +08:00
<img src="../assets/images/qrcode.png" alt="">
</el-popover>
<i class="doc-icon-weixin elementdoc" v-popover:weixin></i>
<a href="//github.com/elemefe" target="_blank">
<i class="doc-icon-github elementdoc"></i>
</a>
</div>
</div>
</footer>
</template>
<style>
.footer {
height: 120px;
background-color: #324057;
2016-09-13 20:02:33 +08:00
color: #a4aebd;
2016-08-23 16:57:58 +08:00
width: 100%;
z-index: 1000;
2016-08-23 19:15:15 +08:00
margin-top: -120px;
2016-08-23 16:57:58 +08:00
* {
word-spacing: 0;
}
.container {
height: 100%;
2016-11-18 16:49:07 +08:00
box-sizing: border-box;
2016-08-23 16:57:58 +08:00
}
2016-08-23 16:57:58 +08:00
.footer-main {
font-size: 0;
padding-top: 40px;
display: inline-block;
2016-08-23 16:57:58 +08:00
.footer-main-title {
line-height: 1;
font-size: 22px;
margin: 0;
}
2016-08-23 16:57:58 +08:00
.footer-main-link {
display: inline-block;
margin: 12px 18px 0 0;
line-height: 1;
font-size: 12px;
2016-09-13 20:02:33 +08:00
color: #768193;
2016-08-23 16:57:58 +08:00
a {
2016-09-13 20:02:33 +08:00
color: #768193;
2016-08-23 16:57:58 +08:00
text-decoration: none;
}
}
}
2016-08-23 16:57:58 +08:00
.footer-social {
float: right;
line-height: 120px;
.elementdoc {
transition: .3s;
display: inline-block;
line-height: 32px;
text-align: center;
2016-09-13 20:02:33 +08:00
color: #8D99AB;
background-color: transparent;
2016-08-23 16:57:58 +08:00
size: 32px;
2016-09-13 20:02:33 +08:00
font-size: 32px;
vertical-align: middle;
2016-08-23 16:57:58 +08:00
&:hover {
transform: scale(1.2);
}
}
2016-08-23 16:57:58 +08:00
.doc-icon-weixin {
margin-right: 36px;
&:hover {
2016-09-13 20:02:33 +08:00
color: #fff;
2016-08-23 16:57:58 +08:00
}
}
.doc-icon-github {
margin-right: 0;
&:hover {
2016-09-13 20:02:33 +08:00
color: #fff;
2016-08-23 16:57:58 +08:00
}
}
}
}
.footer-popover {
padding: 0;
min-width: 120px;
line-height: normal;
box-shadow: 0 0 11px 0 rgba(174, 187, 211, 0.24);
.footer-popover-title {
border-bottom: solid 1px #eaeefb;
height: 30px;
line-height: 30px;
text-align: center;
color: #99a9bf;
background-color: #f8f9fe;
}
img {
size: 100px;
margin: 10px;
}
}
2016-11-18 16:49:07 +08:00
@media (max-width: 768px) {
.footer {
.footer-social {
display: none;
}
}
}
2016-08-23 16:57:58 +08:00
</style>
<script type="text/babel">
import compoLang from '../i18n/component.json';
export default {
computed: {
lang() {
return this.$route.path.split('/')[1];
},
langConfig() {
return compoLang.filter(config => config.lang === this.lang)[0]['footer'];
}
}
};
</script>