terminalDataDialog.vue 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702
  1. <template>
  2. <div style="display: flex;width: 100%">
  3. <div class="c1" >
  4. <div style="display: flex;justify-content: center;width: 100%;flex-wrap: wrap">
  5. <div style="position: relative;height: 38px">
  6. <div class="overTitle">资源台账</div>
  7. <img src="@/assets/images/main/cont_title_bg.png" width="284" alt="" class="Img">
  8. </div>
  9. <div class="c1_bg">
  10. <div class="c1_title"></div>
  11. <div class="c1_body">
  12. <div style="display: flex;justify-content: center;align-items: center;margin-bottom: 10px">
  13. <img src="../../../assets/zhang/publicCar/car.png" width="68" style="margin-right: 20px">
  14. <div class="carNum" v-for="(it, index) in resourceData.totalCarNum.split('')">
  15. <span v-if="index < resourceData.cd" style="color: rgba(0,255,255,0.3)">{{ it }}</span>
  16. <span v-if="index >= resourceData.cd">{{ it }}</span>
  17. </div>
  18. <div class="carText">辆</div>
  19. </div>
  20. <div class="c1_titleText"></div>
  21. <div style="display: flex;justify-content: center;align-items: center;margin-bottom: 20px">
  22. <div class="carTypeNumBox" v-for="(it, index) in carTypeNum">
  23. <div style="display: flex;width: 100%;height: 25px">
  24. <img src="../../../assets/zhang/publicCar/miniCar.png" width="18" style="object-fit: cover">
  25. <div style="color: white;font-size: 15px">{{ it.type }}</div>
  26. </div>
  27. <div style="width: 100%;height: 25px;color: #00FFFF;display: flex">
  28. <div style="font-size: 30px;font-family: 'electronicFont'">{{ it.num }}</div>
  29. <div style="font-size: 10px;height: 100%;display: flex;align-items: end;margin-top: 4px">辆</div>
  30. </div>
  31. </div>
  32. </div>
  33. <div style="display: flex;width: 100%;">
  34. <div style="width: 50%">
  35. <div class="c1_titleText_half1"></div>
  36. <div style="display: flex;align-items: center;margin-bottom: 10px;padding-left: 30px">
  37. <div style="height: 50px;margin-right: 15px" v-for="(it, index) in carUseNum">
  38. <div style="display: flex;width: 100%;height: 25px;align-items: center">
  39. <img src="../../../assets/zhang/publicCar/miniCar.png" width="30" style="object-fit: cover">
  40. <div style="color: white;font-size: 13px">{{ it.type }}</div>
  41. </div>
  42. <div style="width: 100%;height: 25px;color: #00FFFF;display: flex;margin-left: 10px">
  43. <div style="font-size: 30px;font-family: 'electronicFont'">{{ it.num }}</div>
  44. <div style="font-size: 10px;height: 100%;display: flex;align-items: end;margin-top: 4px">辆</div>
  45. </div>
  46. </div>
  47. </div>
  48. </div>
  49. <div style="width: 50%">
  50. <div class="c1_titleText_half2"></div>
  51. <div style="display: flex;align-items: center;margin-bottom: 10px;padding-left: 30px">
  52. <div style="height: 50px;margin-right: 15px" v-for="(it, index) in carActivationNum">
  53. <div style="display: flex;width: 100%;height: 25px;align-items: center">
  54. <img src="../../../assets/zhang/publicCar/miniCar.png" width="30" style="object-fit: cover">
  55. <div style="color: white;font-size: 13px">{{ it.type }}</div>
  56. </div>
  57. <div style="width: 100%;height: 25px;color: #00FFFF;display: flex;margin-left: 10px">
  58. <div style="font-size: 30px;font-family: 'electronicFont'">{{ it.num }}</div>
  59. <div style="font-size: 10px;height: 100%;display: flex;align-items: end;margin-top: 4px">辆</div>
  60. </div>
  61. </div>
  62. </div>
  63. </div>
  64. </div>
  65. </div>
  66. <div style="display: flex;width: 100%;flex-wrap: wrap;margin-top: 10px">
  67. <div style="width: 50%;margin-bottom: 10px">
  68. <div class="c1_title_half">
  69. <div style="position: absolute;left: 20px;top: -5px;">公务车编制数</div>
  70. </div>
  71. <div style="display: flex;align-items: center">
  72. <img src="../../../assets/zhang/public_car.png" width="58" style="margin: 10px 5px 0 33px">
  73. <div style="width: 108px;height: 24px;color: #00FFFF;font-size: 34px;margin-bottom: 10px">
  74. <span style="font-family: 'electronicFont'">{{ resourceData.establishmentsCarNum }}</span>
  75. <span style="width: 15px;height: 24px;font-size: 14px;align-content: end">辆</span>
  76. </div>
  77. </div>
  78. </div>
  79. <div style="width: 50%;margin-bottom: 10px">
  80. <div class="c1_title_half">
  81. <div style="position: absolute;left: 20px;top: -5px;">公务车缺编率</div>
  82. </div>
  83. <div style="display: flex;align-items: center">
  84. <div style="position: relative">
  85. <img src="../../../assets/zhang/publicCar/arcBlueEx.png" width="90" style="margin: 20px 5px 0 33px">
  86. <div style="position: absolute;color: #00FFFF;width: 158px;top: 5px;font-size: 34px;font-family: 'electronicFont';text-align: center">
  87. {{ Number.isNaN(resourceData.percentageLack) ? 0 : resourceData.percentageLack }}<span style="font-size: 12px">%</span>
  88. </div>
  89. </div>
  90. </div>
  91. </div>
  92. <div style="width: 50%;margin-bottom: 10px">
  93. <div class="c1_title_half">
  94. <div style="position: absolute;left: 20px;top: -5px;">公务车占编率</div>
  95. </div>
  96. <div style="display: flex;align-items: center">
  97. <div style="position: relative">
  98. <img src="../../../assets/zhang/publicCar/arcBlueEx.png" width="90" style="margin: 20px 5px 0 33px">
  99. <div style="position: absolute;color: #00FFFF;width: 158px;top: 5px;font-size: 34px;font-family: 'electronicFont';text-align: center">{{ Number.isNaN(resourceData.percentagePosess) ? 0 : resourceData.percentagePosess }}<span style="font-size: 12px">%</span></div>
  100. </div>
  101. </div>
  102. </div>
  103. <div style="width: 50%;margin-bottom: 10px">
  104. <div class="c1_title_half">
  105. <div style="position: absolute;left: 20px;top: -5px;">2025年度公务车车辆数</div>
  106. </div>
  107. <div style="display: flex;align-items: center;margin-bottom: 20px">
  108. <div style="position: relative;cursor: pointer" @click="chooseX">
  109. <img src="../../../assets/zhang/publicCar/arcBlue.png" width="97" style="margin: 10px 5px 0 33px">
  110. <div style="position: absolute;width: 55px;color: #00FFFF;top: 5px;left: 55px;font-size: 12px;text-align: center">年度增加车辆数</div>
  111. </div>
  112. <div style="width: 108px;height: 24px;color: #00FFFF;font-size: 34px;margin-bottom: 20px">
  113. <span style="font-family: 'electronicFont'">{{ resourceData.yearAddNum }}</span>
  114. <span style="width: 15px;height: 24px;font-size: 10px;align-content: end">辆</span>
  115. </div>
  116. </div>
  117. <div style="display: flex;align-items: center">
  118. <div style="position: relative;cursor: pointer" @click="chooseY">
  119. <img src="../../../assets/zhang/publicCar/arcOrange.png" width="97" style="margin: 10px 5px 0 33px">
  120. <div style="position: absolute;width: 55px;color: #FEC72F;top: 5px;left: 55px;font-size: 12px;text-align: center">年度减少车辆数</div>
  121. </div>
  122. <div style="width: 108px;height: 24px;color: #FEC72F;font-size: 34px;margin-bottom: 20px">
  123. <span style="font-family: 'electronicFont'">{{ resourceData.yearReduceNum }}</span>
  124. <span style="width: 15px;height: 24px;font-size: 10px;align-content: end">辆</span>
  125. </div>
  126. </div>
  127. </div>
  128. </div>
  129. </div>
  130. </div>
  131. </div>
  132. <div style="flex: 1" @click="leaveFun"></div>
  133. </div>
  134. </template>
  135. <script>
  136. import LineChart from "@/components/Echarts/LineChart";
  137. import PieChart from "@/components/Echarts/PieChart";
  138. import BarChart from "@/components/Echarts/BarChart.vue";
  139. import echarts from "echarts";
  140. export default {
  141. name: "BuildingSaveDialog",
  142. components: {
  143. BarChart,
  144. PieChart,
  145. LineChart,
  146. },
  147. props: {
  148. carTypeNum: Array,
  149. carUseNum: Array,
  150. carActivationNum: Array,
  151. resourceData:{}
  152. },
  153. data() {
  154. return {
  155. //在线数
  156. pieData: [],
  157. catePieData: [
  158. { value: 40, name: "新能源汽车" },
  159. { value: 20, name: "燃油汽车" },
  160. ],
  161. totalPieData: [
  162. { value: 110, name: "商务车" },
  163. { value: 120, name: "越野车" },
  164. { value: 130, name: "小型客车" },
  165. { value: 140, name: "大型客车" },
  166. { value: 150, name: "小轿车" },
  167. ],
  168. catePieLegend: {
  169. orient: "vertical",
  170. top: 60,
  171. right: 23,
  172. itemWidth: 8, // 设置图例标记的宽度
  173. itemHeight: 8, // 设置图例标记的高度
  174. textStyle: {
  175. color: "#FFF",
  176. },
  177. },
  178. totalPieLegend: {
  179. top: 20,
  180. right: 10,
  181. itemWidth: 8,
  182. itemHeight: 8,
  183. orient: "vertical",
  184. textStyle: {
  185. color: "#FFF",
  186. },
  187. },
  188. pieLegend: {
  189. orient: "vertical",
  190. top: 50,
  191. right: 30,
  192. itemWidth: 8, // 设置图例标记的宽度
  193. itemHeight: 8, // 设置图例标记的高度
  194. textStyle: {
  195. color: "#FFF",
  196. },
  197. },
  198. pieCenter: ["27%", "50%"],
  199. totalCenter: ["30%", "50%"],
  200. catePieCenter: ["27%", "50%"],
  201. pieRadius: ["35%", "50%"],
  202. //各单位终端在线
  203. barData: [],
  204. barAxis: {},
  205. barYAxis: {},
  206. barLegend: {},
  207. personInOutBarData: [
  208. {
  209. name: "员工",
  210. type: "bar",
  211. itemStyle: {
  212. color: "#43DCDB",
  213. //barBorderRadius: [10, 10, 0, 0], // 统一设置四个角的圆角大小
  214. },
  215. barWidth: 10,
  216. data: [110, 120, 130, 140, 150, 160, 155, 145, 135, 125, 115, 15],
  217. },
  218. {
  219. name: "访客",
  220. type: "bar",
  221. itemStyle: {
  222. color: "#FFD296",
  223. //barBorderRadius: [10, 10, 0, 0], // 统一设置四个角的圆角大小
  224. },
  225. barWidth: 10,
  226. data: [10, 20, 30, 40, 50, 60, 55, 45, 35, 25, 15, 5],
  227. },
  228. ],
  229. personInOutBarAxis: {
  230. type: "category",
  231. data: [
  232. "01月",
  233. "02月",
  234. "03月",
  235. "04月",
  236. "05月",
  237. "06月",
  238. "07月",
  239. "08月",
  240. "09月",
  241. "10月",
  242. "11月",
  243. "12月",
  244. ],
  245. axisLabel: {
  246. color: "white", // 设置横坐标轴字体颜色为红色
  247. },
  248. axisLine: {
  249. show: true,
  250. lineStyle: {
  251. color: "#08595B",
  252. },
  253. },
  254. axisTick: {
  255. show: false,
  256. },
  257. splitArea: false,
  258. },
  259. personInOutBarYaxis: {
  260. type: "value",
  261. boundaryGap: [0, 0.01],
  262. name: "人",
  263. nameTextStyle: {
  264. color: "#fff",
  265. },
  266. axisLine: {
  267. show: false,
  268. },
  269. axisLabel: {
  270. color: "white", // 设置横坐标轴字体颜色为红色
  271. },
  272. splitLine: {
  273. show: false,
  274. },
  275. axisTick: {
  276. show: false,
  277. },
  278. splitArea: false,
  279. },
  280. personInOutBarLegend: {
  281. top: 0,
  282. orient: "horizontal",
  283. right: 0,
  284. itemWidth: 17, // 设置图例标记的宽度
  285. itemHeight: 10, // 设置图例标记的高度
  286. textStyle: {
  287. color: "#FFF",
  288. },
  289. },
  290. barGrid: {
  291. top: 30,
  292. left: "2%",
  293. right: "5%",
  294. containLabel: true,
  295. bottom: 0,
  296. },
  297. departmentPersonInOutBarData: [
  298. {
  299. name: "员工",
  300. type: "bar",
  301. itemStyle: {
  302. color: "#43DCDB",
  303. //barBorderRadius: [10, 10, 0, 0], // 统一设置四个角的圆角大小
  304. },
  305. barWidth: 10,
  306. data: [110, 150, 160, 135, 115, 15],
  307. },
  308. {
  309. name: "访客",
  310. type: "bar",
  311. itemStyle: {
  312. color: "#FFD296",
  313. //barBorderRadius: [10, 10, 0, 0], // 统一设置四个角的圆角大小
  314. },
  315. barWidth: 10,
  316. data: [10, 20, 30, 40, 50, 60, 55, 45, 35, 25, 15, 5],
  317. },
  318. ],
  319. departmentPersonInOutBarAxis: {
  320. type: "category",
  321. data: ["财务资产部", "离退休工作部", "后勤保障部", "物资管理部", "数字化工作部", "纪委办公室"],
  322. axisLabel: {
  323. color: "white", // 设置横坐标轴字体颜色为红色
  324. },
  325. axisLine: {
  326. show: true,
  327. lineStyle: {
  328. color: "#08595B",
  329. },
  330. },
  331. axisTick: {
  332. show: false,
  333. },
  334. splitArea: false,
  335. },
  336. departmentPersonInOutBarYaxis: {
  337. type: "value",
  338. boundaryGap: [0, 0.01],
  339. name: "人",
  340. nameTextStyle: {
  341. color: "#fff",
  342. },
  343. axisLine: {
  344. show: false,
  345. },
  346. axisLabel: {
  347. color: "white", // 设置横坐标轴字体颜色为红色
  348. },
  349. splitLine: {
  350. show: false,
  351. },
  352. axisTick: {
  353. show: false,
  354. },
  355. splitArea: false,
  356. },
  357. departmentPersonInOutBarLegend: {
  358. top: 0,
  359. orient: "horizontal",
  360. right: 0,
  361. itemWidth: 17, // 设置图例标记的宽度
  362. itemHeight: 10, // 设置图例标记的高度
  363. textStyle: {
  364. color: "#FFF",
  365. },
  366. },
  367. visitorDataList: [
  368. {
  369. name: "于俊",
  370. time: "2024 / 11 / 15 15:01",
  371. department: "财务资产部",
  372. },
  373. {
  374. name: "于俊",
  375. time: "2024 / 11 / 15 14:58",
  376. department: "财务资产部",
  377. },
  378. {
  379. name: "于俊",
  380. time: "2024 / 11 / 15 14:55",
  381. department: "财务资产部",
  382. },
  383. {
  384. name: "于俊",
  385. time: "2024 / 11 / 15 14:01",
  386. department: "财务资产部",
  387. },
  388. ],
  389. warningList: [
  390. {
  391. name: "国网太原供电公司",
  392. data1: 356,
  393. data2: 100,
  394. data3: 56,
  395. data4: 67,
  396. data5: 133,
  397. },
  398. {
  399. name: "国网临汾供电公司",
  400. data1: 324,
  401. data2: 80,
  402. data3: 95,
  403. data4: 63,
  404. data5: 86,
  405. },
  406. {
  407. name: "国网晋城供电公司",
  408. data1: 286,
  409. data2: 80,
  410. data3: 65,
  411. data4: 46,
  412. data5: 95,
  413. },
  414. {
  415. name: "国网长治供电公司",
  416. data1: 275,
  417. data2: 84,
  418. data3: 72,
  419. data4: 63,
  420. data5: 56,
  421. },
  422. {
  423. name: "国网运城供电公司",
  424. data1: 268,
  425. data2: 70,
  426. data3: 65,
  427. data4: 73,
  428. data5: 60,
  429. },
  430. ],
  431. };
  432. },
  433. created() {
  434. this.handlePie();
  435. this.handleBar();
  436. },
  437. destroyed() {},
  438. beforeDestroy() {},
  439. mounted() {},
  440. methods: {
  441. chooseX(){
  442. this.$emit('chooseX')
  443. },
  444. chooseY(){
  445. this.$emit('chooseY')
  446. },
  447. //实例化饼图
  448. handlePie() {
  449. this.pieData = [
  450. { value: 100, name: "离线数" },
  451. { value: 200, name: "在线数" },
  452. ];
  453. },
  454. //实例化柱状图
  455. handleBar() {
  456. this.barData = [
  457. {
  458. name: "总数",
  459. type: "bar",
  460. itemStyle: {
  461. color: "#43DCDB",
  462. },
  463. barWidth: 10,
  464. data: [320, 332, 201, 334, 390, 100],
  465. },
  466. {
  467. name: "离线数",
  468. type: "bar",
  469. itemStyle: {
  470. color: "#EAA553",
  471. },
  472. barWidth: 10,
  473. data: [220, 232, 301, 334, 190, 200],
  474. },
  475. {
  476. name: "在线数",
  477. type: "bar",
  478. itemStyle: {
  479. color: "#1B5CBB",
  480. },
  481. barWidth: 10,
  482. data: [120, 332, 101, 134, 290, 300],
  483. },
  484. ];
  485. this.barGrid = {
  486. top: 30,
  487. bottom: 0,
  488. left: "2%",
  489. right: "5%",
  490. containLabel: true,
  491. };
  492. this.barLegend = {
  493. right: 20,
  494. top: 0,
  495. itemWidth: 17, // 设置图例标记的宽度
  496. itemHeight: 10, // 设置图例标记的高度
  497. textStyle: {
  498. color: "#FFF",
  499. },
  500. };
  501. this.barAxis = {
  502. type: "category",
  503. data: [
  504. "国网太原供电公司",
  505. "国网运城供电公司",
  506. "国网临汾供电公司",
  507. "国网晋城供电公司",
  508. "国网吕梁供电公司",
  509. ],
  510. axisLabel: {
  511. color: "white", // 设置横坐标轴字体颜色为红色
  512. rotate:-50
  513. },
  514. axisLine: {
  515. lineStyle: {
  516. color: "#08595B",
  517. },
  518. },
  519. axisTick: {
  520. show: false,
  521. },
  522. splitArea: false,
  523. };
  524. this.barYAxis = {
  525. name: "数量(个)",
  526. nameTextStyle: {
  527. color: "#fff",
  528. padding: [0, 0, 0, 5],
  529. fontSize: 14,
  530. },
  531. axisLabel: {
  532. formatter: "{value}",
  533. color: "#FFF",
  534. },
  535. axisLine: {
  536. show: false,
  537. },
  538. axisTick: {
  539. show: false,
  540. },
  541. splitLine: {
  542. show: false,
  543. },
  544. splitArea: false,
  545. };
  546. },
  547. //鼠标移出
  548. leaveFun() {
  549. setTimeout(() => {
  550. this.$emit("closeDialog");
  551. }, 200);
  552. },
  553. preventDefault() {
  554. console.log(11);
  555. },
  556. },
  557. };
  558. </script>
  559. <style lang="scss" scoped>
  560. .c1 {
  561. width: 580px;
  562. height: 1000px;
  563. padding-top: 19px;
  564. background: url("../../../assets/images/main/main_bg.png") no-repeat;
  565. background-size: 100% 100%;
  566. }
  567. .Img {
  568. width: 284px;
  569. height: 32px;
  570. }
  571. .c1_bg{
  572. width: 550px;
  573. height: 920px;
  574. background: url("../../../assets/images/main/components_long_bg.png") no-repeat;
  575. background-size: 100% 100%;
  576. margin-top: 4px;
  577. }
  578. .overTitle{
  579. width: 100%;
  580. top: -5px;
  581. color: white;
  582. font-family: 'PingFangSC';
  583. font-size: 20px;
  584. font-weight: 900;
  585. position: absolute;
  586. display: flex;
  587. align-items: center;
  588. justify-content: center;
  589. }
  590. .c1_title{
  591. width: 100%;
  592. height: 36px;
  593. background: url("../../../assets/images/main/title_pro_long.png") no-repeat;
  594. color: #00FFFF;
  595. margin: 20px 0 0 15px;
  596. position: relative;
  597. }
  598. .c1_title::after{
  599. content: '公务车实有数';
  600. position: absolute;
  601. left: 20px;
  602. top: -5px;
  603. }
  604. .carNum{
  605. width: 40px;
  606. height: 58px;
  607. margin-right: 3px;
  608. background: url("../../../assets/zhang/publicCar/numBack.png") no-repeat;
  609. color: #00FFFF;
  610. font-size: 40px;
  611. display: flex;
  612. justify-content: center;
  613. align-items: center;
  614. font-style: oblique;
  615. }
  616. .carText{
  617. width: 40px;
  618. height: 58px;
  619. color: #00FFFF;
  620. font-size: 24px;
  621. margin-left: 3px;
  622. display: flex;
  623. flex-direction: column;
  624. justify-content: end;
  625. }
  626. .c1_titleText{
  627. width: 100%;
  628. height: 32px;
  629. margin-left: 35px;
  630. margin-bottom: 10px;
  631. background: url("../../../assets/zhang/publicCar/titleBox.png") no-repeat;
  632. position: relative;
  633. }
  634. .c1_titleText::after{
  635. content: '车辆类型';
  636. position: absolute;
  637. color: #FFFFFF;
  638. font-size: 12px;
  639. left: 20px;
  640. top: 8px;
  641. }
  642. .carTypeNumBox{
  643. width: 95px;
  644. height: 50px;
  645. }
  646. .c1_titleText_half1{
  647. height: 32px;
  648. margin-left: 35px;
  649. margin-bottom: 10px;
  650. background: url("../../../assets/zhang/publicCar/titleBox.png") no-repeat;
  651. position: relative;
  652. }
  653. .c1_titleText_half1::after{
  654. content: '车辆用途';
  655. position: absolute;
  656. color: #FFFFFF;
  657. font-size: 12px;
  658. left: 20px;
  659. top: 8px;
  660. }
  661. .c1_titleText_half2{
  662. height: 32px;
  663. margin-left: 35px;
  664. margin-bottom: 10px;
  665. background: url("../../../assets/zhang/publicCar/titleBox.png") no-repeat;
  666. position: relative;
  667. }
  668. .c1_titleText_half2::after{
  669. content: '动力类型';
  670. position: absolute;
  671. color: #FFFFFF;
  672. font-size: 12px;
  673. left: 20px;
  674. top: 8px;
  675. }
  676. .c1_title_half{
  677. width: 100%;
  678. height: 36px;
  679. background: url("../../../assets/images/main/title_pro.png") no-repeat;
  680. color: #00FFFF;
  681. margin: 20px 0 0 15px;
  682. position: relative;
  683. }
  684. </style>