夏天太热了,自研便携式空调。
创建vue项目,写入这个文件,打包生成app,就能使用了。
<template><div class="home"><h1>夏日空调</h1><div class="air-conditioning"><div class="line"></div><div class="sign"><div class="top-box"><div class="grade-1"><div class="bar-chart"></div></div><div class="grade-2"><div class="bar-chart"></div></div><div class="grade-3"><div class="bar-chart"></div></div></div><div class="bottom-box"><div class="label"><div class="circle-box"><div class="circle-black"></div></div><div class="circle-box"><div class="circle-black"></div></div><div class="circle-box"><div class="circle-black"></div></div><div class="circle-box"><div class="circle-black"></div></div><div class="circle-box"><div class="circle-black"></div></div><div class="circle-box"><div class="circle-black"></div></div><div class="circle-box"><div class="circle-black"></div></div></div><div class="bottom-box-line"></div><div class="explain"><div class="circle-box"><div class="circle-black width-2"></div><div class="circle-black width-2"></div></div><div class="circle-box"><div class="circle-black width-2"></div><div class="circle-black width-2"></div></div><div class="circle-box"><div class="circle-black width-2"></div><div class="circle-black width-2"></div></div><div class="circle-box"><div class="circle-black width-2"></div><div class="circle-black width-2"></div></div><div class="circle-box"><div class="circle-black width-2"></div><div class="circle-black width-2"></div></div><div class="circle-box"><div class="circle-black width-2"></div><div class="circle-black width-2"></div></div></div></div><div class="top-white-circle"><div class="circle-box"><div class="circle-white"></div></div><div class="circle-box"><div class="circle-white"></div></div><div class="circle-box"><div class="circle-white"></div></div><div class="circle-box"><div class="circle-white"></div></div><div class="circle-box"><div class="circle-white"></div></div><div class="circle-box"><div class="circle-white"></div></div></div><div class="bottom-white-circle"><div class="circle-box"><div class="circle-white"></div></div><div class="circle-box"><div class="circle-white"></div></div><div class="circle-box"><div class="circle-white"></div></div><div class="circle-box"><div class="circle-white"></div></div><div class="circle-box"><div class="circle-white"></div></div><div class="circle-box"><div class="circle-white"></div></div></div></div><div class="temperature"><img :src="require('../assets/snow.svg')" class="img-100" alt=""><div>{{ temperature }}℃</div><img :src="require('../assets/stop.svg')" class="img-100" alt="" v-if="!open"><img :src="require('../assets/open.svg')" class="img-100" alt="" v-else></div></div><div class="cloud-box"><div v-if="open" class="cloud"><div class="mr-20 cloud-img rotate-105"><img :src="require('../assets/cloud.svg')" height="30" width="30"></div><div class="mr-20 cloud-img rotate-90"><img :src="require('../assets/cloud.svg')" height="30" width="30"></div><div class="cloud-img rotate-75"><img :src="require('../assets/cloud.svg')" height="30" width="30"></div></div></div><div class="operation"><div class="add"><button class="button" @click="temperature++"><img :src="require('../assets/up.svg')" height="20" width="20"></button></div><div class="open-close"><button class="button" @click="open=!open"><img :src="require('../assets/stop.svg')" height="20" width="20"></button></div><div class="del"><button class="button" @click="temperature--"><img :src="require('../assets/down.svg')" height="20" width="20"></button></div></div></div>
</template><script>export default {name: 'HomeView',data() {return {temperature: 26,open:false,}}
}
</script>
<style lang="scss">
.home {position: relative;width: 100%;height: 100%;
}.cloud-box {margin-top: 50px;height: 200px;.cloud{display: flex;justify-content: center;.mr-20 {margin-right: 20px;}.cloud-img {width: 30px;height: 30px;}.rotate-105 {transform: rotate(105deg);}.rotate-75 {transform: rotate(72deg);}.rotate-90 {transform: rotate(90deg);}}}.operation {position: absolute;bottom: 0;left: 0;right: 0;display: flex;.button {border-radius: 50%;height: 30px;padding: 0;align-items: center;justify-content: center;display: flex;width: 30px;background-color: #fff;}.add {align-items: center;justify-content: center;display: flex;flex: 1;}.open-close {align-items: center;justify-content: center;display: flex;flex: 1;}.del {align-items: center;justify-content: center;display: flex;flex: 1;}
}.air-conditioning {position: relative;border: 2px solid #ECEDEB;height: 150px;border-radius: 0 0 20px 20px;box-shadow: 0 5px 12px 2px rgba(0, 0, 0, 0.15);.temperature {position: absolute;right: 20px;top: 20px;.img-100 {width: 20px;height: 20px;}}
}.line {height: 2px;width: 100%;background-color: #ECEDEB;position: absolute;bottom: 20px;
}.sign {margin: 10px;background-color: #0094dd;height: 70px;width: 55px;position: relative;box-sizing: border-box;padding: 10px 5px;display: flex;flex-direction: column;.top-box {flex: 1;box-sizing: border-box;padding-left: 3px;border-radius: 4px;background-color: #fff;display: flex;flex-direction: column;.grade-1 {flex: 1;display: flex;align-items: center;.bar-chart {width: 5px;height: 4px;background-color: #3a6a50;}}.grade-2 {flex: 1;display: flex;align-items: center;flex: 1;.bar-chart {width: 10px;height: 4px;background-color: #74ac41;}}.grade-3 {flex: 1;display: flex;align-items: center;.bar-chart {width: 15px;height: 4px;background-color: #d93526;}}}.bottom-box {border-radius: 4px;flex: 1;display: flex;flex-direction: column;margin-top: 3px;background-color: #fff;.label {display: flex;align-items: center;height: 8px;}.bottom-box-line {height: 1px;background-color: #000;}.explain {padding: 0 10px;display: flex;align-items: center;flex: 1;.width-2 {margin-top: 2px;width: 2px !important;height: 2px !important;}}}.top-white-circle {position: absolute;width: 45px;height: 8px;top: 0;display: flex;}.bottom-white-circle {position: absolute;width: 45px;height: 8px;bottom: 0;display: flex;}.circle-box {flex: 1;display: flex;flex-direction: column;align-items: center;justify-content: center;.circle-white {width: 3px;height: 3px;background-color: #fff;border-radius: 50%;}.circle-black {width: 3px;height: 3px;background-color: #000;border-radius: 50%;}}
}
</style>