site-more.css 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298
  1. .page-background{
  2. display: block;
  3. position: fixed;
  4. top: 0;
  5. left: 0;
  6. width: 100%;
  7. height: 100%;
  8. }
  9. .body{
  10. width: 100%;
  11. height: 100%;
  12. position: relative;
  13. z-index: 1;
  14. }
  15. .title{
  16. font-size: 16px;
  17. font-weight: bold;
  18. }
  19. .subtitle{
  20. font-size: 12px;
  21. color: #aaa;
  22. margin-top: 10px;
  23. }
  24. /* 面包屑 */
  25. .crumbs{
  26. display: flex;
  27. align-items: center;
  28. height: 60px;
  29. border-radius: 8px;
  30. background-color: #fff;
  31. margin: 15px 0;
  32. }
  33. .crumbs .item{
  34. flex: 1;
  35. display: flex;
  36. align-items: center;
  37. justify-content: center;
  38. flex-direction: column;
  39. }
  40. .crumbs .item .value{
  41. font-size: 16px;
  42. font-weight: bold;
  43. color: #3EB6F8;
  44. }
  45. .crumbs .item .name{
  46. font-size: 12px;
  47. }
  48. /* 切换 */
  49. .switch{
  50. display: flex;
  51. align-items: center;
  52. justify-content: space-between;
  53. width: 100%;
  54. height: 44px;
  55. background-color: #fff;
  56. border-radius: 100pc;
  57. position: relative;
  58. }
  59. .switch .bg{
  60. width: 50%;
  61. height: 40px;
  62. background-color: #3EB6F8;
  63. border-radius: 100pc;
  64. position: absolute;
  65. top: 2px;
  66. left: 2px;
  67. transition: all 200ms ease;
  68. }
  69. .switch .contet{
  70. display: flex;
  71. align-items: center;
  72. justify-content: space-between;
  73. width: 100%;
  74. }
  75. .switch .text{
  76. flex: 1;
  77. display: flex;
  78. align-items: center;
  79. justify-content: center;
  80. font-size: 14px;
  81. position: relative;
  82. z-index: 2;
  83. transition: color 200ms ease;
  84. }
  85. .switch .text:first-child,
  86. .switch.another .text:last-child{
  87. color: #fff;
  88. }
  89. .switch.another .text:first-child{
  90. color: inherit;
  91. }
  92. .switch.another .bg{
  93. transform: translateX(100%);
  94. }
  95. .list{
  96. height: var(--list-height);
  97. overflow: auto;
  98. padding: 10px 0;
  99. }
  100. .list::-webkit-scrollbar{
  101. display: none;
  102. }
  103. /* 设备列表 */
  104. .terminals{
  105. margin-top: 10px;
  106. }
  107. .terminal-item{
  108. display: flex;
  109. align-items: center;
  110. justify-content: space-between;
  111. background-color: #fff;
  112. border-radius: 8px;
  113. height: 78px;
  114. padding: 10px;
  115. }
  116. .terminal-item+.terminal-item{
  117. margin-top: 10px;
  118. }
  119. .terminal-item .state{
  120. display: flex;
  121. width: 58px;
  122. height: 58px;
  123. border-radius: 100%;
  124. margin-right: 10px;
  125. padding: 4px;
  126. background-image: linear-gradient(to right, #ccc 0%, #ccc 35.8%, #c7cccf 65.9%, #e8e8e8 80.4%, #c8c8c8 100%);
  127. }
  128. .terminal-item .state .cake{
  129. display: flex;
  130. align-items: center;
  131. justify-content: center;
  132. flex-direction: column;
  133. width: 100%;
  134. height: 100%;
  135. border-radius: 100%;
  136. background-color: #eee;
  137. }
  138. .terminal-item .state .icon{
  139. display: block;
  140. width: 20px;
  141. height: 20px;
  142. }
  143. .terminal-item .state .name{
  144. font-size: 12px;
  145. margin-top: 3px;
  146. }
  147. .terminal-item .info{
  148. flex: 1;
  149. }
  150. .terminal-item .info .name{
  151. font-size: 14px;
  152. font-weight: bold;
  153. margin-bottom: 5px;
  154. }
  155. .terminal-item .info .subinfo{
  156. font-size: 12px;
  157. color: #aaa;
  158. }
  159. .terminal-item .state.green{
  160. background-image: linear-gradient(to right, #73e6a0 0%, #3eff8a 30%, #4edc86 60%, #b4ffd1 75%, #6be49a 100%);
  161. }
  162. .terminal-item .state.green .cake{
  163. background-color: #ECFFF4;
  164. }
  165. .terminal-item .state.blue{
  166. background-image: linear-gradient(to right, #3eb6f8 0%, #81d8ff 35%, #75ceff 65%, #94e2ff 80%, #2cb5ff 100%);
  167. }
  168. .terminal-item .state.blue .cake{
  169. background-color: #E9F9FF;
  170. }
  171. .terminal-item .state.orange{
  172. background-image: linear-gradient(to right, #FFE9BC 0%, #FFD070 35%, #FFD887 65%, #FFD887 80%, #FFC246 100%);
  173. }
  174. .terminal-item .state.orange .cake{
  175. background-color: #FFF8EB;
  176. }
  177. .terminal-item .state.err{
  178. background-image: linear-gradient(to right, #FFC4C4 0%, #F77474 35%, #FFAAAA 65%, #FFAAAA 80%, #F55B5B 100%);
  179. }
  180. .terminal-item .state.err .cake{
  181. background-color: #FFE9E9;
  182. }
  183. /* 价格列表 */
  184. .price{
  185. padding: 10px;
  186. background-color: #fff;
  187. border-radius: 8px;
  188. border: 1px solid transparent;
  189. position: relative;
  190. overflow: hidden;
  191. }
  192. .price + .price{
  193. margin-top: 10px;
  194. }
  195. .price .header{
  196. display: flex;
  197. align-items: center;
  198. }
  199. .price .header .icon{
  200. display: flex;
  201. align-items: center;
  202. justify-content: center;
  203. width: 20px;
  204. height: 20px;
  205. font-size: 14px;
  206. color: #fff;
  207. border-radius: 4px;
  208. background-color: #ccc;
  209. margin-right: 14px;
  210. }
  211. .price .header .value{
  212. font-size: 14px;
  213. font-weight: bold;
  214. }
  215. .price .info{
  216. background-color: #F6F6F6;
  217. border-radius: 8px;
  218. padding: 10px;
  219. font-size: 14px;
  220. margin: 10px 0;
  221. }
  222. .price .info .row{
  223. display: flex;
  224. align-items: center;
  225. justify-content: space-between;
  226. height: 30px;
  227. }
  228. .price .info .row .unit{
  229. color: #aaa;
  230. margin-left: 5px;
  231. }
  232. .price .footer{
  233. display: flex;
  234. align-items: center;
  235. justify-content: space-between;
  236. font-size: 14px;
  237. }
  238. .price.active{
  239. border-color: #47B9F8;
  240. }
  241. .price.active .footer,
  242. .price.active .header{
  243. color: #47B9F8;
  244. }
  245. .price.active .header .icon{
  246. background: linear-gradient(to right,#8FF8FB,#47AEFF);
  247. }
  248. .price.active::after{
  249. content: '当前时段';
  250. display: flex;
  251. width: 76px;
  252. height: 30px;
  253. font-size: 14px;
  254. align-items: center;
  255. justify-content: center;
  256. color: #fff;
  257. background: linear-gradient(to right,#8FF8FB,#47AEFF);
  258. position: absolute;
  259. top: 0;
  260. right: 0;
  261. border-radius: 0 0 0 8px;
  262. text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.1);
  263. }
  264. .price.active .row .name{
  265. font-weight: bolder;
  266. }
  267. .price.active .row .value,.price.active .row .unit{
  268. font-size: 18px;
  269. font-weight: bolder;
  270. color: #FF5D50;
  271. }
  272. /* 底部 */
  273. .underside{
  274. position: fixed;
  275. left: 0;
  276. right: 0;
  277. bottom: 0;
  278. z-index: 10;
  279. padding: 10px;
  280. padding-bottom: 0;
  281. }
  282. .underside .scan{
  283. display: flex;
  284. align-items: center;
  285. justify-content: center;
  286. width: 100%;
  287. height: 50px;
  288. border-radius: 8px;
  289. font-size: 14px;
  290. background: linear-gradient(to right,#8FF8FB,#47AEFF);
  291. }