|
@@ -0,0 +1,575 @@
|
|
|
+<template>
|
|
|
+ <div class="container">
|
|
|
+ <div class="overview">
|
|
|
+ <div class="top">
|
|
|
+ <span>实时概览</span>
|
|
|
+ <img src="@/assets/images/overview-header-bg.png" alt="">
|
|
|
+ </div>
|
|
|
+ <div class="content">
|
|
|
+ <div class="top">
|
|
|
+ <div class="item" v-for="(item,index) in overviewData" :key="index">
|
|
|
+ <p>{{ item.name }}</p>
|
|
|
+ <div>
|
|
|
+ <div>
|
|
|
+ <img :src="item.img" alt="">
|
|
|
+ </div>
|
|
|
+ <p :style="{ color: item.value === 'ON'? '#e00202' : '#08b762' }">{{ item.value }}</p>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="bottom">
|
|
|
+ <div class="left">
|
|
|
+ <div class="item item1" v-for="(item,index) in quota[0]" :key="index">
|
|
|
+ <div class="top">
|
|
|
+ <img :src="item.img" alt="">
|
|
|
+ <span>{{ item.title }}</span>
|
|
|
+ </div>
|
|
|
+ <div class="content">
|
|
|
+ <div class="list" v-for="(item2,index2) in item.array" :key="index2">
|
|
|
+ <p>{{ item2.name }}</p>
|
|
|
+ <p>{{ item2.value }}<span>{{ item2.unit }}</span></p>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="item item2" v-for="(item,index) in quota[1]" :key="index">
|
|
|
+ <div class="top">
|
|
|
+ <img :src="item.img" alt="">
|
|
|
+ <span>{{ item.title }}</span>
|
|
|
+ </div>
|
|
|
+ <div class="content">
|
|
|
+ <div :class="['list',item.num]" v-for="(item2,index2) in item.array" :key="index2" >
|
|
|
+ <p>{{ item2.name }}</p>
|
|
|
+ <p>{{ item2.value }}<span>{{ item2.unit }}</span></p>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="right">
|
|
|
+ <div class="title" style="margin:10px 0 4px;font-weight: 600;">
|
|
|
+ 历史数据
|
|
|
+ </div>
|
|
|
+ <a-tabs v-model:activeKey="activeType" style="background: #fafafa">
|
|
|
+ <a-tab-pane :tab="item.name" v-for="item in activeList" :key="item.key">
|
|
|
+ <chart />
|
|
|
+ </a-tab-pane>
|
|
|
+ </a-tabs>
|
|
|
+ <div class="search">
|
|
|
+ <div :class="['switch',dateType == '1' ? 'active': '']" @click="dateSwitch(1)">日</div>
|
|
|
+ <div :class="['switch',dateType == '2' ? 'active': '']" @click="dateSwitch(2)">月</div>
|
|
|
+ <div class="date">
|
|
|
+ <el-select v-model="monthType" placeholder="" style="width: 100px;margin-right:10px;" v-if="dateType == 2">
|
|
|
+ <el-option
|
|
|
+ v-for="item in monthDate"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value"
|
|
|
+ />
|
|
|
+ </el-select>
|
|
|
+ <span>日期:</span>
|
|
|
+ <el-date-picker
|
|
|
+ v-model="day"
|
|
|
+ type="day"
|
|
|
+ placeholder=""
|
|
|
+ :disabled-date="disabledDate"
|
|
|
+ v-if="dateType == 1"
|
|
|
+ style="width:140px;margin-top:-5px;display: inline-block;"
|
|
|
+ />
|
|
|
+ <el-date-picker
|
|
|
+ v-model="month"
|
|
|
+ type="month"
|
|
|
+ placeholder=""
|
|
|
+ :disabled-date="disabledDate"
|
|
|
+ v-if="dateType == 2"
|
|
|
+ style="width:140px;display: inline-block;"
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="line"></div>
|
|
|
+ <div class="useElectricity">
|
|
|
+ <div class="top">
|
|
|
+ <span>用电</span>
|
|
|
+ <img src="@/assets/images/overview-header-bg.png" alt="">
|
|
|
+ </div>
|
|
|
+ <div class="content">
|
|
|
+ <div class="left">
|
|
|
+ <div v-for="(item,index) in electronData" :key="index">
|
|
|
+ <div class="item item1">
|
|
|
+ <div>
|
|
|
+ <img :src="item.img" alt="">
|
|
|
+ </div>
|
|
|
+ <div>
|
|
|
+ <div>{{ item.value }}</div>
|
|
|
+ <div>{{ item.name }}<span>{{ item.unit }}</span></div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="item item2">
|
|
|
+ <div>
|
|
|
+ <div>{{ item.synchronism }}</div>
|
|
|
+ <div>{{ item.synchronisNum }}</div>
|
|
|
+ </div>
|
|
|
+ <div>
|
|
|
+ <div>环比</div>
|
|
|
+ <div>{{ item.proportion }} <span>%</span><span></span></div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ </div>
|
|
|
+ <div class="right">
|
|
|
+ <div>
|
|
|
+ <span>当月分时电量</span>
|
|
|
+ <pie :data="electricalVoltage"/>
|
|
|
+ </div>
|
|
|
+ <div>
|
|
|
+ <span>当月分时电费</span>
|
|
|
+ <pie :data="electricityBill"/>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+<script setup>
|
|
|
+import { ref } from 'vue'
|
|
|
+import dayjs from 'dayjs'
|
|
|
+import chart from './chart'
|
|
|
+import pie from './pie'
|
|
|
+import running from '@/assets/images/running.png'
|
|
|
+import a from '@/assets/images/a.png'
|
|
|
+import b from '@/assets/images/b.png'
|
|
|
+import c from '@/assets/images/c.png'
|
|
|
+import demand from '@/assets/images/demand.png'
|
|
|
+import I from '@/assets/images/I.png'
|
|
|
+import power from '@/assets/images/power.png'
|
|
|
+import powerqulity from '@/assets/images/powerqulity.png'
|
|
|
+import temperature from '@/assets/images/temperature.png'
|
|
|
+import UA from '@/assets/images/UA.png'
|
|
|
+import UAB from '@/assets/images/UAB.png'
|
|
|
+import dian from '@/assets/images/dian.png'
|
|
|
+const overviewData = ref([
|
|
|
+ { name: '回路带电/停电', value: 'ON' , img: running },
|
|
|
+ { name: '环境温度', value: 'OFF' , img: temperature },
|
|
|
+ { name: '剩余电流超限', value: 'ON' , img: a },
|
|
|
+ { name: '线路电气故障总', value: 'ON' , img: b },
|
|
|
+ { name: '电压缺相', value: 'ON' , img: c },
|
|
|
+ { name: '线路开关状态', value: 'ON' , img: a },
|
|
|
+ { name: '电压越上限告警', value: 'ON' , img: b },
|
|
|
+ { name: '电压越下限告警', value: 'ON' , img: c },
|
|
|
+])
|
|
|
+const quota = ref([
|
|
|
+ [
|
|
|
+ { title: '电流', img: I,
|
|
|
+ array:[
|
|
|
+ { name: 'IA',value: '2.81',unit:'A' },
|
|
|
+ { name: 'IB',value: '2.87',unit:'A' },
|
|
|
+ { name: 'IC',value: '2.52',unit:'A' },
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ { title: '相电压', img: UA,
|
|
|
+ array:[
|
|
|
+ { name: 'UA',value: '5.92',unit:'kW' },
|
|
|
+ { name: 'UB',value: '2.91',unit:'kW' },
|
|
|
+ { name: 'UC',value: '2.93',unit:'kW' },
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ { title: '线电压', img: UAB,
|
|
|
+ array:[
|
|
|
+ { name: 'UAB',value: '10224.5',unit:'V' },
|
|
|
+ { name: 'UBC',value: '10250',unit:'V' },
|
|
|
+ { name: 'UCA',value: '10268',unit:'V' },
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ { title: '功率', img: power,num:"two",
|
|
|
+ array:[
|
|
|
+ { name: '有功功率',value: '36.3',unit:'kW' },
|
|
|
+ { name: '无功功率',value: '-23.7',unit:'kW' },
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ { title: '需量', img: demand, num:"three",
|
|
|
+ array:[
|
|
|
+ { name: '当前需量',value: '37.8',unit:'kV' },
|
|
|
+ { name: '当月最大需量',value: '21265.7',unit:'kV' },
|
|
|
+ { name: '发生时间',value: '2025-05-01 12:00:00',unit:'' },
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ { title: '电能质量', img: powerqulity, num:"three2",
|
|
|
+ array:[
|
|
|
+ { name: '当月功率因数',value: '0.99',unit:'7月1日 起' },
|
|
|
+ { name: '频率',value: '50.03',unit:'Hz' },
|
|
|
+ { name: '实时功率因数',value: '0.8276',unit:'' },
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ { title: '电度', img: dian, num:"four",
|
|
|
+ array:[
|
|
|
+ { name: '正向有功',value: '182153.96',unit:'kWh', },
|
|
|
+ { name: '反向有功',value: '-3',unit:'kWh' },
|
|
|
+ { name: '正向无功',value: '120',unit:'kvarh' },
|
|
|
+ { name: '反向无功',value: '28839',unit:'kvarh' },
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ],
|
|
|
+])
|
|
|
+//实时概览
|
|
|
+const activeType = ref('1')
|
|
|
+const activeList = ref([
|
|
|
+ { key:"1", name:'电流' },
|
|
|
+ { key:"2", name:'电压' },
|
|
|
+ { key:"3", name:'功率' },
|
|
|
+ { key:"4", name:'需量' },
|
|
|
+ { key:"5", name:'频率' },
|
|
|
+ { key:"6", name:'功率因数' },
|
|
|
+ { key:"7", name:'电度' },
|
|
|
+ { key:"8", name:'用电' },
|
|
|
+ { key:"9", name:'发电' },
|
|
|
+])
|
|
|
+//用电数据
|
|
|
+const dayOrMonth = ref(1)
|
|
|
+const day = ref(dayjs().format('YYYY-MM-DD'))
|
|
|
+const month = ref(dayjs().format('YYYY-MM'))
|
|
|
+const monthDate = ref([
|
|
|
+ { label:"平均值", value: "1" },
|
|
|
+ { label:"最高值", value: "2" },
|
|
|
+ { label:"最小值", value: "3" },
|
|
|
+])
|
|
|
+const dateType = ref("1")
|
|
|
+const monthType = ref('1')
|
|
|
+//用电
|
|
|
+const electronData = ref([
|
|
|
+ { name: '当日用电', value: '3681', unit: 'kWh', img: UAB, synchronism: '昨日同期', synchronisNum:"6162", proportion:"45" },
|
|
|
+ { name: '当日电费', value: '1202.43', unit: '元', img: UAB, synchronism: '昨日同期', synchronisNum:"3300.88", proportion:"63.57" },
|
|
|
+ { name: '当月用电', value: '129465', unit: 'kWh', img: UAB, synchronism: '上月同期', synchronisNum:"148950", proportion:"13.08" },
|
|
|
+ { name: '当月电费', value: '73618.45', unit: 'kWh', img: UAB, synchronism: '上月同期', synchronisNum:"91539.14", proportion:"19.58" },
|
|
|
+])
|
|
|
+
|
|
|
+const electricalVoltage = ref({
|
|
|
+ data:[
|
|
|
+ { value: 1048, name: '尖', unit:"kWh" },
|
|
|
+ { value: 735, name: '峰', unit:"kWh" },
|
|
|
+ { value: 580, name: '平', unit:"kWh" },
|
|
|
+ { value: 484, name: '谷', unit:"kWh" }
|
|
|
+ ],
|
|
|
+ color:["#FE8B6A","#BB7582","#F54C5E","#8AD4C7"],
|
|
|
+ type:"3"
|
|
|
+})
|
|
|
+
|
|
|
+const electricityBill = ref({
|
|
|
+ data:[
|
|
|
+ { value: 1048, name: '尖', unit:"元" },
|
|
|
+ { value: 735, name: '峰', unit:"元" },
|
|
|
+ { value: 580, name: '平', unit:"元" },
|
|
|
+ { value: 484, name: '谷', unit:"元" }
|
|
|
+ ],
|
|
|
+ color:["#FE8B6A","#BB7582","#F54C5E","#8AD4C7"],
|
|
|
+ type:"3"
|
|
|
+})
|
|
|
+function disabledDate(time) {
|
|
|
+ // 禁止选择今天之后的日子
|
|
|
+ return time.getTime() > Date.now();
|
|
|
+}
|
|
|
+
|
|
|
+function dateSwitch(type){
|
|
|
+ dateType.value = type
|
|
|
+}
|
|
|
+</script>
|
|
|
+<style lang="scss" scoped>
|
|
|
+.container{
|
|
|
+ .overview{
|
|
|
+ background: #ffff;
|
|
|
+ border-radius: 4px;
|
|
|
+ .top{
|
|
|
+ span{
|
|
|
+ font-size: 14px;
|
|
|
+ font-weight: bold;
|
|
|
+ display: inline-block;
|
|
|
+ }
|
|
|
+ img{
|
|
|
+ vertical-align: middle;
|
|
|
+ margin:-4px 0 0 10px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .content{
|
|
|
+ margin-top:4px;
|
|
|
+ .top{
|
|
|
+ .item{
|
|
|
+ background: #fafafa;
|
|
|
+ background-image: radial-gradient(rgba(245,245,245,0.4) 30%,transparent 0),radial-gradient(rgba(245,245,245,0.4) 30%,transparent 0);
|
|
|
+ width:calc(12.5% - 10px );
|
|
|
+ border-radius: 5px;
|
|
|
+ padding:6px 10px 12px 10px;
|
|
|
+ display: inline-block;
|
|
|
+ margin-right:10px;
|
|
|
+ color:rgba(0,0,0,0.65);
|
|
|
+ >div{
|
|
|
+ height:34px;
|
|
|
+ line-height: 34px;
|
|
|
+ margin-top:-6px;
|
|
|
+ >div,>p{
|
|
|
+ width:50%;
|
|
|
+ display: inline-block;
|
|
|
+ vertical-align: top;
|
|
|
+ }
|
|
|
+ img{
|
|
|
+ width:34px;
|
|
|
+ margin:0 calc(50% - 18px);
|
|
|
+ }
|
|
|
+ p{
|
|
|
+ font-size: 18px;
|
|
|
+
|
|
|
+ text-align: center;
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .item:nth-child(8){
|
|
|
+ margin-right:0px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .bottom{
|
|
|
+ .left{
|
|
|
+ width:40%;
|
|
|
+ display: inline-block;
|
|
|
+ vertical-align: top;
|
|
|
+ .item{
|
|
|
+ margin:10px 10px 0 0;
|
|
|
+ vertical-align: top;
|
|
|
+ display: inline-block;
|
|
|
+ color:rgba(0,0,0,0.65);
|
|
|
+ .top{
|
|
|
+ img{
|
|
|
+ width:20px;
|
|
|
+ vertical-align: top;
|
|
|
+ margin:0px 6px -4px 0;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .content{
|
|
|
+ border-radius: 0 5px 5px 0;
|
|
|
+ border-left:2px solid #08b762;
|
|
|
+ .list{
|
|
|
+ padding:1px 10px;
|
|
|
+ background: #fafafa;
|
|
|
+
|
|
|
+ >p{
|
|
|
+ margin:0;
|
|
|
+ padding:2px 0;
|
|
|
+ display: inline-block;
|
|
|
+ border-bottom:2px solid #fff;
|
|
|
+ }
|
|
|
+ >p:nth-child(1){
|
|
|
+ width:45%;
|
|
|
+ }
|
|
|
+ >p:nth-child(2){
|
|
|
+ width:55%;
|
|
|
+ text-align: right;
|
|
|
+ span{
|
|
|
+ font-size: 10px;
|
|
|
+ margin-left:4px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .list:last-child{
|
|
|
+ p{
|
|
|
+ border-bottom:none;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .two{
|
|
|
+ p{
|
|
|
+ height:42px !important;
|
|
|
+ line-height: 42px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .three2{
|
|
|
+ p{
|
|
|
+ height:37.3px !important;
|
|
|
+ line-height: 37.3px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .item1{
|
|
|
+ width:calc(33.33% - 10px);
|
|
|
+ }
|
|
|
+ .item2{
|
|
|
+ width:calc(50% - 10px);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .right{
|
|
|
+ width:calc(60% - 10px);
|
|
|
+ display: inline-block;
|
|
|
+ position: relative;
|
|
|
+ .search{
|
|
|
+ position: absolute;
|
|
|
+ top:90px;
|
|
|
+ margin:0px 0 0 8px !important;
|
|
|
+ display: inline-block;
|
|
|
+ .switch{
|
|
|
+ width:40px;
|
|
|
+ height:30px;
|
|
|
+ line-height: 26px;
|
|
|
+ text-align: center;
|
|
|
+ margin-right:10px;
|
|
|
+ padding:2px;
|
|
|
+ background: #fff;
|
|
|
+ color:rgba(0,0,0,0.65);
|
|
|
+ border: 1px solid #d9d9d9;
|
|
|
+ display: inline-block;
|
|
|
+ cursor: pointer;
|
|
|
+ }
|
|
|
+ .active{
|
|
|
+ background: #6c7fff;
|
|
|
+ color:#fff;
|
|
|
+ }
|
|
|
+ .date{
|
|
|
+ width:500px;
|
|
|
+ display: inline-block;
|
|
|
+ >span{
|
|
|
+ vertical-align: middle;
|
|
|
+ display: inline-block;
|
|
|
+ margin-top:-5px;
|
|
|
+ }
|
|
|
+ >div:first-child{
|
|
|
+ width:60px;
|
|
|
+ }
|
|
|
+ >div:last-child{
|
|
|
+ width:calc(100% - 70px);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .useElectricity{
|
|
|
+ margin-top:10px;
|
|
|
+ border-radius: 4px;
|
|
|
+ background: #fff;
|
|
|
+ .top{
|
|
|
+ span{
|
|
|
+ font-size: 14px;
|
|
|
+ font-weight: bold;
|
|
|
+ display: inline-block;
|
|
|
+ }
|
|
|
+ img{
|
|
|
+ vertical-align: middle;
|
|
|
+ margin:-4px 0 0 10px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .content{
|
|
|
+ .left{
|
|
|
+ width:50%;
|
|
|
+ display: inline-block;
|
|
|
+ vertical-align: top;
|
|
|
+ >div{
|
|
|
+ width:50%;
|
|
|
+ display: inline-block;
|
|
|
+ }
|
|
|
+ .item{
|
|
|
+ width:calc(50% - 5px);
|
|
|
+ padding:45px 10px;
|
|
|
+ margin-right:5px;
|
|
|
+ margin-top:4px;
|
|
|
+ display: inline-block;
|
|
|
+ background: #fafafa;
|
|
|
+ }
|
|
|
+ .item:nth-child(4n){
|
|
|
+ margin-right:0;
|
|
|
+ }
|
|
|
+ .item1{
|
|
|
+ >div{
|
|
|
+ display: inline-block;
|
|
|
+ vertical-align: middle;
|
|
|
+ color:#000;
|
|
|
+ }
|
|
|
+ >div:nth-child(1){
|
|
|
+ width:35%;
|
|
|
+ img{
|
|
|
+ width:25px;
|
|
|
+ margin-left:10px;
|
|
|
+ }
|
|
|
+ vertical-align: middle;
|
|
|
+ }
|
|
|
+ >div:nth-child(2){
|
|
|
+ width:65%;
|
|
|
+ div:nth-child(1){
|
|
|
+ font-size: 16px;
|
|
|
+ }
|
|
|
+ div:nth-child(2){
|
|
|
+ font-size: 14px;
|
|
|
+ margin-top:6px;
|
|
|
+ span{
|
|
|
+ font-size: 10px;
|
|
|
+ margin-left:4px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .item2{
|
|
|
+ >div{
|
|
|
+ width:50%;
|
|
|
+ display: inline-block;
|
|
|
+ vertical-align: middle;
|
|
|
+ color:rgba(0,0,0,0.65);
|
|
|
+ padding:0 10px;
|
|
|
+ >div:nth-child(2){
|
|
|
+ margin-top:10px;
|
|
|
+ span:nth-child(1){
|
|
|
+ font-size: 10px;
|
|
|
+ text-align: right;
|
|
|
+ margin-right:6px;
|
|
|
+ }
|
|
|
+ span:nth-child(2)::after{
|
|
|
+ display: inline-block;
|
|
|
+ content: ""; /* 伪元素不包含内容 */
|
|
|
+ width: 0; /* 必须设置为0,因为我们不显示宽度 */
|
|
|
+ height: 0; /* 必须设置为0,因为我们不显示高度 */
|
|
|
+ margin-left: -5px; /* 根据需要调整,这里是让箭头中心对齐 */
|
|
|
+ border-left: 5px solid transparent; /* 左边框透明 */
|
|
|
+ border-right: 5px solid transparent; /* 右边框透明 */
|
|
|
+ border-top: 5px solid #08b762; /* 上边框是三角形的颜色 */
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ >div:nth-child(2){
|
|
|
+ text-align: right;
|
|
|
+ >div:nth-child(2){
|
|
|
+ color:#08b762;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ .right{
|
|
|
+ width:calc(50% - 10px);
|
|
|
+ margin-top:.5px;
|
|
|
+ display: inline-block;
|
|
|
+ >div{
|
|
|
+ width:calc(50% - 5px);
|
|
|
+ margin-top:3px;
|
|
|
+ display: inline-block !important;
|
|
|
+ background: #fafafa;
|
|
|
+ position: relative;
|
|
|
+ span{
|
|
|
+ position: absolute;
|
|
|
+ top:4px;
|
|
|
+ left:4px;
|
|
|
+ font-weight: 600;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ >div:nth-child(1){
|
|
|
+ margin-right:10px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+.line{
|
|
|
+ height:10px;
|
|
|
+ width:100%;
|
|
|
+ background: #fafafa;
|
|
|
+}
|
|
|
+</style>
|