83 lines
1.4 KiB
Vue
83 lines
1.4 KiB
Vue
<template>
|
|
<main class="profile-skeleton">
|
|
<section class="hero-line">
|
|
<div class="avatar-line"></div>
|
|
<van-skeleton title :row="1" />
|
|
</section>
|
|
<section class="asset-line">
|
|
<div class="coin-line"></div>
|
|
<van-skeleton title :row="1" />
|
|
</section>
|
|
<section v-for="item in 2" :key="item" class="panel-line">
|
|
<van-skeleton title :row="2" />
|
|
<div class="icon-row">
|
|
<span v-for="icon in 5" :key="icon"></span>
|
|
</div>
|
|
</section>
|
|
</main>
|
|
</template>
|
|
|
|
<script>
|
|
export default {
|
|
name: 'ProfileSkeleton'
|
|
}
|
|
</script>
|
|
|
|
<style scoped lang="less">
|
|
.profile-skeleton {
|
|
min-height: 100vh;
|
|
padding: 18px 10px 92px;
|
|
background: #f7f7f7;
|
|
}
|
|
|
|
.hero-line {
|
|
min-height: 164px;
|
|
padding: 68px 18px 28px;
|
|
border-radius: 0 0 16px 16px;
|
|
background: #f2eefc;
|
|
}
|
|
|
|
.avatar-line {
|
|
width: 52px;
|
|
height: 52px;
|
|
float: left;
|
|
margin-right: 12px;
|
|
border-radius: 50%;
|
|
background: #fff;
|
|
}
|
|
|
|
.asset-line,
|
|
.panel-line {
|
|
margin-top: 12px;
|
|
padding: 16px;
|
|
border-radius: 8px;
|
|
background: #fff;
|
|
}
|
|
|
|
.asset-line {
|
|
display: flex;
|
|
gap: 12px;
|
|
}
|
|
|
|
.coin-line {
|
|
width: 64px;
|
|
height: 64px;
|
|
flex: none;
|
|
border-radius: 50%;
|
|
background: #fff0e8;
|
|
}
|
|
|
|
.icon-row {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
margin-top: 18px;
|
|
}
|
|
|
|
.icon-row span {
|
|
width: 42px;
|
|
height: 42px;
|
|
border-radius: 12px;
|
|
background: #f2f3f5;
|
|
}
|
|
</style>
|