console.display.less 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895
  1. @charset "UTF-8";
  2. @import "console.config.less";
  3. // +----------------------------------------------------------------------
  4. // | ThinkAdmin
  5. // +----------------------------------------------------------------------
  6. // | 版权所有 2014~2021 广州楚才信息科技有限公司 [ http://www.cuci.cc ]
  7. // +----------------------------------------------------------------------
  8. // | 官方网站: http://demo.thinkadmin.top
  9. // +----------------------------------------------------------------------
  10. // | 开源协议 ( https://mit-license.org )
  11. // +----------------------------------------------------------------------
  12. // | gitee 代码仓库:https://gitee.com/zoujingli/ThinkAdmin
  13. // | github 代码仓库:https://github.com/zoujingli/ThinkAdmin
  14. // +----------------------------------------------------------------------
  15. .headimg {
  16. width: 35px;
  17. height: 35px;
  18. display: inline-block;
  19. overflow: hidden;
  20. text-align: center;
  21. margin-right: 5px;
  22. border-radius: 50%;
  23. vertical-align: middle;
  24. background-size: cover;
  25. background-repeat: no-repeat;
  26. background-position: center center;
  27. &-no {
  28. border: none;
  29. box-shadow: none;
  30. border-radius: 0;
  31. }
  32. &-xs {
  33. width: 28px;
  34. height: 28px;
  35. }
  36. &-md {
  37. width: 55px;
  38. height: 55px;
  39. }
  40. > img {
  41. width: 110%;
  42. height: 110%;
  43. max-width: 110%;
  44. max-height: 110%;
  45. margin: -5% 0 0 -5%;
  46. }
  47. & + * {
  48. vertical-align: middle;
  49. }
  50. }
  51. fieldset {
  52. margin: 0 0 10px 0;
  53. border: 1px solid @BoxBorderColor;
  54. padding: 10px 20px 5px 20px;
  55. background: #fff;
  56. border-radius: @BoxBorderRadius;
  57. legend {
  58. color: #666;
  59. padding: 0 10px;
  60. font-size: 12px;
  61. letter-spacing: 1px;
  62. }
  63. }
  64. .layui-layer-tips {
  65. &.layui-layer-image .layui-layer-content {
  66. width: auto !important;
  67. padding: 4px !important;
  68. img {
  69. z-index: 2;
  70. position: relative;
  71. }
  72. i.layui-layer-TipsR {
  73. z-index: 1;
  74. }
  75. }
  76. }
  77. .layui-tab, .layui-card {
  78. border-radius: @BoxBorderRadius;
  79. }
  80. .layui-tab {
  81. .layui-tab-title {
  82. border-top-left-radius: @BoxBorderRadius;
  83. border-top-right-radius: @BoxBorderRadius;
  84. > li:first-child {
  85. padding: 0 15px 0 17px;
  86. margin-left: 0 !important;
  87. border-top-left-radius: @BoxBorderRadius;
  88. &:after {
  89. border-left: none
  90. }
  91. }
  92. }
  93. .layui-tab-content {
  94. border-bottom-left-radius: @BoxBorderRadius;
  95. border-bottom-right-radius: @BoxBorderRadius;
  96. }
  97. > .layui-tab-content {
  98. padding: 20px;
  99. background: #fff;
  100. }
  101. }
  102. .layui-card {
  103. > .layui-card-header {
  104. padding: 0 20px;
  105. }
  106. > .layui-card-body {
  107. padding: 20px;
  108. }
  109. }
  110. .layui-code {
  111. border-radius: @BoxBorderRadius;
  112. }
  113. .layui-btn {
  114. border: 1px solid #009688;
  115. &:hover:not(.layui-btn-disabled) {
  116. box-shadow: @ShadowMaxInset;
  117. }
  118. &-warm {
  119. border: 1px solid #FFB800;
  120. }
  121. &-danger {
  122. border: 1px solid #FF5722;
  123. }
  124. &-normal {
  125. border: 1px solid #1E9FFF;
  126. }
  127. &-disabled {
  128. border: 1px solid @BoxBorderColor;
  129. }
  130. &-primary {
  131. background: #fff;
  132. }
  133. &-group {
  134. border: 1px solid #098;
  135. overflow: hidden;
  136. background: #009688;
  137. line-height: 28px;
  138. border-radius: 2px;
  139. + .layui-btn {
  140. margin-left: 8px;
  141. }
  142. .layui-btn {
  143. height: 28px;
  144. line-height: 28px;
  145. border-width: 0 !important;
  146. border-radius: 0 !important;
  147. + .layui-btn {
  148. margin-left: 1px !important;
  149. }
  150. &-primary:hover {
  151. border-color: #009688;
  152. }
  153. }
  154. }
  155. & + .layui-btn {
  156. margin-left: 8px;
  157. }
  158. }
  159. .layui-badge {
  160. margin-right: 5px;
  161. &-middle {
  162. width: 1em;
  163. height: auto;
  164. padding: 5px;
  165. line-height: 16px;
  166. white-space: normal;
  167. vertical-align: middle;
  168. }
  169. }
  170. .layui-form-select dl {
  171. top: 37px;
  172. padding: 0;
  173. border-color: @InputBorderActiveColor;
  174. }
  175. /*! 搜索表单样式 */
  176. .form-search {
  177. .layui-btn {
  178. height: 32px;
  179. padding: 0 10px;
  180. font-size: 13px;
  181. line-height: 32px;
  182. .layui-icon {
  183. font-size: 15px
  184. }
  185. }
  186. .layui-form-label {
  187. width: auto !important;
  188. height: 32px;
  189. padding: 0 8px;
  190. line-height: 32px;
  191. border-color: @InputBorderNormalColor;
  192. }
  193. .layui-input-inline {
  194. width: 170px;
  195. display: inline-block !important;
  196. margin: 0 10px 0 -1px !important;
  197. input, select {
  198. width: 100%;
  199. height: 32px;
  200. padding: 0 8px;
  201. line-height: 32px;
  202. border-color: @InputBorderNormalColor;
  203. }
  204. }
  205. .layui-form-select dl {
  206. top: 31px;
  207. padding: 0;
  208. border-color: @InputBorderActiveColor;
  209. }
  210. }
  211. /* 表单验证异常提示 */
  212. .label-required {
  213. &-prev:before {
  214. width: 1em;
  215. color: red;
  216. content: '*';
  217. display: inline-block;
  218. position: absolute;
  219. text-align: left;
  220. font-weight: 700;
  221. line-height: 1.6em;
  222. margin-left: -0.8em;
  223. }
  224. &:after, &-next:after {
  225. top: 6px;
  226. right: 5px;
  227. color: red;
  228. content: '*';
  229. position: absolute;
  230. margin-left: 4px;
  231. font-weight: 700;
  232. line-height: 1.8em
  233. }
  234. &-null:before {
  235. content: none !important
  236. }
  237. }
  238. .layui-input,
  239. .layui-select {
  240. line-height: 38px;
  241. border-color: @InputBorderNormalColor;
  242. &:hover, &:active, &:focus {
  243. border-color: @InputBorderActiveColor;
  244. }
  245. }
  246. .layui-disabled,
  247. .layui-disabled:hover {
  248. color: #333 !important;
  249. background: #EEE !important;
  250. }
  251. .layui-form-checkbox.layui-form-checked {
  252. i {
  253. border-color: #5FB878;
  254. }
  255. }
  256. label.think-radio,
  257. label.think-checkbox {
  258. cursor: pointer;
  259. margin-right: 10px;
  260. display: inline-block;
  261. }
  262. .think-radio,
  263. .think-checkbox {
  264. margin-top: 10px;
  265. font-weight: 400;
  266. line-height: 18px;
  267. input[type=radio],
  268. input[type=checkbox] {
  269. width: 18px;
  270. height: 18px;
  271. cursor: pointer;
  272. border: 1px solid @RadioBorderNormalColor;
  273. position: relative;
  274. background: #fff;
  275. margin-right: 5px;
  276. vertical-align: bottom;
  277. display: inline-block !important;
  278. box-sizing: border-box !important;
  279. appearance: none;
  280. -webkit-appearance: none;
  281. &:checked {
  282. border-color: #009688;
  283. &:after {
  284. display: block;
  285. position: relative;
  286. animation-duration: .3s;
  287. -webkit-animation-duration: .3s;
  288. animation-fill-mode: both;
  289. -webkit-animation-fill-mode: both;
  290. animation-name: layui-scale-spring;
  291. -webkit-animation-name: layui-scale-spring;
  292. }
  293. }
  294. }
  295. input[type=radio] {
  296. border-radius: 1em;
  297. &:checked:after {
  298. top: 4px;
  299. left: 4px;
  300. width: 8px;
  301. height: 8px;
  302. cursor: pointer;
  303. content: '';
  304. background: #009688;
  305. border-radius: 1em;
  306. }
  307. }
  308. input[type=checkbox] {
  309. border-radius: 1px;
  310. &:checked:after {
  311. color: #009688;
  312. cursor: pointer;
  313. padding: 2px;
  314. content: "\e605";
  315. font-size: 12px;
  316. font-style: normal;
  317. font-weight: 700;
  318. font-family: layui-icon !important;
  319. -webkit-font-smoothing: antialiased;
  320. -moz-osx-font-smoothing: grayscale
  321. }
  322. }
  323. }
  324. .layui-table {
  325. td, th {
  326. font-size: 12px;
  327. }
  328. td.list-table-check-td + td,
  329. th.list-table-check-td + th {
  330. padding-left: 5px;
  331. }
  332. .list-table-sort-td {
  333. width: 10px !important;
  334. text-align: center !important;
  335. padding-left: 5px !important;
  336. padding-right: 5px !important;
  337. button {
  338. width: 56px;
  339. background: #009688
  340. }
  341. input {
  342. width: 50px;
  343. color: #666;
  344. padding: 2px;
  345. font-size: 9pt;
  346. border: 1px solid @InputBorderNormalColor;
  347. text-align: center;
  348. line-height: 18px
  349. }
  350. }
  351. .list-table-check-td {
  352. width: 10px !important;
  353. text-align: center !important;
  354. padding-left: 15px !important;
  355. padding-right: 15px !important;
  356. input {
  357. margin: 0 !important;
  358. vertical-align: middle
  359. }
  360. }
  361. }
  362. table.layui-table {
  363. input.layui-input, .layui-btn.layui-btn-sm {
  364. height: 28px;
  365. line-height: 28px;
  366. box-sizing: border-box;
  367. }
  368. .layui-btn.layui-btn-sm {
  369. margin-top: -1px;
  370. }
  371. &[lay-size="lg"] {
  372. input.layui-input, .layui-btn.layui-btn-sm {
  373. height: 38px;
  374. line-height: 38px;
  375. box-sizing: border-box;
  376. }
  377. }
  378. }
  379. .layui-table-view {
  380. margin-bottom: 0;
  381. .layui-table-page {
  382. .layui-laypage {
  383. .layui-laypage-prev,
  384. .layui-laypage-next {
  385. padding: 0 8px;
  386. border-radius: 3px;
  387. }
  388. .layui-laypage-prev {
  389. margin-left: 0 !important;
  390. }
  391. .layui-laypage-next {
  392. margin-right: 6px !important;
  393. }
  394. }
  395. }
  396. }
  397. .layui-layer-content {
  398. .layui-form.layui-card {
  399. margin: 0;
  400. box-shadow: none !important;
  401. .layui-card-body {
  402. padding: 20px 40px 0 0;
  403. }
  404. }
  405. }
  406. .layui-layer-dialog {
  407. .layui-layer-content {
  408. .layui-layer-ico {
  409. top: 50% !important;
  410. margin-top: -15px !important
  411. }
  412. }
  413. }
  414. .laydate-footer-btns {
  415. span {
  416. line-height: 24px !important
  417. }
  418. }
  419. .layui-tags {
  420. display: flex;
  421. flex-wrap: wrap;
  422. vertical-align: middle;
  423. .layui-tag {
  424. color: #FFF;
  425. height: 38px;
  426. margin: 3px 4px 3px 0;
  427. padding: 0 4px 0 10px;
  428. display: inline-block;
  429. font-size: 14px;
  430. line-height: 38px;
  431. border-radius: 2px;
  432. white-space: nowrap;
  433. background: #1E9FFF !important;
  434. user-select: none;
  435. -ms-user-select: none;
  436. -moz-user-select: none;
  437. -webkit-user-select: none;
  438. .layui-icon {
  439. font-size: 14px;
  440. font-weight: 700;
  441. margin-left: 5px;
  442. &:hover {
  443. cursor: pointer;
  444. color: #FF5722;
  445. }
  446. }
  447. &-input {
  448. width: 100px;
  449. resize: none;
  450. margin: 3px 8px 3px 0;
  451. overflow: hidden;
  452. white-space: nowrap;
  453. }
  454. }
  455. }
  456. /** 手机盒子及微信菜单 */
  457. .mobile-preview {
  458. width: 317px;
  459. height: 580px;
  460. position: relative;
  461. background: url(../img/wechat/mobile_head.png) no-repeat 0 0;
  462. box-shadow: @ShadowMinOuter;
  463. border-radius: @BoxBorderRadius;
  464. .mobile-header {
  465. color: #fff;
  466. width: auto;
  467. margin: 0 30px;
  468. overflow: hidden;
  469. font-size: 15px;
  470. padding-top: 30px;
  471. text-align: center;
  472. white-space: nowrap;
  473. text-overflow: ellipsis;
  474. word-wrap: normal;
  475. user-select: none;
  476. -moz-user-select: none;
  477. -webkit-user-select: none;
  478. pointer-events: none;
  479. -webkit-pointer-events: none;
  480. }
  481. .mobile-body {
  482. top: 60px;
  483. left: 0;
  484. right: 0;
  485. bottom: 0;
  486. border: 1px solid #ccc;
  487. position: absolute;
  488. background: #f5f5f5;
  489. border-radius: 0 0 @BoxBorderRadius @BoxBorderRadius;
  490. iframe {
  491. width: 100%;
  492. height: 100%
  493. }
  494. }
  495. .mobile-footer {
  496. left: 0;
  497. right: 0;
  498. bottom: 0;
  499. margin: 0;
  500. border: 1px solid #ccc;
  501. position: absolute;
  502. padding-left: 43px;
  503. background: url(../img/wechat/mobile_foot.png) no-repeat 0 0;
  504. list-style-type: none;
  505. border-radius: 0 0 @BoxBorderRadius @BoxBorderRadius;
  506. li {
  507. float: left;
  508. width: 33.33%;
  509. position: relative;
  510. text-align: center;
  511. line-height: 50px;
  512. a {
  513. width: auto;
  514. color: #616161;
  515. border: 1px solid hsla(0, 0%, 100%, 0);
  516. display: block;
  517. overflow: hidden;
  518. word-wrap: normal;
  519. margin-top: -1px;
  520. border-left: 1px solid #e7e7eb;
  521. white-space: nowrap;
  522. text-overflow: ellipsis;
  523. margin-bottom: -1px;
  524. text-decoration: none;
  525. &:hover {
  526. background: rgba(0, 0, 0, .02)
  527. }
  528. &.active {
  529. border: 1px solid #44b549 !important;
  530. box-shadow: 0 0 1px #44b549
  531. }
  532. span:before {
  533. width: 1px;
  534. height: 1px;
  535. content: '';
  536. display: inline-block
  537. }
  538. }
  539. > .close {
  540. top: 1px;
  541. right: 1px;
  542. width: 18px;
  543. height: 18px;
  544. display: none;
  545. cursor: pointer;
  546. position: absolute;
  547. text-align: center;
  548. line-height: 18px
  549. }
  550. &:hover > .close {
  551. display: inline-block;
  552. &:hover {
  553. color: #fff !important;
  554. background: #999 !important
  555. }
  556. }
  557. }
  558. .icon {
  559. &-add, &-sub {
  560. display: inline-block;
  561. vertical-align: middle;
  562. &::before {
  563. content: none;
  564. }
  565. }
  566. &-add {
  567. width: 14px;
  568. height: 14px;
  569. border-bottom: none !important;
  570. background: url(../img/wechat/index.png) 0 0 no-repeat
  571. }
  572. &-sub {
  573. width: 7px;
  574. height: 7px;
  575. margin-right: 2px;
  576. background: url(../img/wechat/index.png) 0 -3pc no-repeat
  577. }
  578. }
  579. .sub-menu {
  580. width: 100%;
  581. bottom: 60px;
  582. margin: -1px;
  583. display: block;
  584. position: absolute;
  585. border: 1px solid #d0d0d0;
  586. background-color: #fafafa;
  587. ul li {
  588. float: none;
  589. width: 100%;
  590. padding: 0;
  591. z-index: 11;
  592. display: block;
  593. a {
  594. padding: 0 5px;
  595. border: 1px solid hsla(0, 0%, 100%, 0);
  596. &.bottom-border {
  597. margin: -1px -1px 0;
  598. border-bottom: 1px solid #e7e7eb
  599. }
  600. }
  601. &:last-child a.bottom-border {
  602. border-bottom-color: #fff
  603. }
  604. }
  605. }
  606. .arrow {
  607. left: 50%;
  608. position: absolute;
  609. margin-left: -6px;
  610. }
  611. .arrow_in, .arrow_out {
  612. width: 0;
  613. height: 0;
  614. z-index: 10;
  615. border: 6px dashed transparent;
  616. display: inline-block;
  617. border-top-style: solid;
  618. border-bottom-width: 0;
  619. }
  620. .arrow_in {
  621. bottom: -5px;
  622. z-index: 3;
  623. border-top-color: #fafafa
  624. }
  625. .arrow_out {
  626. bottom: -6px;
  627. z-index: 2;
  628. border-top-color: #d0d0d0
  629. }
  630. }
  631. }
  632. /* 下拉样式 */
  633. .layui-nav {
  634. .layui-nav-item {
  635. .layui-nav-more {
  636. top: 0;
  637. right: 15px;
  638. width: auto;
  639. height: auto;
  640. border: none;
  641. padding: 0 !important;
  642. font-size: 14px !important;
  643. font-style: normal;
  644. font-family: "layui-icon" !important;
  645. -moz-osx-font-smoothing: grayscale;
  646. -webkit-font-smoothing: antialiased;
  647. &::before {
  648. content: "\e619"
  649. }
  650. }
  651. & .layui-nav-mored, &ed .layui-nav-more {
  652. border: none;
  653. transform: rotate(180deg);
  654. -o-transform: rotate(180deg);
  655. -ms-transform: rotate(180deg);
  656. -moz-transform: rotate(180deg);
  657. -webkit-transform: rotate(180deg)
  658. }
  659. }
  660. }
  661. /*! 重置 Iframe 页面样式 */
  662. .iframe-pagination {
  663. padding: 20px;
  664. &:after {
  665. content: '';
  666. height: 30px;
  667. display: block;
  668. }
  669. .pagination-container {
  670. left: 0;
  671. right: 0;
  672. bottom: 0;
  673. padding: 5px 20px;
  674. position: fixed;
  675. background: #fff;
  676. border-top: 1px solid #ddd;
  677. }
  678. }
  679. /*! 首页加载动画 */
  680. .layui-page-loader {
  681. top: 0;
  682. width: 100%;
  683. height: 100%;
  684. z-index: 9999999;
  685. position: fixed;
  686. background-color: @LoadBackColor;
  687. .loader {
  688. top: 50%;
  689. width: 50px;
  690. height: 50px;
  691. margin: -30px auto 40px;
  692. z-index: 999999;
  693. position: relative;
  694. background-color: @LoadBackColor;
  695. }
  696. .loader:before {
  697. top: 59px;
  698. left: 0;
  699. width: 50px;
  700. height: 7px;
  701. opacity: 0.1;
  702. content: "";
  703. background: #000;
  704. border-radius: 50%;
  705. position: absolute;
  706. animation: shadow .5s linear infinite;
  707. }
  708. .loader:after {
  709. top: 0;
  710. left: 0;
  711. width: 50px;
  712. height: 50px;
  713. content: "";
  714. position: absolute;
  715. border-radius: 3px;
  716. background-color: #5FB878;
  717. animation: loading .5s linear infinite;
  718. }
  719. }
  720. @-webkit-keyframes loading {
  721. 17% {
  722. border-bottom-right-radius: 3px;
  723. }
  724. 25% {
  725. transform: translateY(9px) rotate(22.5deg);
  726. }
  727. 50% {
  728. transform: translateY(18px) scale(1, 0.9) rotate(45deg);
  729. border-bottom-right-radius: 40px;
  730. }
  731. 75% {
  732. transform: translateY(9px) rotate(67.5deg);
  733. }
  734. 100% {
  735. transform: translateY(0) rotate(90deg);
  736. }
  737. }
  738. @keyframes loading {
  739. 17% {
  740. border-bottom-right-radius: 3px;
  741. }
  742. 25% {
  743. transform: translateY(9px) rotate(22.5deg);
  744. }
  745. 50% {
  746. border-bottom-right-radius: 40px;
  747. transform: translateY(18px) scale(1, 0.9) rotate(45deg);
  748. }
  749. 75% {
  750. transform: translateY(9px) rotate(67.5deg);
  751. }
  752. 100% {
  753. transform: translateY(0) rotate(90deg);
  754. }
  755. }
  756. @-webkit-keyframes shadow {
  757. 0%,
  758. 100% {
  759. transform: scale(1, 1);
  760. }
  761. 50% {
  762. transform: scale(1.2, 1);
  763. }
  764. }
  765. @keyframes shadow {
  766. 0%,
  767. 100% {
  768. transform: scale(1, 1);
  769. }
  770. 50% {
  771. transform: scale(1.2, 1);
  772. }
  773. }