You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

599 lines
9.9 KiB

1 year ago
  1. body{
  2. line-height: 1.15;
  3. font-size: 0.5rem;
  4. margin: 0;
  5. padding: 0;
  6. background-repeat: no-repeat;
  7. background-position: 0 0 / cover;
  8. background-color: #101129;
  9. }
  10. *{
  11. margin: 0;
  12. padding: 0;
  13. font-weight: normal;
  14. }
  15. ul{
  16. list-style: none;
  17. }
  18. a{
  19. text-decoration: none;
  20. }
  21. .viewport {
  22. /* 限定大小 */
  23. /*min-width: 824px;
  24. max-width: 1920px;*/
  25. /*min-height: 780px;*/
  26. margin: 0 auto;
  27. background: url(../images/logo.png) no-repeat 0 0 / contain;
  28. display: flex;
  29. padding: 8rem 0.833rem 0;
  30. }
  31. .column{
  32. flex: 3;
  33. position: relative;
  34. }
  35. .column:nth-child(2){
  36. flex: 4;
  37. margin: 1.333rem 0.833rem 0;
  38. }
  39. .panel {
  40. /* 边框 */
  41. box-sizing: border-box;
  42. border: 2px solid #00000000;
  43. border-image: url(../images/border.png) 51 38 21 132;
  44. border-width: 2.125rem 1.583rem 0.875rem 5.5rem;
  45. position: relative;
  46. margin-bottom: 0.833rem;
  47. }
  48. .panel .inner {
  49. /* 装内容 */
  50. /* height: 60px; */
  51. position: absolute;
  52. top: -2.125rem;
  53. right: -1.583rem;
  54. bottom: -0.875rem;
  55. left: -5.5rem;
  56. padding: 1rem 1.5rem;
  57. }
  58. .panel h3{
  59. font-size: 0.833rem;
  60. color: #fff;
  61. }
  62. /* 概览区域 */
  63. .overview{
  64. height: 4.583rem;
  65. }
  66. .overview .inner{
  67. display: flex;
  68. justify-content: space-between;
  69. }
  70. .overview h4{
  71. font-size: 1.167rem;
  72. padding-left: 0.2rem;
  73. color: #fff;
  74. margin-bottom: 0.333rem
  75. }
  76. .overview span{
  77. font-size: 0.667rem;
  78. color: #4c9bfd;
  79. }
  80. /* 监控 */
  81. .monitor{
  82. height: 23rem;
  83. }
  84. .monitor .inner{
  85. padding: 1rem 0;
  86. display: flex;
  87. flex-direction: column;
  88. }
  89. .monitor .tabs{
  90. padding: 0 1.5rem;
  91. margin-bottom: 0.75rem;
  92. }
  93. .monitor .tabs a{
  94. color: #1950c4;
  95. font-size: 0.85rem;
  96. padding: 0 1.125rem;
  97. }
  98. .monitor .tabs a:first-child{
  99. /*border-right: 0.083rem solid #00f2f1;*/
  100. padding-left: 0;
  101. }
  102. .monitor .tabs a.active{
  103. color: #fff;
  104. }
  105. .monitor .content{
  106. flex: 1;
  107. display: none;
  108. position: relative;
  109. }
  110. .monitor .head{
  111. background: rgba(255, 255, 255, 0.1);
  112. font-size: 0.9rem;
  113. padding: 0.5rem 1.5rem;
  114. /*color: #68d8fe;*/
  115. color: white;
  116. display: flex;
  117. justify-content: space-between;
  118. line-height: 1.05;
  119. }
  120. .monitor .col:nth-child(1) {
  121. width: 3.2rem;
  122. }
  123. .monitor .col:nth-child(2) {
  124. width: 8.4rem;
  125. /* 不换行 一行省略*/
  126. white-space: nowrap;
  127. overflow: hidden;
  128. text-overflow: ellipsis;
  129. }
  130. .monitor .col:nth-child(3) {
  131. width: 3.2rem;
  132. }
  133. .monitor .marquee-view{
  134. position: absolute;
  135. top: 1.6rem;/*//!!!!!!!!!!!!!!*/
  136. bottom: 0;
  137. width: 100%;
  138. overflow: hidden;
  139. }
  140. .monitor .row{
  141. line-height: 1.05;
  142. padding: 0.5rem 1.5rem;
  143. /*color: #61a8ff;*/
  144. color: white;
  145. font-size: 0.85rem;
  146. position: relative;
  147. display: flex;
  148. justify-content: space-between;
  149. }
  150. .monitor .row:hover{
  151. color:#68d8ff;
  152. background: rgba(255, 255, 255, 0.1);
  153. }
  154. .monitor .row:hover .icon-dot{
  155. opacity: 1;
  156. }
  157. .monitor .icon-dot{
  158. position: absolute;
  159. left: 0.64rem;
  160. opacity: 0;
  161. }
  162. .monitor .marquee-view{
  163. position: absolute;
  164. top: 1.6rem;
  165. bottom: 0;
  166. width: 100%;
  167. overflow: hidden;
  168. }
  169. .monitor .row{
  170. line-height: 1.05;
  171. padding: 0.5rem 1.5rem;
  172. /*color: #61a8ff;*/
  173. color:white;
  174. font-size: 0.85rem;
  175. position: relative;
  176. display: flex;
  177. justify-content: space-between;
  178. }
  179. .monitor .row:hover{
  180. color:#68d8ff;
  181. background: rgba(255, 255, 255, 0.1);
  182. }
  183. .monitor .row:hover .icon-dot{
  184. opacity: 1;
  185. }
  186. .monitor .icon-dot{
  187. position: absolute;
  188. left: 0.64rem;
  189. opacity: 0;
  190. }
  191. /* ------------------------------------------------------------动画 */
  192. @keyframes row{
  193. 0%{}
  194. 100%{
  195. transform: translateY(-50%);
  196. }
  197. }
  198. /* 调用动画 */
  199. .monitor .marquee {
  200. /* //infinite永久调用动画 */
  201. animation: row 10s linear infinite;
  202. }
  203. /*鼠标划入 停止动画 */
  204. .monitor .marquee:hover {
  205. animation-play-state: paused;
  206. }
  207. /* 点位 */
  208. .point {
  209. height: 14.167rem;
  210. }
  211. .point .chart {
  212. display: flex;
  213. margin-top: 1rem;
  214. justify-content: space-between;
  215. }
  216. .point .pie {
  217. width: 13rem;
  218. height: 10rem;
  219. margin-left: -0.4rem;
  220. }
  221. .point .data {
  222. display: flex;
  223. flex-direction: column;
  224. justify-content: space-between;
  225. width: 7rem;
  226. padding: 1.5rem 1.25rem;
  227. box-sizing: border-box;
  228. background-image: url(../images/rect.png);
  229. background-size: cover;
  230. }
  231. .point h4 {
  232. margin-bottom: 0.5rem;
  233. font-size: 1.167rem;
  234. color: #fff;
  235. }
  236. .point span {
  237. display: block;
  238. color: #4c9bfd;
  239. font-size: 0.667rem;
  240. }
  241. /* 地图 */
  242. .map {
  243. height: 24.1rem;
  244. margin-bottom: 0.833rem;
  245. display: flex;
  246. flex-direction: column;
  247. }
  248. .map h3 {
  249. line-height: 1;
  250. padding: 0.667rem 0;
  251. margin: 0;
  252. font-size: 0.833rem;
  253. color: #fff;
  254. }
  255. .map .icon-cube {
  256. color: #68d8fe;
  257. }
  258. .map .chart {
  259. flex: 1;
  260. background-color: rgba(255, 255, 255, 0.05);
  261. }
  262. .map .geo {
  263. width: 100%;
  264. height: 100%;
  265. }
  266. /* 用户模块 */
  267. .users {
  268. height: 20rem;
  269. display: flex;
  270. }
  271. .users .chart {
  272. display: flex;
  273. margin-top: 1rem;
  274. }
  275. .users .bar {
  276. width: 24.5rem;
  277. height: 10rem;
  278. }
  279. .users .data {
  280. display: flex;
  281. flex-direction: column;
  282. justify-content: space-between;
  283. width: 7rem;
  284. padding: 1.5rem 1.25rem;
  285. box-sizing: border-box;
  286. background-image: url(../images/rect.png);
  287. background-size: cover;
  288. }
  289. .users h4 {
  290. margin-bottom: 0.5rem;
  291. font-size: 1.167rem;
  292. color: #fff;
  293. }
  294. .users span {
  295. display: block;
  296. color: #4c9bfd;
  297. font-size: 0.667rem;
  298. }
  299. /* 订单 */
  300. .order {
  301. height: 6.167rem;
  302. }
  303. .order .filter {
  304. display: flex;
  305. }
  306. .order .filter a {
  307. display: block;
  308. height: 0.75rem;
  309. line-height: 1;
  310. padding: 0 0.75rem;
  311. color: #1950c4;
  312. font-size: 0.75rem;
  313. border-right: 0.083rem solid #00f2f1;
  314. }
  315. .order .filter a:first-child {
  316. padding-left: 0;
  317. }
  318. .order .filter a:last-child {
  319. border-right: none;
  320. }
  321. .order .filter a.active {
  322. color: #fff;
  323. font-size: 0.833rem;
  324. }
  325. .order .data {
  326. display: flex;
  327. margin-top: 0.833rem;
  328. }
  329. .order .item {
  330. width: 50%;
  331. }
  332. .order h4 {
  333. font-size: 1.167rem;
  334. color: #fff;
  335. margin-bottom: 0.417rem;
  336. }
  337. .order span {
  338. display: block;
  339. color: #4c9bfd;
  340. font-size: 0.667rem;
  341. }
  342. /* 销售区域 */
  343. .sales {
  344. height: 10.333rem;
  345. }
  346. .sales .caption {
  347. display: flex;
  348. line-height: 1;
  349. }
  350. .sales h3 {
  351. height: 0.75rem;
  352. padding-right: 0.75rem;
  353. border-right: 0.083rem solid #00f2f1;
  354. }
  355. .sales a {
  356. padding: 0.167rem;
  357. font-size: 0.667rem;
  358. margin: -0.125rem 0 0 0.875rem;
  359. border-radius: 0.125rem;
  360. color: #0bace6;
  361. }
  362. .sales a.active {
  363. background-color: #4c9bfd;
  364. color: #fff;
  365. }
  366. .sales .inner {
  367. display: flex;
  368. flex-direction: column;
  369. }
  370. .sales .chart {
  371. flex: 1;
  372. padding-top: 0.6rem;
  373. position: relative;
  374. }
  375. .sales .label {
  376. position: absolute;
  377. left: 1.75rem;
  378. top: 0.75rem;
  379. color: #4996f5;
  380. font-size: 0.583rem;
  381. }
  382. .sales .line {
  383. width: 100%;
  384. height: 100%;
  385. }
  386. /* 渠道区块 */
  387. .wrap {
  388. display: flex;
  389. }
  390. .channel,
  391. .quarter {
  392. flex: 1;
  393. height: 9.667rem;
  394. }
  395. .channel {
  396. margin-right: 0.833rem;
  397. }
  398. .channel .data {
  399. overflow: hidden;
  400. }
  401. .channel .item {
  402. margin-top: 0.85rem;
  403. }
  404. .channel .item:first-child {
  405. float: left;
  406. }
  407. .channel .item:last-child {
  408. float: right;
  409. }
  410. .channel h4 {
  411. color: #fff;
  412. font-size: 1.333rem;
  413. margin-bottom: 0.2rem;
  414. }
  415. .channel small {
  416. font-size: 50%;
  417. }
  418. .channel span {
  419. display: block;
  420. color: #4c9bfd;
  421. font-size: 0.583rem;
  422. }
  423. /* 季度区块 */
  424. .quarter .inner {
  425. display: flex;
  426. flex-direction: column;
  427. margin: 0 -0.25rem;
  428. }
  429. .quarter .chart {
  430. flex: 1;
  431. padding-top: 0.75rem;
  432. }
  433. .quarter .box {
  434. position: relative;
  435. }
  436. .quarter .label {
  437. transform: translate(-50%, -30%);
  438. color: #fff;
  439. font-size: 1.25rem;
  440. position: absolute;
  441. left: 50%;
  442. top: 50%;
  443. }
  444. .quarter .label small {
  445. font-size: 50%;
  446. }
  447. .quarter .gauge {
  448. height: 3.5rem;
  449. }
  450. .quarter .data {
  451. display: flex;
  452. justify-content: space-between;
  453. }
  454. .quarter .item {
  455. width: 50%;
  456. }
  457. .quarter h4 {
  458. color: #fff;
  459. font-size: 1rem;
  460. margin-bottom: 0.4rem;
  461. }
  462. .quarter span {
  463. display: block;
  464. width: 100%;
  465. white-space: nowrap;
  466. text-overflow: ellipsis;
  467. overflow: hidden;
  468. color: #4c9bfd;
  469. font-size: 0.583rem;
  470. }
  471. /* 排行榜 */
  472. .top {
  473. height: 11.8rem;
  474. }
  475. .top .inner {
  476. display: flex;
  477. }
  478. .top .all {
  479. display: flex;
  480. flex-direction: column;
  481. width: 7rem;
  482. color: #4c9bfd;
  483. font-size: 0.6rem;
  484. vertical-align: middle;
  485. }
  486. .top .all ul {
  487. padding-left: 0.5rem;
  488. margin-top: 0.5rem;
  489. flex: 1;
  490. display: flex;
  491. flex-direction: column;
  492. justify-content: space-around;
  493. }
  494. .top .all li {
  495. overflow: hidden;
  496. }
  497. .top .all [class^="icon-"] {
  498. font-size: 1.5rem;
  499. vertical-align: middle;
  500. margin-right: 0.5rem;
  501. }
  502. .top .province {
  503. flex: 1;
  504. display: flex;
  505. flex-direction: column;
  506. color: #fff;
  507. }
  508. .top .province i {
  509. padding: 0 0.5rem;
  510. margin-top: 0.208rem;
  511. float: right;
  512. font-style: normal;
  513. font-size: 0.583rem;
  514. color: #0bace6;
  515. }
  516. .top .province s {
  517. display: inline-block;
  518. transform: scale(0.8);
  519. text-decoration: none;
  520. }
  521. .top .province .icon-up {
  522. color: #dc3c33;
  523. }
  524. .top .province .icon-down {
  525. color: #36be90;
  526. }
  527. .top .province .data {
  528. flex: 1;
  529. display: flex;
  530. margin-top: 0.6rem;
  531. }
  532. .top .province ul {
  533. flex: 1;
  534. line-height: 1;
  535. margin-bottom: 0.25rem;
  536. }
  537. .top .province ul li {
  538. display: flex;
  539. justify-content: space-between;
  540. }
  541. .top .province ul span {
  542. display: block;
  543. overflow: hidden;
  544. white-space: nowrap;
  545. text-overflow: ellipsis;
  546. }
  547. .top .province ul.sup {
  548. font-size: 0.583rem;
  549. }
  550. .top .province ul.sup li {
  551. color: #4995f4;
  552. padding: 0.5rem;
  553. }
  554. .top .province ul.sup li.active {
  555. color: #a3c6f2;
  556. background-color: rgba(10, 67, 188, 0.2);
  557. }
  558. .top .province ul.sub {
  559. display: flex;
  560. flex-direction: column;
  561. justify-content: space-around;
  562. font-size: 0.5rem;
  563. background-color: rgba(10, 67, 188, 0.2);
  564. }
  565. .top .province ul.sub li {
  566. color: #52ffff;
  567. padding: 0.417rem 0.6rem;
  568. }
  569. .clock {
  570. position: absolute;
  571. top: -1.5rem;
  572. right: 1.667rem;
  573. font-size: 0.833rem;
  574. color: #0bace6;
  575. }
  576. .clock i {
  577. margin-right: 5px;
  578. font-size: 0.833rem;
  579. }
  580. @media screen and (max-width: 1600px) {
  581. .top span {
  582. transform: scale(0.9);
  583. }
  584. .top .province ul.sup li {
  585. padding: 0.4rem 0.5rem;
  586. }
  587. .top .province ul.sub li {
  588. padding: 0.23rem 0.5rem;
  589. }
  590. .quarter span {
  591. transform: scale(0.9);
  592. }
  593. }