index.css 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248
  1. /**
  2. * 这里是uni-app内置的常用样式变量
  3. *
  4. * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
  5. * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
  6. *
  7. */
  8. /**
  9. * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
  10. *
  11. * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
  12. */
  13. /* 颜色变量 */
  14. /* 行为相关颜色 */
  15. /* 文字基本颜色 */
  16. /* 背景颜色 */
  17. /* 边框颜色 */
  18. /* 尺寸变量 */
  19. /* 文字尺寸 */
  20. /* 图片尺寸 */
  21. /* Border Radius */
  22. /* 水平间距 */
  23. /* 垂直间距 */
  24. /* 透明度 */
  25. /* 文章场景相关 */
  26. .container[data-v-1cf27b2a] {
  27. background-color: #f4f6f8;
  28. display: flex;
  29. flex-direction: column;
  30. height: 100vh;
  31. padding: 0.625rem 0.9375rem 0.9375rem 0.9375rem;
  32. background-color: #f4f6f8;
  33. font-family: "Arial", "Microsoft YaHei", sans-serif;
  34. box-sizing: border-box;
  35. overflow: hidden;
  36. /* 隐藏页面滚动,让轮播在表格内进行 */
  37. }
  38. .header[data-v-1cf27b2a] {
  39. padding-top: 0.3125rem;
  40. text-align: center;
  41. margin-bottom: 0.9375rem;
  42. position: relative;
  43. display: flex;
  44. align-items: center;
  45. justify-content: center;
  46. height: 3.125rem;
  47. }
  48. .title[data-v-1cf27b2a] {
  49. font-size: 1.875rem;
  50. font-weight: bold;
  51. color: #1e3a8a;
  52. }
  53. .current-time[data-v-1cf27b2a] {
  54. display: flex;
  55. align-items: center;
  56. position: absolute;
  57. display: flex;
  58. height: 3.125rem;
  59. right: 0;
  60. font-size: 1.71875rem;
  61. color: #666;
  62. background-color: rgba(30, 58, 138, 0.1);
  63. padding: 0 0.9375rem;
  64. border-radius: 0.375rem;
  65. font-weight: bold;
  66. }
  67. .table-container[data-v-1cf27b2a] {
  68. flex: 1;
  69. margin-bottom: 0.9375rem;
  70. border-radius: 0.75rem;
  71. overflow: hidden;
  72. box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.08);
  73. background-color: #ffffff;
  74. border: 0.0625rem solid #e0e0e0;
  75. display: flex;
  76. flex-direction: column;
  77. }
  78. .table-header[data-v-1cf27b2a] {
  79. background-color: #f0f4f8;
  80. color: white;
  81. font-weight: bold;
  82. }
  83. .header-row[data-v-1cf27b2a] {
  84. background-color: #1e3a8a;
  85. color: white;
  86. font-weight: bold;
  87. }
  88. .table-row[data-v-1cf27b2a] {
  89. display: flex;
  90. border-bottom: 0.0625rem solid #dedede;
  91. }
  92. .body-row[data-v-1cf27b2a] {
  93. padding: 0.3125rem 0;
  94. }
  95. .table-row[data-v-1cf27b2a]:last-child {
  96. border-bottom: none;
  97. }
  98. .cell[data-v-1cf27b2a] {
  99. padding: 0.75rem 0.5rem;
  100. font-size: 1.5625rem;
  101. text-align: center;
  102. color: #333;
  103. }
  104. .name[data-v-1cf27b2a] {
  105. width: 25%;
  106. }
  107. .time[data-v-1cf27b2a] {
  108. width: 25%;
  109. }
  110. .status[data-v-1cf27b2a] {
  111. width: 25%;
  112. }
  113. .status-tag[data-v-1cf27b2a] {
  114. padding: 0.25rem 0.625rem;
  115. border-radius: 1rem;
  116. font-size: 1.5rem;
  117. font-weight: 500;
  118. }
  119. .status-observing[data-v-1cf27b2a] {
  120. background-color: #e3f2fd;
  121. color: #007bff;
  122. border: 0.0625rem solid #9acffa;
  123. }
  124. .status-completed[data-v-1cf27b2a] {
  125. background-color: #e8f5e8;
  126. color: #28a745;
  127. border: 0.0625rem solid #8bc34a;
  128. }
  129. .status-warning[data-v-1cf27b2a] {
  130. background-color: #ffebee;
  131. color: #c62828;
  132. border: 0.0625rem solid #ef9a9a;
  133. }
  134. .item-observing[data-v-1cf27b2a] {
  135. background-color: #e3f2fd;
  136. }
  137. .item-completed[data-v-1cf27b2a] {
  138. background-color: #e8f5e8;
  139. }
  140. .item-warning[data-v-1cf27b2a] {
  141. background-color: #ffebee;
  142. }
  143. .item-hasleft[data-v-1cf27b2a] {
  144. background-color: #e3f2fd;
  145. }
  146. .table-header[data-v-1cf27b2a] {
  147. flex: 0 0 auto;
  148. overflow: hidden;
  149. }
  150. /* 保持表格形式的轮播样式 */
  151. .table-body-container[data-v-1cf27b2a] {
  152. flex: 1;
  153. overflow: hidden;
  154. background-color: #fafafa;
  155. position: relative;
  156. }
  157. .table-body-wrapper[data-v-1cf27b2a] {
  158. display: block;
  159. }
  160. .table-body-wrapper.animate[data-v-1cf27b2a] {
  161. animation: scrollUp-1cf27b2a 20s linear infinite;
  162. }
  163. @keyframes scrollUp-1cf27b2a {
  164. 0% {
  165. transform: translateY(0);
  166. }
  167. 100% {
  168. transform: translateY(calc(-50% - 1px));
  169. /* 减去1px确保无缝衔接 */
  170. }
  171. }
  172. .empty[data-v-1cf27b2a] {
  173. text-align: center;
  174. padding: 1.875rem;
  175. color: #999;
  176. font-style: italic;
  177. font-size: 1.25rem;
  178. }
  179. .status-bar-bottom[data-v-1cf27b2a] {
  180. padding: 0.75rem 0.9375rem;
  181. background-color: #ffffff;
  182. box-shadow: 0 -0.125rem 0.625rem rgba(0, 0, 0, 0.05);
  183. border-radius: 0.75rem;
  184. display: flex;
  185. gap: 0.5rem;
  186. }
  187. .status-text-box[data-v-1cf27b2a] {
  188. display: flex;
  189. align-items: center;
  190. font-size: 0.875rem;
  191. }
  192. .dot[data-v-1cf27b2a] {
  193. color: #d32f2f;
  194. font-size: 1.25rem;
  195. }
  196. .dot-connecting[data-v-1cf27b2a] {
  197. color: #f9ae3d;
  198. }
  199. .dot-connected[data-v-1cf27b2a] {
  200. color: #28a745;
  201. }
  202. .dot-disconnected[data-v-1cf27b2a] {
  203. color: #d32f2f;
  204. }
  205. .status-text[data-v-1cf27b2a] {
  206. color: #555;
  207. }
  208. .status-text[data-v-1cf27b2a] {
  209. margin-left: 0.5rem;
  210. }
  211. .title_color[data-v-1cf27b2a] {
  212. color: #fff;
  213. }
  214. .ip-input-group[data-v-1cf27b2a] {
  215. display: flex;
  216. align-items: center;
  217. margin-left: 0.5rem;
  218. flex-wrap: wrap;
  219. gap: 0.375rem;
  220. }
  221. .ip-label[data-v-1cf27b2a] {
  222. font-size: 0.875rem;
  223. color: #555;
  224. }
  225. .ip-input[data-v-1cf27b2a],
  226. .port-input[data-v-1cf27b2a] {
  227. border: 0.0625rem solid #ddd;
  228. border-radius: 0.375rem;
  229. padding: 0.375rem 0.625rem;
  230. font-size: 0.875rem;
  231. width: 6.25rem;
  232. }
  233. .port-input[data-v-1cf27b2a] {
  234. width: 5rem;
  235. }
  236. .colon[data-v-1cf27b2a] {
  237. font-size: 1rem;
  238. color: #666;
  239. margin: 0 0.25rem;
  240. }
  241. .btn-reconnect[data-v-1cf27b2a] {
  242. background-color: #007aff;
  243. color: white;
  244. font-size: 0.75rem;
  245. padding: 0 0.5rem;
  246. border-radius: 0.375rem;
  247. }