初始提交
This commit is contained in:
103
src/pages/my/views/gzrz.vue
Normal file
103
src/pages/my/views/gzrz.vue
Normal file
@ -0,0 +1,103 @@
|
||||
<template>
|
||||
<div style="padding-top: 13vw;">
|
||||
<TopNav navTitle="工作日志" :rightTitle="'地图模式'"/>
|
||||
<div class="rz_item_box" v-for="(item,index) in gzrzList.list" :key="index" >
|
||||
<div class="rz_item_img_box">
|
||||
<van-image width="45px" height="45px" fit="contain" :src="item.imgUrl">
|
||||
<template v-slot:loading>
|
||||
<van-loading type="spinner" size="20" />
|
||||
</template>
|
||||
</van-image>
|
||||
<div class="rz_item_text">
|
||||
<div class="time">{{item.time}}</div>
|
||||
<div>
|
||||
<soan>{{item.name}}</soan>
|
||||
<soan class="address">{{item.address}}</soan>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<soan class="rz_zt" :class="item.status == 0 ? 'proceed' : 'accomplish'">{{item.status == 0 ? '进行中' : '已完成'}}</soan>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import TopNav from '../../../components/topNav.vue';
|
||||
import {
|
||||
ref,
|
||||
reactive
|
||||
} from 'vue';
|
||||
const themeType = ref(getStorage('themeSetting'));
|
||||
const gzrzList = reactive({
|
||||
list: [{
|
||||
name: '人员核查',
|
||||
time: '2022-03-11 14:32:55',
|
||||
address: '高新区创业路5号3单元',
|
||||
imgUrl: require('../../../assets/images/menu-yyhc.png'),
|
||||
status: 0
|
||||
},
|
||||
{
|
||||
name: '车辆核查',
|
||||
time: '2022-03-11 14:32:55',
|
||||
address: '高新区创业路5号3单元',
|
||||
imgUrl: require('../../../assets/images/menu-clhc.png'),
|
||||
status: 1
|
||||
},
|
||||
{
|
||||
name: '人员报备',
|
||||
time: '2022-03-11 14:32:55',
|
||||
address: '高新区创业路5号3单元',
|
||||
imgUrl: require('../../../assets/images/menu-rwzx.png'),
|
||||
status: 1
|
||||
}
|
||||
]
|
||||
})
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import "../../../assets/styles/mixin.scss";
|
||||
|
||||
.rz_item_box {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
padding:4vw 3vw;
|
||||
// border-bottom: 1px solid #F1F3F4;
|
||||
@include font_size($font_medium_s);
|
||||
@include font_color($font-color-theme);
|
||||
@include item_bottom_color($bottom-border-top-clore-theme);
|
||||
.rz_item_img_box {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.rz_item_text {
|
||||
margin-left: 3vw;
|
||||
|
||||
.time {
|
||||
@include font_size($font_medium);
|
||||
margin-bottom: 1.5vw;
|
||||
}
|
||||
|
||||
.address {
|
||||
margin-left: 5vw;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
.rz_zt {
|
||||
height: 5vw;
|
||||
@include font_size($font_little_s);
|
||||
padding: 2px 8px;
|
||||
border-radius: 15px;
|
||||
color: #fff;
|
||||
|
||||
}
|
||||
.accomplish{
|
||||
background-color: #23D96E;
|
||||
}
|
||||
.proceed{
|
||||
background-color: #3e6ee8;
|
||||
}
|
||||
}
|
||||
</style>
|
106
src/pages/my/views/scyy.vue
Normal file
106
src/pages/my/views/scyy.vue
Normal file
@ -0,0 +1,106 @@
|
||||
<template>
|
||||
<div style="padding-top: 13vw;">
|
||||
<TopNav navTitle="收藏应用" />
|
||||
<div class="function_item_box">
|
||||
<div @click="routerPush(item.path)" class="function_item" v-for="item in zhxfList.list" :key="item">
|
||||
<van-image width="55px" height="55px" fit="contain" :src="item.imgUrl">
|
||||
<template v-slot:loading>
|
||||
<van-loading type="spinner" size="20" />
|
||||
</template>
|
||||
</van-image>
|
||||
<div class="item_name">{{item.name}}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import TopNav from '../../../components/topNav.vue';
|
||||
import {
|
||||
ref,
|
||||
reactive
|
||||
} from 'vue';
|
||||
import router from '../../../router';
|
||||
//智慧巡防
|
||||
const zhxfList = reactive({
|
||||
list: [{
|
||||
name: '巡防报告',
|
||||
imgUrl: require('../../../assets/images/menu-rwzx.png'),
|
||||
path: ''
|
||||
},
|
||||
{
|
||||
name: '盘查物品',
|
||||
imgUrl: require('../../../assets/images/home/FXYJ@3x.png'),
|
||||
path: ''
|
||||
}, {
|
||||
name: '指令信息',
|
||||
imgUrl: require('../../../assets/images/menu-zlzx.png'),
|
||||
path: ''
|
||||
},
|
||||
{
|
||||
name: '报备信息',
|
||||
imgUrl: require('../../../assets/images/menu-qwzx.png'),
|
||||
path: ''
|
||||
},
|
||||
{
|
||||
name: '指令设置',
|
||||
imgUrl: require('../../../assets/images/menu-qwzx.png'),
|
||||
path: ''
|
||||
},
|
||||
{
|
||||
name: '巡防区',
|
||||
imgUrl: require('../../../assets/images/11.png'),
|
||||
path: '/scyy/xfq'
|
||||
},
|
||||
{
|
||||
name: '警务站',
|
||||
imgUrl: require('../../../assets/images/2.png'),
|
||||
path: '/scyy/jwz'
|
||||
},
|
||||
{
|
||||
name: '快反点',
|
||||
imgUrl: require('../../../assets/images/3.png'),
|
||||
path: '/scyy/kfd'
|
||||
},
|
||||
{
|
||||
name: '巡防力量',
|
||||
imgUrl: require('../../../assets/images/4.png'),
|
||||
path: '/scyy/xfll'
|
||||
},
|
||||
{
|
||||
name: '车辆',
|
||||
imgUrl: require('../../../assets/images/5.png'),
|
||||
path: '/scyy/cl'
|
||||
},
|
||||
{
|
||||
name: '装备',
|
||||
imgUrl: require('../../../assets/images/6.png'),
|
||||
path: '/scyy/zb'
|
||||
}
|
||||
]
|
||||
})
|
||||
function routerPush(url){
|
||||
router.push(url)
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import "../../../assets/styles/mixin.scss";
|
||||
.function_item_box {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
@include font_color($font-color-theme);
|
||||
.function_item {
|
||||
// border: 1px solid red;
|
||||
width: 25%;
|
||||
text-align: center;
|
||||
margin-top: 4vw;
|
||||
|
||||
.item_name {
|
||||
margin-top: 1.5vw;
|
||||
@include font_size($font_medium_s);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
</style>
|
54
src/pages/my/views/txl.vue
Normal file
54
src/pages/my/views/txl.vue
Normal file
@ -0,0 +1,54 @@
|
||||
<template>
|
||||
<van-config-provider :theme-vars="themeVars">
|
||||
<div style="padding-top: 13vw">
|
||||
<TopNav navTitle="通讯录" />
|
||||
<!-- <van-index-bar> -->
|
||||
<!-- <van-index-anchor index="A" /> -->
|
||||
<Search
|
||||
v-model="kwd"
|
||||
placeholder="请输入搜索关键词"
|
||||
@update:modelValue="onSearch"
|
||||
></Search>
|
||||
<template v-for="item in 10" :key="item">
|
||||
<van-cell title="张三(高新网安大队)" label="13612345678">
|
||||
<template #right-icon>
|
||||
<van-icon name="phone-circle" color="#3e6ee8" class="search-icon" />
|
||||
</template>
|
||||
</van-cell>
|
||||
<van-cell title="李四(高新网安大队)" label="13612345678">
|
||||
<template #right-icon>
|
||||
<van-icon name="phone-circle" color="#3e6ee8" class="search-icon" />
|
||||
</template>
|
||||
</van-cell>
|
||||
<van-cell title="王五(高新网安大队)" label="13612345678">
|
||||
<template #right-icon>
|
||||
<van-icon name="phone-circle" color="#3e6ee8" class="search-icon" />
|
||||
</template>
|
||||
</van-cell>
|
||||
</template>
|
||||
<!-- </van-index-bar> -->
|
||||
</div>
|
||||
</van-config-provider>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import TopNav from "../../../components/topNav.vue";
|
||||
import Search from "../../../components/search.vue";
|
||||
import { ref, reactive } from "vue";
|
||||
const listIndex = ref(["A"]);
|
||||
const themeType = ref(getStorage("themeSetting"));
|
||||
const kwd = ref("");
|
||||
const themeVars = ref({
|
||||
cellBackgroundColor: themeType.value == "light" ? "#fff" : "#041634",
|
||||
cellBorderColor: themeType.value == "light" ? "#dbdbdb" : "#001e6b",
|
||||
cellTextColor: themeType.value == "light" ? "#333" : "#fff",
|
||||
});
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import "../../../assets/styles/mixin.scss";
|
||||
|
||||
.search-icon {
|
||||
font-size: 30px;
|
||||
}
|
||||
</style>
|
182
src/pages/my/views/userInfo.vue
Normal file
182
src/pages/my/views/userInfo.vue
Normal file
@ -0,0 +1,182 @@
|
||||
<template>
|
||||
<van-config-provider :theme-vars="themeVars">
|
||||
<div style="padding-top: 13vw">
|
||||
<TopNav navTitle="个人信息" />
|
||||
<div class="user_function_box">
|
||||
<div
|
||||
class="user_function_item"
|
||||
v-for="(item, index) in functionList.list"
|
||||
:key="index"
|
||||
>
|
||||
<span class="function_title">{{ item.name }}</span>
|
||||
<van-image
|
||||
width="45px"
|
||||
height="45px"
|
||||
fit="contain"
|
||||
:src="item.message"
|
||||
v-if="item.isImg"
|
||||
>
|
||||
<template v-slot:loading>
|
||||
<van-loading type="spinner" size="20" />
|
||||
</template>
|
||||
<!-- <template v-slot:error>图片加载失败</template> -->
|
||||
</van-image>
|
||||
<van-field
|
||||
v-model="item.message"
|
||||
input-align="right"
|
||||
:readonly="item.readonly"
|
||||
v-else
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div style="margin: 10vw 3vw" @click="onClickSave">
|
||||
<van-button type="primary" round block>保存</van-button>
|
||||
</div>
|
||||
</div>
|
||||
</van-config-provider>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { ref, reactive, onMounted } from "vue";
|
||||
import TopNav from "../../../components/topNav.vue";
|
||||
import { hintToast } from "../../../utils/tools.js";
|
||||
const themeType = ref(getStorage("themeSetting"));
|
||||
const themeVars = ref({
|
||||
cellBackgroundColor: themeType.value == "light" ? "#fff" : "#092556",
|
||||
fieldInputTextColor: themeType.value == "light" ? "#333" : "#fff",
|
||||
});
|
||||
//功能模块
|
||||
const functionList = reactive({
|
||||
list: [
|
||||
{
|
||||
name: "姓名",
|
||||
message: "警官",
|
||||
readonly: true,
|
||||
},
|
||||
{
|
||||
name: "照片",
|
||||
message: require("../../../assets/images/tx.png"),
|
||||
isImg: true,
|
||||
},
|
||||
{
|
||||
name: "性别",
|
||||
message: "男",
|
||||
readonly: true,
|
||||
},
|
||||
{
|
||||
name: "座机电话",
|
||||
message: "02812345678",
|
||||
readonly: false,
|
||||
},
|
||||
{
|
||||
name: "手机",
|
||||
message: "13612345678",
|
||||
readonly: false,
|
||||
},
|
||||
{
|
||||
name: "组织机构",
|
||||
message: "测试部门",
|
||||
readonly: true,
|
||||
},
|
||||
{
|
||||
name: "警号",
|
||||
message: "121380",
|
||||
readonly: true,
|
||||
},
|
||||
],
|
||||
});
|
||||
onMounted(() => {
|
||||
let user = JSON.parse(getStorage("userInfo"));
|
||||
functionList.list.forEach((item) => {
|
||||
switch (item.name) {
|
||||
case "姓名":
|
||||
item.message = user.userName;
|
||||
break;
|
||||
case "性别":
|
||||
if (user.sex == 1) {
|
||||
item.message = "男";
|
||||
} else if (user.sex == 2) {
|
||||
item.message = "女";
|
||||
} else {
|
||||
item.message = "未知";
|
||||
}
|
||||
break;
|
||||
case "座机电话":
|
||||
item.message = user.telePhone;
|
||||
break;
|
||||
case "手机":
|
||||
item.message = user.mobile;
|
||||
break;
|
||||
case "组织机构":
|
||||
item.message = user.deptName;
|
||||
break;
|
||||
case "警号":
|
||||
item.message = user.inDustRialId;
|
||||
break;
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
//保存
|
||||
function onClickSave() {
|
||||
hintToast("保存成功")
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import "../../../assets/styles/mixin.scss";
|
||||
|
||||
.user_function_box,
|
||||
.user_box {
|
||||
@include font_color($font-color-theme);
|
||||
}
|
||||
|
||||
.user_box {
|
||||
// background: url('../../../assets/images/my-info-bg@2x.png') no-repeat;
|
||||
// background-size: 100% 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
padding: 4vw 3vw;
|
||||
margin: 3vw;
|
||||
border-radius: 5px;
|
||||
@include user_function_item_color($user-function-item-theme);
|
||||
.user {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
margin-left: 3vw;
|
||||
.user_name {
|
||||
@include font_size($font_large_s);
|
||||
}
|
||||
.user_dep {
|
||||
@include font_size($font_medium_s);
|
||||
margin-top: 2vw;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.user_function_box {
|
||||
margin-bottom: 10vw;
|
||||
@include user_function_item_color($user-function-item-theme);
|
||||
@include font_size($font_medium_s);
|
||||
padding: 2vw 3vw;
|
||||
margin: 3vw;
|
||||
border-radius: 5px;
|
||||
.user_function_item {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
|
||||
@include item_bottom_color($bottom-border-top-clore-theme);
|
||||
padding: 2vw 0;
|
||||
.function_title {
|
||||
width: 22vw;
|
||||
}
|
||||
}
|
||||
.user_function_item:last-child {
|
||||
border-bottom: none;
|
||||
}
|
||||
}
|
||||
::v-deep .van-field__control--right {
|
||||
@include font_size($font_medium_s);
|
||||
}
|
||||
</style>
|
163
src/pages/my/views/wdgj.vue
Normal file
163
src/pages/my/views/wdgj.vue
Normal file
@ -0,0 +1,163 @@
|
||||
<!--
|
||||
* @Author: your name
|
||||
* @Date: 2022-09-15 14:10:42
|
||||
* @LastEditTime: 2022-09-27 16:12:16
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: In User Settings Edit
|
||||
* @FilePath: \new_gxga_app\src\pages\my\views\wdgj.vue
|
||||
-->
|
||||
<template>
|
||||
<van-config-provider :theme-vars="themeVars">
|
||||
<div style="padding-top: 13vw">
|
||||
<TopNav
|
||||
navTitle="我的轨迹"
|
||||
rightIcon="location"
|
||||
:showRight="true"
|
||||
@clickRight="onClickRight"
|
||||
/>
|
||||
<van-cell title="选择时间" @click="calShow = true">
|
||||
<template #value>
|
||||
<span>{{ chooseTime }}</span>
|
||||
</template>
|
||||
</van-cell>
|
||||
<van-calendar
|
||||
v-model:show="calShow"
|
||||
@confirm="onConfirm"
|
||||
:min-date="minDate"
|
||||
:max-date="maxDate"
|
||||
color="#3e6ee8"
|
||||
></van-calendar>
|
||||
<van-list
|
||||
v-model:loading="loading"
|
||||
:finished="finished"
|
||||
finished-text=" "
|
||||
@load="onLoad"
|
||||
offset="30"
|
||||
:immediate-check="false"
|
||||
>
|
||||
<van-steps
|
||||
direction="vertical"
|
||||
:active="0"
|
||||
active-color="#3e6ee8"
|
||||
:inactive-color="themeType == 'light' ? '#333' : '#fff'"
|
||||
>
|
||||
<van-step v-for="item in gjList" :key="item">
|
||||
<div class="steps_box">{{ item.dwsj }}</div>
|
||||
<div class="steps_box">地址:{{ item.dzxz }}</div>
|
||||
<div class="steps_box">
|
||||
停留时长:{{ (item.xfsc / 60 / 60).toFixed(2) }}小时
|
||||
</div>
|
||||
</van-step>
|
||||
</van-steps>
|
||||
<van-empty
|
||||
description="暂无轨迹信息"
|
||||
image="default"
|
||||
v-if="gjList.length <= 0 && showEmpty"
|
||||
/>
|
||||
</van-list>
|
||||
</div>
|
||||
</van-config-provider>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import TopNav from "../../../components/topNav.vue";
|
||||
import { ref, reactive, onMounted } from "vue";
|
||||
import { getWdgj } from "../../../api/common.js";
|
||||
import { getUserLzLocation } from "../../../api/user.js";
|
||||
import { dateFormat } from "../../../utils/tools.js";
|
||||
import router from "../../../router/index.js";
|
||||
const themeType = ref(getStorage("themeSetting"));
|
||||
const themeVars = ref({
|
||||
stepsBackgroundColor: themeType.value == "light" ? "#fff" : "#041634",
|
||||
});
|
||||
const minDate = new Date(2000, 0, 1);
|
||||
const maxDate = new Date();
|
||||
const chooseTime = ref(dateFormat());
|
||||
const calShow = ref(false); //是否显示日历
|
||||
const gjList = ref([]); //轨迹数据
|
||||
const loading = ref(false);
|
||||
const finished = ref(false);
|
||||
const pageSize = ref(10);
|
||||
const pageCurrent = ref(1);
|
||||
const total = ref(0);
|
||||
const showEmpty = ref(false);
|
||||
const kssj = ref(dateFormat());
|
||||
const jssj = ref(dateFormat());
|
||||
onMounted(() => {
|
||||
_getWdgj();
|
||||
});
|
||||
//触底加载
|
||||
function onLoad() {
|
||||
if (total.value <= pageCurrent.value) {
|
||||
finished.value = true;
|
||||
return;
|
||||
}
|
||||
pageCurrent.value++;
|
||||
_getWdgj();
|
||||
}
|
||||
|
||||
//确认日期选择
|
||||
function onConfirm(val) {
|
||||
calShow.value = false;
|
||||
pageCurrent.value = 1;
|
||||
gjList.value = [];
|
||||
chooseTime.value = dateFormat("", val);
|
||||
_getWdgj();
|
||||
}
|
||||
//点击地图模式
|
||||
function onClickRight() {
|
||||
router.push(`/my/views/wdgjMapPoint?time=${chooseTime.value}`);
|
||||
}
|
||||
//获取轨迹数据
|
||||
function _getWdgj() {
|
||||
loading.value = true;
|
||||
let data = {
|
||||
pageSize: pageSize.value,
|
||||
pageCurrent: pageCurrent.value,
|
||||
dwrq: chooseTime.value,
|
||||
sfzh: JSON.parse(window.localStorage.getItem("userInfo")).idEntityCard,
|
||||
};
|
||||
getWdgj(data)
|
||||
.then((res) => {
|
||||
loading.value = false;
|
||||
if (res && res.records.length > 0) {
|
||||
total.value = res.pages;
|
||||
for (let i = 0; i < res.records.length; i++) {
|
||||
res.records[i].address = "";
|
||||
// _getUserLocation(res.records[i].jd, res.records[i].wd, (_res) => {
|
||||
// res.records[i].address = _res;
|
||||
// gjList.value.push(res.records[i]);
|
||||
// });
|
||||
|
||||
gjList.value.push(res.records[i]);
|
||||
}
|
||||
} else {
|
||||
showEmpty.value = true;
|
||||
}
|
||||
})
|
||||
.catch((err) => {
|
||||
loading.value = false;
|
||||
showEmpty.value = true;
|
||||
});
|
||||
}
|
||||
//获取当前位置信息
|
||||
function _getUserLocation(jd, wd, fun) {
|
||||
getUserLzLocation({ jd, wd }).then((res) => {
|
||||
if (res) {
|
||||
fun(res);
|
||||
}
|
||||
});
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import "../../../assets/styles/mixin.scss";
|
||||
::v-deep .van-step__line {
|
||||
background: #ebedf0 !important;
|
||||
}
|
||||
.steps_box {
|
||||
// @include font_color($font-color-theme);
|
||||
@include font_size($font_medium_s);
|
||||
line-height: 6vw;
|
||||
}
|
||||
</style>
|
78
src/pages/my/views/wdgjMapPoint.vue
Normal file
78
src/pages/my/views/wdgjMapPoint.vue
Normal file
@ -0,0 +1,78 @@
|
||||
<template>
|
||||
<div>
|
||||
<TopNav navTitle="地图模式" :showRight="false" :showLeft="true" />
|
||||
<GdMap />
|
||||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
import { ref, onMounted } from "vue";
|
||||
import { useRoute } from "vue-router";
|
||||
import TopNav from "../../../components/topNav.vue";
|
||||
import GdMap from "../../../components/GdMap/index.vue";
|
||||
import { getMApWdgj } from "../../../api/common.js";
|
||||
import { hintToast } from "../../../utils/tools.js";
|
||||
import emitter from "../../../utils/eventBus.js";
|
||||
const item = ref(null); // 警情数据
|
||||
const isRlt = ref(false);
|
||||
const points = ref([]);
|
||||
onMounted(() => {
|
||||
window.closeMapTitle = closeMapTitle;
|
||||
_getMApWdgj();
|
||||
});
|
||||
//获取坐标数据
|
||||
function _getMApWdgj() {
|
||||
let data = {
|
||||
dwrq: useRoute().query.time,
|
||||
sfzh: JSON.parse(window.localStorage.getItem("userInfo")).idEntityCard,
|
||||
};
|
||||
getMApWdgj(data).then((res) => {
|
||||
if (res && res.zbList.length > 0) {
|
||||
for (let i = 0; i < res.zbList.length; i++) {
|
||||
points.value = [...points.value, ...res.zbList[i]];
|
||||
}
|
||||
points.value = points.value.join(",");
|
||||
emitter.emit("drawLine", points.value);
|
||||
}
|
||||
});
|
||||
}
|
||||
//关闭弹窗dom
|
||||
function closeMapTitle(val) {
|
||||
let doms = document.getElementById(val);
|
||||
doms.remove();
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.map_but_box {
|
||||
position: absolute;
|
||||
bottom: 10vw;
|
||||
width: 50%;
|
||||
left: 50%;
|
||||
z-index: 99;
|
||||
margin-left: -25%;
|
||||
}
|
||||
|
||||
.top_btn {
|
||||
position: fixed;
|
||||
top: 16vw;
|
||||
left: 0;
|
||||
right: 12px;
|
||||
height: 24px;
|
||||
color: #fff;
|
||||
z-index: 9;
|
||||
text-align: right;
|
||||
|
||||
span {
|
||||
display: inline-block;
|
||||
border: 1px solid #fff;
|
||||
line-height: 22px;
|
||||
padding: 0 12px;
|
||||
border-radius: 12px;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
span.active {
|
||||
background: #517cea;
|
||||
border-color: #517cea;
|
||||
}
|
||||
}
|
||||
</style>
|
Reference in New Issue
Block a user