app.scss 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. /* 全局 */
  2. #app, body, html {width: 100%;height: 100%;background-color: #f6f8f9;font-size: 12px;}
  3. a {color: #333;text-decoration: none;}
  4. a:hover, a:focus {color: #000;text-decoration: none;}
  5. a:link {text-decoration: none;}
  6. a:-webkit-any-link {text-decoration: none;}
  7. a,button,input,textarea{-webkit-tap-highlight-color:rgba(0,0,0,0);box-sizing: border-box;outline:none !important; -webkit-appearance: none;}
  8. * {margin: 0;padding: 0;box-sizing: border-box;outline: none;}
  9. @font-face {
  10. font-family: "calculator-all";
  11. src: url("@/assets/fonts/UnidreamLED.eot");
  12. src: url("@/assets/fonts/UnidreamLED.eot?#iefix") format("embedded-opentype"), url("@/assets/fonts/UnidreamLED.woff") format("woff");
  13. }
  14. /* 大布局样式 */
  15. .aminui {display: flex;flex-flow: column;}
  16. .aminui-wrapper {display: flex;flex:1;overflow: auto;}
  17. .aminui .panel-item {cursor: pointer;display: flex;align-items: center;height: 100%;padding: 0 10px;}
  18. .aminui .panel-item:hover {background: rgba(255, 255, 255, 0.1);}
  19. /* 全局滚动条样式 */
  20. .scrollable {-webkit-overflow-scrolling: touch;}
  21. ::-webkit-scrollbar:hover {width: 5px;height: 5px;}
  22. ::-webkit-scrollbar-thumb {background-color: rgba(50, 50, 50, 0.3);}
  23. ::-webkit-scrollbar-thumb:hover {background-color: rgba(50, 50, 50, 0.6);}//滑块
  24. ::-webkit-scrollbar-track {background-color: rgba(50, 50, 50, 0.1);}//轨道
  25. ::-webkit-scrollbar-track:hover {background-color: rgba(50, 50, 50, 0.2);}
  26. /* 头部 */
  27. .aminui-header {display: flex;justify-content:space-between;height: 58px;background: #222b45;color: #fff;}
  28. .aminui-header-left {display: flex;align-items: center;flex: 1;}
  29. .aminui-header-right {display: flex;align-items: center;}
  30. .aminui-header .logo-bar {flex-shrink: 0;display: flex;align-items: center;height: 100%;margin-left: 20px;font-size: 20px;font-weight: bold;}
  31. .aminui-header .logo-bar .logo {width: 38px;margin-right: 10px;vertical-align: bottom;}
  32. .aminui-header .nav-menu {--el-tabs-header-height: 58px;flex: 1;width: 0;margin-left: 40px;margin-right: 20px;} // width: 0 解决flex: 1 子元素超出父元素
  33. .aminui-header .nav-menu .el-tabs__nav-next, .aminui-header .nav-menu .el-tabs__nav-prev {line-height: 58px;font-size: 14px;}
  34. .aminui-header .nav-menu .el-tabs__nav-next.is-disabled, .aminui-header .nav-menu .el-tabs__nav-prev.is-disabled {cursor: not-allowed;}
  35. .aminui-header .nav-menu .el-tabs__header {margin-bottom: 0;}
  36. .aminui-header .nav-menu .el-tabs__header .el-tabs__nav-wrap::after {display: none;}
  37. .aminui-header .nav-menu .el-tabs__header .el-tabs__active-bar {display: none;}
  38. .aminui-header .nav-menu .el-tabs__item {max-width: 140px;margin-right: 10px;padding: 0 10px!important;font-size: 14px;font-weight: 400;color: rgba(255, 255, 255, 0.6);}
  39. .aminui-header .nav-menu .el-tabs__item:last-child {margin-right: 0}
  40. .aminui-header .nav-menu .el-tabs__item .sc-iconify-icon {margin-right: 5px;}
  41. .aminui-header .nav-menu .el-tabs__item:hover {color: #fff;}
  42. .aminui-header .nav-menu .el-tabs__item.is-active {background: rgba(255, 255, 255, 0.1);color: #fff;}
  43. /* 左侧菜单 */
  44. .aminui-side {position: relative;display: flex;flex-flow: column;flex-shrink:0;width:210px;background: #fff;box-shadow: 2px 0 8px 0 rgba(29, 35, 41, .05);border-right: 1px solid #e6e6e6;transition:width 0.3s;}
  45. .aminui-side-top {border-bottom: 1px solid #ebeef5;height:50px;line-height: 50px;}
  46. .aminui-side-top h2 {height: 100%;padding:0 20px;font-size: 17px;color: #3c4a54;}
  47. .aminui-side-scroll {overflow: auto;overflow-x:hidden;flex: 1;}
  48. .aminui-side.isCollapse {width: 65px;}
  49. .aminui-side-collapse {position: absolute;right: -12px;top: 40px;z-index: 101;cursor: pointer;display: flex;align-items: center;justify-content: center;width: 24px;height: 24px;background-color: #fff;border-radius: 50%;color: rgba(0, 0, 0, .25);box-shadow: 0 2px 8px -2px #0000000d,0 1px 4px -1px #190f0f12,0 0 1px #00000014;transition: all .3s;}
  50. .aminui-side-collapse:hover {color: rgba(0, 0, 0, .95);}
  51. /* 智慧工地layout */
  52. .aminui-side.hasMenu {background: #304156;color: #fff;}
  53. .aminui-side.hasMenu .aminui-side-top {border-bottom: none;}
  54. .aminui-side.hasMenu .logo-bar {display: flex;align-items: center;width: 100%;height: 100%;padding: 0 10px;font-size: 19px;font-weight: bold;}
  55. .aminui-side.hasMenu .logo-bar .logo {width: 30px;margin-right: 10px;vertical-align: bottom;}
  56. .aminui-side.hasMenu .el-menu, .side-menu-popper .el-menu {--el-menu-text-color: #fff;--el-menu-hover-text-color: #fff;--el-menu-bg-color: transparent;--el-menu-hover-bg-color: rgba(255, 255, 255, 0.1);--el-menu-active-color: #fff;}
  57. .aminui-side.hasMenu .el-menu .el-menu-item.is-active, .side-menu-popper .el-menu .el-menu-item.is-active {background-color: var(--el-color-primary);}
  58. .aminui-side.hasMenu .el-menu--collapse .el-sub-menu.is-active {background-color: var(--el-color-primary);color: #fff;}
  59. .aminui-side.hasMenu.isCollapse .logo-bar {justify-content: center;}
  60. .aminui-side.hasMenu.isCollapse .logo-bar .logo {margin-right: 0;}
  61. /* 移动端菜单 */
  62. .mobile-nav {background: #222b45;}
  63. .mobile-nav .logo-bar {justify-content: unset;background: transparent!important;border: none;font-size: 17px;font-weight: bold;color: #fff;}
  64. .mobile-nav .logo-bar .logo {width: 30px;margin-right: 10px;vertical-align: bottom;}
  65. .mobile-nav .el-main {padding: 0;}
  66. .mobile-nav .el-menu {--el-menu-text-color: #fff;--el-menu-hover-text-color: #fff;--el-menu-bg-color: #222b45;--el-menu-hover-bg-color: rgb(26, 36, 49);--el-menu-active-color: var(--el-color-primary);}
  67. /* 右侧内容 */
  68. .aminui-body.el-container {flex-flow: column;}
  69. .aminui-topbar {height: 50px;border-bottom: 1px solid #ebeef5;background: #fff;box-shadow: 0 1px 4px rgba(0,21,41,.08);display: flex;justify-content:space-between;}
  70. .aminui-topbar .left-panel {display: flex;align-items: center;}
  71. .aminui-topbar .right-panel {display: flex;align-items: center;}
  72. .aminui-topbar .user-bar .panel-item:hover {background: rgba(0, 0, 0, 0.1);}
  73. .el-drawer.rtl.pro-drawer {height: calc(100% - 50px);top: 50px;}
  74. .el-drawer.rtl.pro-drawer .el-drawer__header {margin-bottom: 0;padding: 15px 15px 0;}
  75. .el-drawer.rtl.pro-drawer .el-drawer__header .el-drawer__title {font-size: 15px;color: var(--el-text-color-secondary);}
  76. .el-drawer.rtl.pro-drawer .el-drawer__header .el-drawer__title span {color: var(--el-color-primary);}
  77. .el-drawer.rtl.pro-drawer .el-drawer__body {padding: 15px;}
  78. .aminui-tags {height:35px;background: #fff;border-bottom: 1px solid #e6e6e6;}
  79. .aminui-tags ul {display: flex;overflow: hidden;}
  80. .aminui-tags li {cursor: pointer;display: inline-block;float: left;max-width:160px;height:34px;line-height: 34px;position: relative;flex-shrink: 0;}
  81. .aminui-tags li::after {content: " ";width:1px;height:100%;position: absolute;right:0px;background-image: linear-gradient(#fff, #e6e6e6);}
  82. .aminui-tags li a {display: inline-block;padding:0 10px;width:100%;height:100%;color: #999;text-decoration:none;display: flex;align-items: center;}
  83. .aminui-tags li i {margin-left:10px;border-radius: 3px;width:18px;height:18px;display: flex;align-items: center;justify-content: center;}
  84. .aminui-tags li:hover {background: #ecf5ff;}
  85. .aminui-tags li.active a {color: #fff;}
  86. .aminui-tags li.sortable-ghost {opacity: 0;}
  87. .aminui-main {overflow: auto;background-color: #efefef;flex-grow: 1;}
  88. // vxe-table--mini
  89. .vxe-grid.size--mini {
  90. .el-input, .el-input.el-date-editor, .el-date-editor.el-range-editor {height: var(--vxe-ui-input-height-mini);line-height: var(--vxe-ui-input-height-mini);font-size: inherit;
  91. .el-input__inner, .el-range-input {height: calc(100% - 2px);line-height: calc(100% - 2px);font-size: inherit;}
  92. .el-input__inner::placeholder {color: var(--vxe-ui-input-placeholder-color);}
  93. }
  94. .el-select .el-select__wrapper {min-height: var(--vxe-ui-input-height-mini);line-height: var(--vxe-ui-input-height-mini);font-size: inherit;
  95. .el-select__input {height: calc(100% - 2px);line-height: calc(100% - 2px);font-size: inherit;}
  96. .el-select__placeholder.is-transparent {color: var(--vxe-ui-input-placeholder-color);}
  97. .el-icon.el-select__caret {font-size: 13px;}
  98. }
  99. .el-radio {height: var(--vxe-ui-button-height-mini);font-weight: 400;
  100. .el-radio__label {font-size: var(--vxe-ui-font-size-mini);}
  101. }
  102. .el-tag--plain {height: var(--vxe-ui-table-row-line-height);font-size: inherit;}
  103. .el-button {height: var(--vxe-ui-button-height-mini);font-size: inherit;font-weight: 400;}
  104. .el-dropdown {font-size: inherit;}
  105. .el-dropdown .el-button {display: flex;flex-direction: row-reverse;}
  106. .el-dropdown .el-button [class*=el-icon] + span {margin-left: 0;margin-right: 4px;}
  107. .vxe-table.size--mini {
  108. .vxe-table--empty-content {padding: 40px 0;}
  109. .vxe-cell {padding: var(--vxe-ui-table-cell-padding-mini) var(--vxe-ui-table-cell-padding-default);}
  110. .vxe-cell--html .keyword-lighten {background-color: #ff0;}
  111. /******************************** form-table ********************************/
  112. .vxe-table-seq-cell__handler .vxe-button-group {display: none;}
  113. .vxe-table-seq-cell__handler .vxe-button-group .vxe-button {--vxe-ui-button-height-mini: 22px;--vxe-ui-base-margin-gap-mini: 6px;width: 22px;}
  114. .vxe-table-seq-cell__handler .vxe-button-group .vxe-button i {font-size: 1em;}
  115. .vxe-form-table-row.row--hover .vxe-table-seq-cell__handler .vxe-button-group {display: inline-block;}
  116. .vxe-form-table-row.row--hover .vxe-table-seq-cell__handler .seq {display: none;}
  117. .vxe-form-table-row.row--hover .vxe-table-seq-cell__handler .seq.is-disabled {display: inline-block;}
  118. /******************************** form-table ********************************/
  119. .vxe-table-link-cell .vxe-cell .vxe-text {cursor: pointer;}
  120. .vxe-table-link-cell .vxe-cell .vxe-text:hover {text-decoration: underline;}
  121. .vxe-table-footer-cell-required {color: #ff4d4f;}
  122. }
  123. // 自定义
  124. .vxe-table-query {background-color: #fafafa;
  125. .query-action__item .vxe-form--item-inner {white-space: nowrap;}
  126. .query-action__item .vxe-form--item-trigger-node {min-width: unset;margin-left: 12px;}
  127. }
  128. }
  129. .vxe-table-slot--popper .el-select-dropdown__item, .vxe-table-slot--popper .el-dropdown-menu__item, .vxe-table-slot--popper .el-tree {font-size: inherit;}
  130. .vxe-table-slot--popper .el-select-dropdown__item, .vxe-table-slot--popper .el-tree-node__content {height: 32px;line-height: 32px;}
  131. .vxe-table-slot--top__form .el-form-item {margin-bottom: 0;padding-bottom: .6em;}
  132. .vxe-table-slot--top__form .el-form-item__label, .vxe-table-slot--top__form .el-form-item__content {font-size: var(--el-font-size-medium);color: #000;}
  133. .el-dialog .vxe-grid.size--mini .vxe-table-query {background-color: unset;}
  134. .vxe-modal--wrapper.vxe-image-preview-popup-wrapper.is--visible.is--active {z-index: 9999 !important;}