index.less 9.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547
  1. @import './realdark';
  2. @import './default';
  3. @import './cus';
  4. .body, html {
  5. width: 100%;
  6. height: 100%;
  7. background-color: #f6f8f9;
  8. }
  9. a, button, input, textarea {
  10. -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  11. box-sizing: border-box;
  12. outline: none !important;
  13. -webkit-appearance: none;
  14. }
  15. * {
  16. margin: 0;
  17. padding: 0;
  18. box-sizing: border-box;
  19. outline: none;
  20. }
  21. /* 大布局样式 */
  22. .admin-ui {
  23. overflow: hidden;
  24. height: 100%;
  25. display: flex;
  26. flex-flow: column;
  27. }
  28. .admin-ui-wrapper {
  29. display: flex;
  30. flex: 1;
  31. overflow: auto;
  32. }
  33. .admin-ui-main {
  34. display: flex;
  35. flex-direction: column;
  36. height: 100%;
  37. flex: 1;
  38. }
  39. .main-content-wrapper{
  40. padding: 11px 11px 0px;
  41. overflow-y: auto;
  42. overflow-x: hidden;
  43. flex: auto;
  44. }
  45. .main-bottom-wrapper {
  46. height: 60px;
  47. margin-top: 25px;
  48. text-align: center;
  49. flex: auto;
  50. display: flex;
  51. align-items: flex-end;
  52. justify-content: center;
  53. padding-bottom: 25px;
  54. }
  55. /* 双排菜单布局 */
  56. .snowy-doublerow-layout-menu {
  57. padding-right: 5px;
  58. line-height: 0;
  59. align-items: center;
  60. }
  61. .snowy-doublerow-layout-menu-item-fort-div {
  62. overflow: hidden;
  63. text-overflow: ellipsis;
  64. opacity: 1;
  65. display: block;
  66. flex: auto;
  67. }
  68. .snowy-doublerow-layout-menu-item-fort-div-span {
  69. font-size: 13px;
  70. text-overflow: ellipsis;
  71. }
  72. .snowy-title{
  73. color: var(--text-color);
  74. }
  75. .ant-layout-sider-collapsed{
  76. .logo-bar>span{
  77. display: none;
  78. }
  79. }
  80. .ant-layout-sider-dark{
  81. .snowy-header-logo{
  82. color: #fff;
  83. }
  84. }
  85. /* 设置抽屉样式 */
  86. .layout-setting {
  87. position: fixed;
  88. width: 40px;
  89. height: 40px;
  90. border-radius: 3px 0 0 3px;
  91. bottom: 50%;
  92. right: 0px;
  93. z-index: 100;
  94. background: @primary-color;
  95. display: flex;
  96. flex-direction: column;
  97. align-items: center;
  98. justify-content: center;
  99. cursor: pointer;
  100. }
  101. .layout-setting i {
  102. color: #fff;
  103. }
  104. /* 头部 */
  105. .snowy-header {
  106. height: 50px;
  107. display: flex;
  108. justify-content: space-between;
  109. border-bottom: 1px solid var(--header-bottom);
  110. box-shadow: 0 0.4px 0.5px rgb(0 21 41 / 12%);
  111. .ant-menu-item{
  112. height: 48px;
  113. line-height: 48px;
  114. }
  115. background: var(--snowy-background-color);
  116. }
  117. // 应用主题色
  118. .snowy-header-primary-color {
  119. color: white;
  120. background-color: var(--primary-color);
  121. .ant-badge{
  122. color: white;
  123. }
  124. .ant-breadcrumb-link {
  125. color: white;
  126. }
  127. .ant-breadcrumb-separator {
  128. color: white;
  129. }
  130. .ant-menu-light .ant-menu-item:hover{
  131. color: #ccc;
  132. background-color: var(--primary-7);
  133. }
  134. }
  135. .ant-layout-sider-dark {
  136. .snowy-title{
  137. color: #fff;
  138. }
  139. }
  140. .snowy-header-left {
  141. display: flex;
  142. align-items: center;
  143. padding-left: 20px;
  144. .logo-bar {
  145. display: flex;
  146. align-items: center;
  147. margin-left: 16px;
  148. font-family: PingFang SC, PingFang SC;
  149. font-weight: 600;
  150. font-size: 24px;
  151. color: #FFFFFF;
  152. line-height: 28px;
  153. .logo {
  154. margin-right: 10px;
  155. }
  156. &.is-mobile {
  157. color: #333333;
  158. font-size: 20px;
  159. .logo {
  160. height: 46px;
  161. }
  162. }
  163. }
  164. }
  165. .snowy-header-left .menu-unfold-outlined {
  166. padding: 0 12px
  167. }
  168. .snowy-header-right {
  169. display: flex;
  170. align-items: center;
  171. }
  172. .snowy-header-logo {
  173. height: 49px;
  174. display: flex;
  175. justify-content: space-between;
  176. border-bottom: 1px solid rgba(255, 255, 255, 0.04);
  177. }
  178. .snowy-header-logo-primary-color {
  179. color: white;
  180. background-color: var(--primary-color);
  181. }
  182. .snowy-header-logo .logo-bar {
  183. font-weight: bold;
  184. display: flex;
  185. align-items: center;
  186. font-size: 20px;
  187. }
  188. .snowy-header-logo .logo-bar .logo {
  189. margin-right: 10px;
  190. width: 35px;
  191. height: 35px;
  192. }
  193. .top-snowy-header {
  194. background: #001529;
  195. color: white;
  196. }
  197. .top-snowy-header-light {
  198. background: #ffffff;
  199. color: #000000;
  200. }
  201. .top-snowy-header-layout {
  202. background: var(--primary-color);
  203. color: #ffffff;
  204. }
  205. .panel-item {
  206. padding: 0 10px;
  207. cursor: pointer;
  208. height: 100%;
  209. display: flex;
  210. align-items: center;
  211. /*color: var(--font-color);*/
  212. }
  213. .panel-item:hover {
  214. background: var(--header-color-split);
  215. }
  216. .contextmenu {
  217. position: fixed;
  218. width: 200px;
  219. margin:0;
  220. border-radius: 0px;
  221. background: @body-background;
  222. border: 1px solid var(--border-color-split);
  223. box-shadow: 0 2px 12px 0 rgba(0,0,0,.1);
  224. z-index: 3000;
  225. list-style-type: none;
  226. padding: 10px 0;
  227. }
  228. .contextmenu hr {
  229. margin:5px 0;
  230. border: none;
  231. height: 1px;
  232. font-size: 0px;
  233. background-color: var(--border-color-split)
  234. }
  235. .contextmenu li {
  236. display: flex;
  237. align-items: center;
  238. margin:0;
  239. cursor: pointer;
  240. line-height: 30px;
  241. padding: 0 17px;
  242. color: @text-color;
  243. }
  244. .contextmenu li i {
  245. font-size: 14px;
  246. margin-right: 10px;
  247. }
  248. .contextmenu li:hover {
  249. background-color: @component-background;
  250. color: #66b1ff;
  251. }
  252. .contextmenu li.disabled {
  253. cursor: not-allowed;
  254. color: #bbb;
  255. background: transparent;
  256. }
  257. /*页面最大化*/
  258. .admin-ui.main-maximize {
  259. .main-maximize-exit {
  260. display: block;
  261. }
  262. .ant-layout-sider, .ant-layout-sider-dark, .layout-setting, .snowy-header, .admin-ui-breadcrumb, .snowy-tags {
  263. display: none;
  264. }
  265. .main-content-wrapper {
  266. padding: 0;
  267. }
  268. }
  269. /* 最大化后的退出按钮 */
  270. .main-maximize-exit {
  271. display: none;
  272. position: fixed;
  273. z-index: 3000;
  274. top: -20px;
  275. padding-top: 18px;
  276. left: 50%;
  277. margin-left: -20px;
  278. border-radius: 50%;
  279. width: 40px;
  280. height: 40px;
  281. cursor: pointer;
  282. background: rgba(0, 0, 0, 0.2);
  283. text-align: center;
  284. }
  285. .main-maximize-exit:hover {
  286. background: rgba(0, 0, 0, 0.4);
  287. }
  288. .ant-layout-sider{
  289. overflow: auto;
  290. }
  291. /* 重写antdv的一些样式,定义到全局 */
  292. .ant-card-head-title {
  293. padding: 12px 0!important;
  294. }
  295. .ant-tabs-large > .ant-tabs-nav .ant-tabs-tab {
  296. padding: 12px 0!important;
  297. }
  298. .ant-card-extra {
  299. padding: 12px 0!important;
  300. }
  301. .ant-card-head {
  302. border-bottom: 0px !important;
  303. min-height: 50px !important;
  304. }
  305. /* 重写antdv的表格滚动条 */
  306. .ant-table-body, .ant-table-content{
  307. &::-webkit-scrollbar {
  308. height: 10px;
  309. width: 10px;
  310. }
  311. &::-webkit-scrollbar-thumb {
  312. border-radius: 10px;
  313. -webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.1);
  314. background: @border-color-split;
  315. }
  316. &::-webkit-scrollbar-track {
  317. -webkit-box-shadow: 0;
  318. border-radius: 10px;
  319. background: @background-color-base;
  320. }
  321. }
  322. .left-span-label {
  323. border-left: 4px solid var(--primary-color);
  324. font-size: 15px;
  325. color: var(--font-color);
  326. font-weight: 600;
  327. padding-left: 8px;
  328. }
  329. // 滚动条,需要哪里,加哪个class
  330. body,
  331. .ant-scrolling-effect,
  332. .ant-drawer-wrapper-body,
  333. .ant-drawer-body,
  334. .admin-ui,
  335. .ant-modal-wrap,
  336. .ant-transfer-list-content,
  337. .ant-card,
  338. .ant-layout-sider,
  339. .CodeMirror-scroll,
  340. .main-content-wrapper,
  341. .xn-icon-select-list,
  342. .form-user-table,
  343. .scopeDefineOrgTreeDiv,
  344. .user-table,
  345. .role-table,
  346. .org-table,
  347. .pos-table,
  348. .poi-list,
  349. .snowy-orgpos-vis,
  350. .index-message-list,
  351. .ant-picker-time-panel-column,
  352. .timeline-div,
  353. .gen-preview-content,
  354. .ant-menu,
  355. .ant-tabs-dropdown-menu,
  356. .admin-ui-main{
  357. &::-webkit-scrollbar {
  358. /*滚动条整体样式*/
  359. width : 0; /*高宽分别对应横竖滚动条的尺寸*/
  360. height: 0;
  361. }
  362. &::-webkit-scrollbar-thumb {
  363. /*滚动条里面小方块*/
  364. border-radius : 10px;
  365. background-color: @component-background; // skyblue
  366. background-image: -webkit-linear-gradient(
  367. 45deg,
  368. rgba(255, 255, 255, 0.2) 25%,
  369. transparent 25%,
  370. transparent 50%,
  371. rgba(255, 255, 255, 0.2) 50%,
  372. rgba(255, 255, 255, 0.2) 75%,
  373. transparent 75%,
  374. transparent
  375. );
  376. }
  377. &::-webkit-scrollbar-track {
  378. /*滚动条里面轨道*/
  379. box-shadow : inset 0 0 2px rgba(0, 0, 0, 0.2);
  380. background : @component-background;
  381. border-radius: 5px;
  382. opacity: 0;
  383. display: none;
  384. }
  385. }
  386. .json-box-9136076486841527{
  387. overflow: hidden!important;;
  388. .CodeMirror-scrollbar-filler{
  389. display: none!important;
  390. }
  391. }
  392. .ant-modal-close-x .anticon {
  393. padding: 2px !important;
  394. }
  395. .xn-mb10 {
  396. margin-bottom: 10px;
  397. }
  398. .xn-mt4 {
  399. margin-top: 4px;
  400. }
  401. .xn-mg08 {
  402. margin: 0 8px;
  403. }
  404. .xn-fdr {
  405. float: right;
  406. }
  407. .xn-wd {
  408. width: 100%;
  409. }
  410. .xn-wd90 {
  411. width: 90px;
  412. }
  413. .xn-wdcalc-70 {
  414. width: calc(100% - 70px);
  415. }
  416. .xn-mr8 {
  417. margin-right: 8px;
  418. }
  419. .xn-ht400 {
  420. height: 400px;
  421. }
  422. .xn-wh25 {
  423. height: 25px;
  424. width: 25px;
  425. }
  426. .xn-ml10 {
  427. margin-left: 10px;
  428. }
  429. .xn-pl0 {
  430. padding-left: 0px;
  431. }
  432. .xn-pd8 {
  433. padding: 8px;
  434. }
  435. .xn-pb10 {
  436. padding-bottom: 10px;
  437. }
  438. .xn-color-a0a0a0 {
  439. color: #a0a0a0;
  440. }
  441. .xn-color-d9d9d9 {
  442. color: #d9d9d9;
  443. }
  444. .xn-color-ff4d4f {
  445. color: #ff4d4f;
  446. }
  447. .xn-color-00025 {
  448. color: rgba(0, 0, 0, 0.25);
  449. }
  450. .xn-jk-line {
  451. width: 188px;
  452. margin-bottom: 8px;
  453. display: block;
  454. }
  455. .xn-findform-line {
  456. border: 1px solid var(--border-color-split);
  457. cursor: pointer;
  458. width: 100%;
  459. height: 40px;
  460. }
  461. .odd {
  462. background-color: var(--table-row-hover-bg);
  463. }
  464. .snowy-theme-dark .odd {
  465. background-color: #1d1d1d
  466. }
  467. // 以下是重写表单设计器的样式
  468. .list-main {
  469. background: var(--auto-judge-before-color) !important;
  470. }
  471. .drag-move-box:before {
  472. background: var(--primary-color) !important;
  473. }
  474. .drag-move-box>.delete {
  475. background: var(--primary-color) !important;
  476. }
  477. .drag-move-box>.copy {
  478. background: var(--primary-color) !important;
  479. }
  480. .drag-move-box .show-key-box {
  481. color: var(--primary-color) !important;
  482. }
  483. .left-ul-item:hover {
  484. color: var(--primary-color) !important;
  485. border: 1px solid var(--primary-color) !important;
  486. -webkit-box-shadow: 0 2px 6px var(--primary-color) !important;
  487. box-shadow: 0 2px 6px var(--primary-color) !important;
  488. }
  489. .list-main>.moving:before {
  490. background: var(--primary-color) !important;
  491. }
  492. .operating-area a:hover {
  493. color: var(--primary-color) !important;
  494. }
  495. .batch-box>.delete {
  496. background: var(--primary-color) !important;
  497. }
  498. .batch-box>.copy {
  499. background: var(--primary-color) !important;
  500. }
  501. .batch-box.active:before {
  502. background: var(--primary-color) !important;
  503. }
  504. .ant-input-disabled,
  505. .ant-radio-wrapper-disabled > span,
  506. .ant-checkbox-wrapper-disabled > span,
  507. .ant-select-disabled .ant-select-selection-item,
  508. .ant-picker-disabled input
  509. {
  510. color: #000000 !important;
  511. }