backend.less 32 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660
  1. @import (reference) "bootstrap-less/mixins.less";
  2. @import (reference) "bootstrap-less/variables.less";
  3. @import (reference) "fastadmin/mixins.less";
  4. @import (reference) "fastadmin/variables.less";
  5. @import "lesshat.less";
  6. @import url("../css/bootstrap.css");
  7. @import url("../css/fastadmin.css");
  8. @import url("../css/skins/skin-black-blue.css");
  9. @import url("../css/iconfont.css");
  10. @import url("../libs/font-awesome/css/font-awesome.min.css");
  11. @import url("../libs/toastr/toastr.min.css");
  12. @import url("../libs/fastadmin-layer/dist/theme/default/layer.css");
  13. @import url("../libs/bootstrap-table/dist/bootstrap-table.min.css");
  14. @import url("../libs/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker.min.css");
  15. @import url("../libs/bootstrap-daterangepicker/daterangepicker.css");
  16. @import url("../libs/nice-validator/dist/jquery.validator.css");
  17. @import url("../libs/bootstrap-select/dist/css/bootstrap-select.min.css");
  18. @import url("../libs/fastadmin-selectpage/selectpage.css");
  19. @import url("../libs/bootstrap-slider/slider.css");
  20. @import "tinycss.less";
  21. @main-bg: #f1f4f6;
  22. @panel-intro-bg: darken(@main-bg, 3%);
  23. @panel-nav-bg: #fff;
  24. @input-min-height: 33px;
  25. html,
  26. body {
  27. height: 100%;
  28. }
  29. body {
  30. background: #f1f4f6;
  31. font-size: 14px;
  32. line-height: 1.5715;
  33. }
  34. body.is-dialog {
  35. background: #fff;
  36. }
  37. .dropdown-menu {
  38. > li > a {
  39. padding: 5px 12px;
  40. }
  41. }
  42. .selection {
  43. position: absolute;
  44. border: 1px solid #8B9;
  45. background-color: #BEC;
  46. }
  47. .main-header {
  48. .navbar {
  49. position: relative;
  50. .dropdown-menu {
  51. font-size: 14px;
  52. > li > a {
  53. padding: 8px 15px;
  54. }
  55. }
  56. }
  57. }
  58. .bootstrap-dialog .modal-dialog {
  59. /*width: 70%;*/
  60. max-width: 885px;
  61. }
  62. /*iOS兼容*/
  63. html.ios-fix, html.ios-fix body {
  64. height: 100%;
  65. //overflow: auto;
  66. overflow-x: hidden;
  67. -webkit-overflow-scrolling: touch;
  68. .wrapper, .tab-pane {
  69. //overflow: auto;
  70. -webkit-overflow-scrolling: touch;
  71. }
  72. }
  73. .wrapper {
  74. height: 100%;
  75. }
  76. #header {
  77. //box-shadow: 0 2px 2px rgba(0,0,0,.05),0 1px 0 rgba(0,0,0,.05);
  78. }
  79. .content-wrapper {
  80. position: relative;
  81. height: 100%;
  82. }
  83. .control-relative {
  84. position: relative;
  85. }
  86. .tab-addtabs {
  87. //overflow: hidden;
  88. .tab-pane {
  89. height: 100%;
  90. width: 100%;
  91. }
  92. }
  93. .row-between {
  94. .col-xs-6 + .col-xs-6:before {
  95. content: "-";
  96. position: absolute;
  97. left: -2%;
  98. top: 6px;
  99. }
  100. }
  101. @media only screen and (min-width: 481px) {
  102. .row-flex {
  103. display: flex;
  104. flex-wrap: wrap;
  105. }
  106. .row-flex > [class*='col-'] {
  107. display: flex;
  108. flex-direction: column;
  109. }
  110. .row-flex.row:after,
  111. .row-flex.row:before {
  112. display: flex;
  113. }
  114. }
  115. @media (max-width: 991px) {
  116. .main-header .navbar-custom-menu a {
  117. &.btn-danger {
  118. color: #fff;
  119. background-color: @brand-danger;
  120. }
  121. &.btn-primary {
  122. color: #fff;
  123. background-color: @brand-primary;
  124. }
  125. }
  126. }
  127. .common-search-table {
  128. min-height: 20px;
  129. padding: 15px;
  130. margin-bottom: 15px;
  131. background-color: #f5f5f5;
  132. }
  133. /* 固定的底部按钮 */
  134. .fixed-footer {
  135. position: fixed;
  136. bottom: 0;
  137. background-color: #ecf0f1;
  138. width: 100%;
  139. margin-bottom: 0;
  140. padding: 10px;
  141. }
  142. table.table-template {
  143. overflow: hidden;
  144. }
  145. .sp_container {
  146. .msg-box {
  147. position: absolute;
  148. right: 0;
  149. top: 0;
  150. }
  151. .sp_element_box {
  152. overflow: unset;
  153. > li.input_box {
  154. position: unset;
  155. }
  156. .msg-box {
  157. right: -24px;
  158. }
  159. }
  160. }
  161. @media (max-width: 767px) {
  162. .sp_container .sp_element_box .msg-box {
  163. left: inherit;
  164. }
  165. .card-views .card-view {
  166. padding: 5px 0;
  167. }
  168. }
  169. .toast-top-right-index {
  170. top: 62px;
  171. right: 12px;
  172. }
  173. .bootstrap-select {
  174. .msg-box {
  175. position: absolute;
  176. right: 0;
  177. top: 0;
  178. }
  179. .status {
  180. background: #f0f0f0;
  181. clear: both;
  182. color: #999;
  183. font-size: 13px;
  184. font-weight: 500;
  185. line-height: 1;
  186. margin-bottom: -5px;
  187. padding: 10px 20px;
  188. }
  189. .bs-placeholder {
  190. min-height: @input-min-height;
  191. }
  192. min-height: @input-min-height;
  193. }
  194. select.bs-select-hidden, select.selectpicker {
  195. display: inherit !important;
  196. max-height: @input-min-height;
  197. overflow: hidden;
  198. &[multiple] {
  199. height: @input-min-height;
  200. //visibility: hidden;
  201. padding: 0;
  202. background: #f4f4f4;
  203. option {
  204. color: #f4f4f4;
  205. .opacity(0);
  206. }
  207. @media not all and (min-resolution: .001dpcm) {
  208. @supports (-webkit-appearance:none) {
  209. visibility: hidden;
  210. }
  211. }
  212. }
  213. }
  214. input.selectpage {
  215. color: transparent;
  216. pointer-events: none;
  217. }
  218. .sp_container {
  219. input.selectpage {
  220. color: inherit;
  221. pointer-events: inherit;
  222. padding-left: 12px;
  223. padding-right: 12px;
  224. }
  225. .sp_element_box {
  226. input.selectpage {
  227. padding-left: 0;
  228. padding-right: 0;
  229. }
  230. li:first-child {
  231. input.selectpage {
  232. padding-left: 9px;
  233. padding-right: 9px;
  234. }
  235. }
  236. }
  237. min-height: @input-min-height;
  238. }
  239. .img-center {
  240. margin: 0 auto;
  241. display: inline;
  242. float: none;
  243. }
  244. /*
  245. * RIBBON
  246. */
  247. #ribbon {
  248. overflow: hidden;
  249. padding: 15px 15px 0 15px;
  250. position: relative;
  251. a {
  252. color: #777 !important;
  253. text-decoration: none !important;
  254. }
  255. .breadcrumb {
  256. display: inline-block;
  257. margin: 0;
  258. padding: 0;
  259. background: none;
  260. vertical-align: top;
  261. }
  262. .breadcrumb > .active,
  263. .breadcrumb li {
  264. color: #aaa;
  265. }
  266. .shortcut {
  267. a {
  268. margin-left: 10px;
  269. }
  270. }
  271. }
  272. .is-dialog {
  273. #main {
  274. background: #fff;
  275. }
  276. .layer-footer {
  277. display: none;
  278. }
  279. }
  280. form.form-horizontal .control-label {
  281. font-weight: normal;
  282. }
  283. .user-panel > .image img {
  284. width: 45px;
  285. height: 45px;
  286. }
  287. /*panel扩展描述样式*/
  288. .panel-intro {
  289. margin-bottom: 0;
  290. border: none;
  291. > .panel-heading {
  292. padding: 15px;
  293. padding-bottom: 0;
  294. background: @panel-intro-bg;
  295. border-color: @panel-intro-bg;
  296. position: relative;
  297. .panel-lead {
  298. margin-bottom: 15px;
  299. em {
  300. display: block;
  301. font-weight: bold;
  302. font-style: normal;
  303. }
  304. }
  305. .panel-title {
  306. height: 25px;
  307. font-weight: normal;
  308. white-space: nowrap;
  309. overflow: hidden;
  310. text-overflow: ellipsis;
  311. }
  312. .panel-control {
  313. height: 42px;
  314. position: absolute;
  315. top: 8px;
  316. right: 8px;
  317. .fa {
  318. font-size: 14px;
  319. }
  320. }
  321. .nav-tabs {
  322. border-bottom: 0;
  323. margin-bottom: 0;
  324. }
  325. .nav-tabs > li > a {
  326. margin-right: 4px;
  327. color: #95a5a6;
  328. background-color: darken(@panel-intro-bg, 5%);
  329. border: 1px solid @panel-intro-bg;
  330. border-bottom-color: transparent;
  331. }
  332. .nav-tabs > li > a:hover, .nav-tabs > li > a:focus {
  333. border: 1px solid @panel-intro-bg;
  334. color: #7b8a8b;
  335. background-color: darken(@panel-intro-bg, 10%);
  336. }
  337. .nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
  338. color: #7b8a8b;
  339. background-color: #ffffff;
  340. border-bottom-color: transparent;
  341. cursor: default;
  342. }
  343. @media (max-width: @screen-tablet) {
  344. .nav-tabs {
  345. white-space: nowrap;
  346. overflow-x: auto;
  347. overflow-y: hidden;
  348. margin-bottom: -1px;
  349. > li {
  350. display: inline-block;
  351. float: none;
  352. }
  353. }
  354. }
  355. }
  356. }
  357. /*单表格*/
  358. .panel-tabs {
  359. .panel-heading {
  360. padding: 12px 15px 12px 15px;
  361. .panel-lead {
  362. margin-bottom: 0px;
  363. }
  364. .panel-title {
  365. }
  366. }
  367. }
  368. /*选项卡*/
  369. .panel-nav {
  370. .panel-heading {
  371. padding: 0px;
  372. padding-bottom: 0;
  373. background: @main-bg;
  374. border-color: @main-bg;
  375. }
  376. .nav-tabs > li > a {
  377. padding: 12px 15px;
  378. background-color: @panel-intro-bg;
  379. border: 1px solid @main-bg;
  380. }
  381. .nav-tabs > li > a:hover, .nav-tabs > li > a:focus {
  382. border: 1px solid @panel-intro-bg;
  383. background-color: @panel-intro-bg;
  384. }
  385. .nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
  386. border-color: @main-bg;
  387. border-bottom-color: transparent;
  388. }
  389. }
  390. /*顶栏addtabs*/
  391. .nav-addtabs {
  392. height: 100%;
  393. //overflow-y: hidden;
  394. &.disable-top-badge {
  395. > li > a > .pull-right-container {
  396. display: none;
  397. }
  398. }
  399. border: none;
  400. > li {
  401. margin: 0;
  402. > a {
  403. height: 50px;
  404. line-height: 50px;
  405. padding: 0 15px;
  406. border-radius: 0;
  407. border: none;
  408. border-right: 1px solid rgba(0, 0, 0, 0.05);
  409. margin: 0;
  410. color: #95a5a6;
  411. &:hover, &:focus {
  412. border: none;
  413. color: #2c3e50;
  414. border-right: 1px solid rgba(0, 0, 0, 0.02);
  415. }
  416. }
  417. &.active > a {
  418. height: 50px;
  419. line-height: 50px;
  420. padding: 0 15px;
  421. border-radius: 0;
  422. border: none;
  423. border-right: 1px solid rgba(0, 0, 0, 0.02);
  424. background: #f1f4f6;
  425. color: #2c3e50;
  426. overflow: hidden;
  427. &:hover, &:focus {
  428. border: none;
  429. color: #2c3e50;
  430. background: #f1f4f6;
  431. border-right: 1px solid rgba(0, 0, 0, 0.02);
  432. }
  433. }
  434. .close-tab {
  435. font-size: 10px;
  436. position: absolute;
  437. right: 0px;
  438. top: 50%;
  439. margin-top: -8px;
  440. z-index: 100;
  441. cursor: pointer;
  442. color: #eee;
  443. &:before {
  444. content: "\e626";
  445. font-family: iconfont;
  446. font-style: normal;
  447. font-weight: normal;
  448. text-decoration: inherit;
  449. font-size: 18px;
  450. }
  451. display: none;
  452. }
  453. }
  454. .open > a {
  455. &:hover, &:focus {
  456. border-right: 1px solid rgba(0, 0, 0, 0.05);
  457. }
  458. }
  459. ul li {
  460. position: relative;
  461. }
  462. li:hover > .close-tab {
  463. display: block;
  464. }
  465. }
  466. #firstnav {
  467. height: 50px;
  468. border-bottom: 1px solid transparent;
  469. box-shadow: 0 1px 4px rgba(0, 21, 41, .08);
  470. position: relative;
  471. .sidebar-toggle {
  472. position: absolute;
  473. width: 45px;
  474. text-align: center;
  475. height: 50px;
  476. line-height: 50px;
  477. padding: 0;
  478. }
  479. .nav-addtabs {
  480. position: absolute;
  481. left: 45px;
  482. z-index: 98;
  483. }
  484. .navbar-custom-menu {
  485. position: absolute;
  486. top: 0;
  487. right: 0;
  488. z-index: 99;
  489. background: transparent;
  490. }
  491. }
  492. /*次栏菜单栏*/
  493. #secondnav {
  494. display: none;
  495. height: 44px;
  496. position: absolute;
  497. top: 50px;
  498. left: 0;
  499. background: #fff;
  500. width: 100%;
  501. box-shadow: 0 1px 4px rgba(0, 21, 41, .08);
  502. padding: 5px 10px;
  503. -webkit-user-select: none;
  504. -moz-user-select: none;
  505. user-select: none;
  506. .nav-addtabs {
  507. height: 100%;
  508. &.disable-top-badge {
  509. > li > a > .pull-right-container {
  510. display: none;
  511. }
  512. }
  513. border: none;
  514. > li {
  515. border: 1px solid #eee;
  516. border-radius: 3px;
  517. padding: 0 15px;
  518. height: 30px;
  519. line-height: 30px;
  520. margin: 2px 5px 2px 0;
  521. background: #fff;
  522. > a {
  523. display: block;
  524. color: #495060 !important;
  525. height: 100%;
  526. padding: 0;
  527. line-height: 28px;
  528. font-size: 13px;
  529. vertical-align: middle;
  530. opacity: 1;
  531. overflow: hidden;
  532. background: none;
  533. border: none;
  534. }
  535. &.active {
  536. border-color: #bdbebd;
  537. background-color: #f7f7f7;
  538. }
  539. .close-tab {
  540. font-size: 10px;
  541. position: absolute;
  542. right: 0px;
  543. top: 50%;
  544. margin-top: -8px;
  545. z-index: 100;
  546. cursor: pointer;
  547. color: #eee;
  548. &:before {
  549. content: "\e626";
  550. font-family: iconfont;
  551. font-style: normal;
  552. font-weight: normal;
  553. text-decoration: inherit;
  554. font-size: 18px;
  555. }
  556. }
  557. &:hover, &:focus {
  558. border-color: #bdbebd;
  559. }
  560. }
  561. ul li {
  562. position: relative;
  563. }
  564. li:hover > .close-tab {
  565. display: block;
  566. border-color: #222e32;
  567. color: #222e32
  568. }
  569. }
  570. }
  571. .multiplenav {
  572. .content-wrapper, .right-side, .main-sidebar {
  573. padding-top: 50px;
  574. }
  575. #firstnav .nav-addtabs {
  576. padding-right: 450px;
  577. }
  578. }
  579. @media (max-width: 767px) {
  580. .multipletab {
  581. &.multiplenav {
  582. .content-wrapper, .right-side {
  583. padding-top: 94px;
  584. }
  585. }
  586. }
  587. }
  588. .multipletab {
  589. #secondnav {
  590. display: block;
  591. }
  592. &.multiplenav {
  593. .content-wrapper, .right-side {
  594. padding-top: 94px;
  595. }
  596. #firstnav .nav-tabs {
  597. overflow: hidden;
  598. }
  599. }
  600. }
  601. .main-sidebar .sidebar-form {
  602. overflow: visible;
  603. .menuresult {
  604. z-index: 999;
  605. position: absolute;
  606. top: 34px;
  607. left: -1px;
  608. width: 100%;
  609. max-height: 250px;
  610. overflow: auto;
  611. margin: 0;
  612. border-top: none;
  613. border-top-left-radius: 0;
  614. border-top-right-radius: 0;
  615. a {
  616. display: block;
  617. background-color: #fff;
  618. border-top: 1px solid transparent;
  619. border-bottom: 1px solid #eee;
  620. padding: 10px 15px;
  621. color: #222d32;
  622. &:hover {
  623. background: #eee;
  624. }
  625. &:first-child {
  626. border-top: 1px solid #eee;
  627. }
  628. }
  629. }
  630. }
  631. .input-group .sp_result_area {
  632. width: 100%;
  633. }
  634. .sidebar-menu {
  635. .treeview-open > .treeview-menu {
  636. display: block;
  637. }
  638. > li .badge {
  639. margin-top: 0;
  640. }
  641. }
  642. .sidebar-collapse {
  643. .user-panel > .image img {
  644. width: 25px;
  645. height: 25px;
  646. }
  647. }
  648. @media (min-width: 768px) {
  649. .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > a > .pull-right-container {
  650. top: 7px !important;
  651. right: 10px;
  652. height: 17px;
  653. }
  654. }
  655. .fieldlist dd {
  656. display: block;
  657. margin: 8px 0;
  658. input {
  659. display: inline-block;
  660. width: 300px;
  661. }
  662. input:first-child {
  663. width: 110px;
  664. }
  665. ins {
  666. width: 110px;
  667. display: inline-block;
  668. text-decoration: none;
  669. }
  670. }
  671. /* 弹窗中的表单 */
  672. .form-layer {
  673. height: 100%;
  674. min-height: 150px;
  675. min-width: 300px;
  676. .form-body {
  677. width: 100%;
  678. overflow: auto;
  679. top: 0;
  680. position: absolute;
  681. z-index: 10;
  682. bottom: 50px;
  683. padding: 15px;
  684. }
  685. .form-footer {
  686. height: 50px;
  687. line-height: 50px;
  688. background-color: #ecf0f1;
  689. width: 100%;
  690. position: absolute;
  691. z-index: 200;
  692. bottom: 0;
  693. margin: 0;
  694. }
  695. .form-footer .form-group {
  696. margin-left: 0;
  697. margin-right: 0;
  698. }
  699. }
  700. #treeview {
  701. .jstree-container-ul .jstree-node {
  702. display: block;
  703. clear: both;
  704. }
  705. .jstree-leaf:not(:first-child) {
  706. float: left;
  707. background: none;
  708. margin-left: 0;
  709. min-width: 80px;
  710. clear: none;
  711. }
  712. .jstree-leaf {
  713. float: left;
  714. margin-left: 0;
  715. padding-left: 24px;
  716. min-width: 80px;
  717. clear: none;
  718. color: #777;
  719. }
  720. .jstree-leaf > .jstree-icon, .jstree-leaf .jstree-themeicon {
  721. display: none;
  722. }
  723. .jstree-last {
  724. background-image: url("../img/32px.png");
  725. background-position: -292px -4px;
  726. background-repeat: repeat-y;
  727. }
  728. .jstree-children {
  729. .clearfix();
  730. }
  731. .jstree-themeicon {
  732. display: none;
  733. }
  734. }
  735. /*去除bootstrap-table的边框*/
  736. .fixed-table-container {
  737. border: none !important;
  738. tbody .selected td {
  739. background-color: rgba(216, 224, 230, .5);
  740. }
  741. .bs-checkbox {
  742. min-width: 36px;
  743. }
  744. }
  745. /*修复nice-validator新版下的一处BUG*/
  746. .nice-validator {
  747. input, select, textarea, [contenteditable] {
  748. vertical-align: top;
  749. display: inline-block;
  750. *display: inline;
  751. *zoom: 1;
  752. }
  753. }
  754. /*修复nice-validator和summernote的编辑框冲突*/
  755. .nice-validator .note-editor .note-editing-area .note-editable {
  756. display: inherit;
  757. }
  758. /*预览区域*/
  759. .plupload-preview, .faupload-preview {
  760. padding: 0 10px;
  761. margin-bottom: 0;
  762. li {
  763. margin-top: 15px;
  764. }
  765. .thumbnail {
  766. margin-bottom: 10px;
  767. }
  768. a {
  769. display: block;
  770. &:first-child {
  771. height: 90px;
  772. }
  773. img {
  774. height: 80px;
  775. object-fit: cover;
  776. }
  777. }
  778. }
  779. .pjax-loader-bar .progress {
  780. position: fixed;
  781. top: 0;
  782. left: 0;
  783. height: 2px;
  784. background: #77b6ff;
  785. box-shadow: 0 0 10px rgba(119, 182, 255, 0.7);
  786. -webkit-transition: width 0.4s ease;
  787. transition: width 0.4s ease;
  788. }
  789. .dropdown-menu.text-left {
  790. a, li {
  791. text-align: left !important;
  792. }
  793. }
  794. .bootstrap-table .fixed-table-loading {
  795. padding: 10px 0;
  796. }
  797. .bootstrap-table .fixed-table-toolbar .dropdown-menu {
  798. overflow: inherit;
  799. }
  800. .bootstrap-table .fixed-table-toolbar .columns-right .dropdown-menu {
  801. overflow: auto;
  802. }
  803. .bootstrap-table .bs-bars .fixed-table-toolbar .dropdown-menu > li:hover > a {
  804. background-color: #e1e3e9;
  805. color: #333;
  806. }
  807. .bootstrap-table .fa-toggle-on.fa-2x {
  808. font-size: 1.86em;
  809. }
  810. .bootstrap-table .form-commonsearch .row > .form-group {
  811. margin-left: 0;
  812. margin-right: 0;
  813. > .control-label {
  814. white-space: nowrap;
  815. }
  816. }
  817. .bootstrap-table {
  818. .btn-commonsearch {
  819. position: relative;
  820. > span {
  821. position: absolute;
  822. top: -10px;
  823. right: -10px;
  824. }
  825. }
  826. }
  827. .bootstrap-table .table:not(.table-condensed) > tbody > tr > th,
  828. .bootstrap-table .table:not(.table-condensed) > tfoot > tr > th,
  829. .bootstrap-table .table:not(.table-condensed) > thead > tr > td,
  830. .bootstrap-table .table:not(.table-condensed) > tbody > tr > td,
  831. .bootstrap-table .table:not(.table-condensed) > tfoot > tr > td {
  832. padding: 10px 15px;
  833. height: 47px;
  834. }
  835. .fixed-table-container tbody td .th-inner, .fixed-table-container thead th .th-inner {
  836. padding: 10px 10px;
  837. }
  838. .toolbar {
  839. margin-top: 10px;
  840. margin-bottom: 10px;
  841. }
  842. .fixed-table-toolbar .bs-bars, .fixed-table-toolbar .columns, .fixed-table-toolbar .search {
  843. line-height: inherit;
  844. }
  845. .fixed-table-toolbar .toolbar {
  846. margin-top: 0;
  847. margin-bottom: 0;
  848. }
  849. .bootstrap-table table tbody tr:first-child td .bs-checkbox {
  850. vertical-align: middle;
  851. }
  852. .bootstrap-table td.bs-checkbox {
  853. vertical-align: middle;
  854. }
  855. table.table-nowrap {
  856. tbody > tr > td, thead > tr > th {
  857. white-space: nowrap;
  858. }
  859. }
  860. .fixed-table-container thead th .sortable {
  861. padding: 8px 15px;
  862. }
  863. .dropdown-submenu {
  864. position: relative;
  865. > .dropdown-menu {
  866. overflow: auto;
  867. top: 0;
  868. left: 100%;
  869. margin-top: -6px;
  870. margin-left: -1px;
  871. .border-radius(0 6px 6px 6px);
  872. }
  873. &:hover {
  874. > .dropdown-menu {
  875. display: block;
  876. }
  877. > a:after {
  878. border-left-color: #fff;
  879. }
  880. }
  881. > a:after {
  882. display: block;
  883. content: " ";
  884. float: right;
  885. width: 0;
  886. height: 0;
  887. border-color: transparent;
  888. border-style: solid;
  889. border-width: 5px 0 5px 5px;
  890. border-left-color: #ccc;
  891. margin-top: 5px;
  892. margin-right: -10px;
  893. }
  894. &.pull-left {
  895. float: none;
  896. > .dropdown-menu {
  897. left: -100%;
  898. margin-left: 10px;
  899. .border-radius(6px 0 6px 6px);
  900. }
  901. }
  902. }
  903. /*重写toast的几个背景色*/
  904. .toast-primary {
  905. background-color: #48c9b0 !important;
  906. }
  907. .toast-success {
  908. background-color: #18bc9c !important;
  909. }
  910. .toast-error {
  911. background-color: #e74c3c !important;
  912. }
  913. .toast-info {
  914. background-color: #5dade2 !important;
  915. }
  916. .toast-warning {
  917. background-color: #f1c40f !important;
  918. }
  919. .toast-inverse {
  920. background-color: #34495e !important;
  921. }
  922. .toast-default {
  923. background-color: #bdc3c7 !important;
  924. }
  925. #toast-container {
  926. > div, > div:hover {
  927. .box-shadow(0 0 3px #eee);
  928. }
  929. }
  930. .layui-layer-fast {
  931. .layui-layer-title {
  932. background: #2c3e50 !important;
  933. color: #fff !important;
  934. border-bottom: none;
  935. height: 45px;
  936. line-height: 45px;
  937. //只有当包含layui-layer-title标题时才显示按钮
  938. ~ .layui-layer-setwin {
  939. top: 0px;
  940. height: 45px;
  941. > a {
  942. height: 45px;
  943. line-height: 45px;
  944. display: inline-block;
  945. }
  946. }
  947. }
  948. &.layui-layer-border {
  949. border: none !important;
  950. box-shadow: 1px 1px 50px rgba(0, 0, 0, .3) !important;
  951. }
  952. &.layui-layer-iframe {
  953. //overflow:hidden!important;
  954. overflow: visible;
  955. }
  956. .layui-layer-moves {
  957. .box-sizing(content-box);
  958. }
  959. /*自定义底部灰色操作区*/
  960. .layui-layer-btn {
  961. text-align: center !important;
  962. padding: 10px !important;
  963. background: #ecf0f1;
  964. overflow: hidden;
  965. a {
  966. background-color: #95a5a6;
  967. color: #fff !important;
  968. height: 32px;
  969. line-height: 32px;
  970. margin-top: 0;
  971. font-size: 13px;
  972. border: none;
  973. }
  974. .layui-layer-btn0 {
  975. background-color: #18bc9c;
  976. border-color: #18bc9c;
  977. }
  978. }
  979. .layui-layer-footer {
  980. padding: 8px 20px;
  981. background-color: #ecf0f1;
  982. height: auto;
  983. min-height: 53px;
  984. text-align: inherit !important;
  985. }
  986. .layui-layer-confirm {
  987. position: absolute;
  988. width: 100%;
  989. height: 100%;
  990. left: 0;
  991. bottom: 0;
  992. border: 1px solid transparent;
  993. background: transparent;
  994. color: transparent;
  995. &:focus {
  996. border: 1px solid #444c69;
  997. .border-radius(2px);
  998. }
  999. &:focus-visible {
  1000. outline: 0;
  1001. }
  1002. }
  1003. .layui-layer-tab .layui-layer-title span.layui-this {
  1004. height: 46px;
  1005. }
  1006. .layui-layer-setwin {
  1007. > a {
  1008. background: none !important;
  1009. cite {
  1010. display: none;
  1011. }
  1012. &:after {
  1013. content: "\e625";
  1014. font-family: iconfont;
  1015. font-style: normal;
  1016. font-weight: normal;
  1017. text-decoration: inherit;
  1018. position: absolute;
  1019. font-size: 18px;
  1020. color: #fff;
  1021. margin: 0;
  1022. z-index: 1;
  1023. }
  1024. &:hover {
  1025. text-decoration: none !important;
  1026. background: none !important;
  1027. }
  1028. &:focus {
  1029. text-decoration: none !important;
  1030. }
  1031. }
  1032. .layui-layer-min {
  1033. display: none;
  1034. &:after {
  1035. content: "\e625";
  1036. }
  1037. }
  1038. .layui-layer-max {
  1039. display: none;
  1040. &:after {
  1041. content: "\e623";
  1042. }
  1043. }
  1044. .layui-layer-maxmin {
  1045. display: none;
  1046. &:after {
  1047. content: "\e624";
  1048. }
  1049. }
  1050. .layui-layer-close1 {
  1051. &:after {
  1052. content: "\e626";
  1053. }
  1054. }
  1055. //样式二关闭按钮
  1056. .layui-layer-close2, .layui-layer-close2:hover {
  1057. background: url('../libs/fastadmin-layer/dist/theme/default/icon.png') no-repeat -149px -31px !important;
  1058. top: -30px;
  1059. right: -30px;
  1060. &:after {
  1061. display: none;
  1062. }
  1063. }
  1064. }
  1065. }
  1066. .layui-layer-content {
  1067. clear: both;
  1068. }
  1069. .layui-layer-fast-msg {
  1070. min-width: 100px;
  1071. }
  1072. .layui-layer-fast-tab {
  1073. .layui-layer-title {
  1074. .layui-this {
  1075. color: #333;
  1076. }
  1077. }
  1078. .layui-layer-content {
  1079. .layui-layer-tabmain {
  1080. margin: 0;
  1081. padding: 0;
  1082. }
  1083. }
  1084. }
  1085. .input-group > .msg-box.n-right {
  1086. position: absolute;
  1087. }
  1088. @media (min-width: 564px) {
  1089. body.is-dialog .daterangepicker {
  1090. min-width: 130px;
  1091. }
  1092. body.is-dialog .daterangepicker .ranges ul {
  1093. width: 130px;
  1094. }
  1095. }
  1096. /*手机版样式*/
  1097. @media (max-width: @screen-phone) {
  1098. #firstnav {
  1099. .nav-addtabs {
  1100. //display: none;
  1101. }
  1102. .navbar-custom-menu {
  1103. ul li a {
  1104. padding-left: 10px;
  1105. padding-right: 10px;
  1106. }
  1107. }
  1108. .navbar-nav > .user-menu .user-image {
  1109. margin-top: -3px;
  1110. }
  1111. }
  1112. .fixed-table-toolbar {
  1113. > .bs-bars {
  1114. float: none !important;
  1115. }
  1116. .toolbar {
  1117. .btn {
  1118. min-height: @input-min-height;
  1119. }
  1120. a.btn-refresh, a.btn-del, a.btn-add, a.btn-edit, a.btn-import, a.btn-more, a.btn-recyclebin, .btn-mini-xs, .btn-multi {
  1121. font-size: 0;
  1122. .fa {
  1123. font-size: initial;
  1124. }
  1125. }
  1126. }
  1127. .search {
  1128. max-width: 110px;
  1129. float: left !important;
  1130. }
  1131. }
  1132. .fixed .content-wrapper, .fixed .right-side {
  1133. padding-top: 50px;
  1134. }
  1135. .main-sidebar, .left-side {
  1136. padding-top: 144px;
  1137. }
  1138. }
  1139. /*平板样式*/
  1140. @media (max-width: @screen-xs-max) {
  1141. .wrapper .main-header .logo {
  1142. border-bottom: 0 solid transparent;
  1143. position: absolute;
  1144. top: 0;
  1145. z-index: 1200;
  1146. width: 130px;
  1147. left: 50%;
  1148. margin-left: -65px;
  1149. }
  1150. .sidebar .mobilenav a.btn-app {
  1151. color: #444;
  1152. width: 100px;
  1153. height: 70px;
  1154. font-size: 13px;
  1155. border: none;
  1156. background: #fff;
  1157. i.fa {
  1158. font-size: 24px;
  1159. display: inline-block;
  1160. }
  1161. span {
  1162. margin-top: 5px;
  1163. display: block;
  1164. }
  1165. &.active {
  1166. color: #222d32;
  1167. }
  1168. }
  1169. .wrapper .main-header .navbar .dropdown-menu li {
  1170. > a {
  1171. color: #333;
  1172. &:hover {
  1173. background: #eee;
  1174. }
  1175. }
  1176. &.active > a {
  1177. color: #fff;
  1178. &:hover {
  1179. background: #222d32
  1180. }
  1181. }
  1182. }
  1183. .main-sidebar, .left-side {
  1184. padding-top: 50px;
  1185. }
  1186. .multipletab.multiplenav {
  1187. .main-sidebar {
  1188. padding-top: 95px;
  1189. }
  1190. }
  1191. .n-bootstrap {
  1192. .n-right {
  1193. margin-top: 0;
  1194. top: -20px;
  1195. position: absolute;
  1196. left: 0;
  1197. text-align: right;
  1198. width: 100%;
  1199. .msg-wrap {
  1200. position: relative;
  1201. }
  1202. }
  1203. .col-xs-12 > .n-right {
  1204. .msg-wrap {
  1205. margin-right: 15px;
  1206. }
  1207. }
  1208. }
  1209. }
  1210. /*修复radio和checkbox样式对齐*/
  1211. .radio, .checkbox {
  1212. > label {
  1213. margin-right: 10px;
  1214. > input {
  1215. margin: 5px 0 0;
  1216. }
  1217. }
  1218. }
  1219. .wipecache li a {
  1220. color: #444444 !important;
  1221. }
  1222. /*修正开关关闭下的颜色值*/
  1223. .btn-switcher {
  1224. &.disabled {
  1225. opacity: .6;
  1226. cursor: not-allowed;
  1227. }
  1228. .text-gray {
  1229. color: #d2d6de !important;
  1230. }
  1231. }
  1232. .jumpto input {
  1233. width: 50px;
  1234. margin-left: 5px;
  1235. margin-right: 5px;
  1236. text-align: center;
  1237. display: inline-block;
  1238. }
  1239. .fixed-columns, .fixed-columns-right {
  1240. position: absolute;
  1241. top: 0;
  1242. height: 100%;
  1243. min-height: 41px;
  1244. background-color: #fff;
  1245. box-sizing: border-box;
  1246. z-index: 2;
  1247. box-shadow: 0 -1px 8px rgba(0, 0, 0, .08);
  1248. .fixed-table-body {
  1249. min-height: 41px;
  1250. overflow-x: hidden !important;
  1251. .btn-dragsort {
  1252. pointer-events: none;
  1253. cursor: not-allowed;
  1254. opacity: 0.65;
  1255. filter: alpha(opacity=65);
  1256. -webkit-box-shadow: none;
  1257. box-shadow: none;
  1258. }
  1259. }
  1260. }
  1261. .fixed-columns {
  1262. left: 0;
  1263. }
  1264. .fixed-columns-right {
  1265. right: 0;
  1266. box-shadow: -1px 0 8px rgba(0, 0, 0, .08);
  1267. }
  1268. .fix-sticky {
  1269. position: fixed;
  1270. z-index: 100;
  1271. thead {
  1272. background: #fff;
  1273. th, th:first-child {
  1274. border-left: 0;
  1275. border-right: 0;
  1276. border-bottom: 1px solid #eee;
  1277. border-radius: 0;
  1278. }
  1279. }
  1280. }
  1281. .sidebar-menu li.treeview-open > a > .fa-angle-left, .sidebar-menu li.treeview-open > a > .pull-right-container > .fa-angle-left {
  1282. .rotate(-90deg);
  1283. }
  1284. .sidebar-menu > li {
  1285. //margin: 4px 0 4px 0;
  1286. }
  1287. .sidebar-menu .treeview-menu > li {
  1288. margin: 4px 0 4px 0;
  1289. }
  1290. .bootstrap-tagsinput {
  1291. background-color: #fff;
  1292. border: 1px solid #ccc;
  1293. box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  1294. display: inline-block;
  1295. padding: 4px 6px;
  1296. //margin-bottom: 10px;
  1297. color: #555;
  1298. vertical-align: middle;
  1299. //border-radius: 4px;
  1300. //max-width: 100%;
  1301. width: 100%;
  1302. line-height: 23px;
  1303. cursor: text;
  1304. input {
  1305. border: none;
  1306. box-shadow: none;
  1307. outline: none;
  1308. background-color: transparent;
  1309. padding: 0;
  1310. margin: 0;
  1311. font-size: 13px;
  1312. //width: auto !important;
  1313. width: 80px;
  1314. max-width: inherit;
  1315. &:focus {
  1316. border: none;
  1317. box-shadow: none;
  1318. }
  1319. }
  1320. .tagsinput-text {
  1321. display: inline-block;
  1322. overflow: auto;
  1323. visibility: hidden;
  1324. height: 1px;
  1325. position: absolute;
  1326. bottom: -1px;
  1327. left: 0;
  1328. }
  1329. .tag {
  1330. margin-right: 2px;
  1331. color: white;
  1332. min-height: 23px;
  1333. [data-role="remove"] {
  1334. margin-left: 5px;
  1335. cursor: pointer;
  1336. &:after {
  1337. content: "x";
  1338. padding: 0px 2px;
  1339. }
  1340. &:hover {
  1341. background-color: rgba(255, 255, 255, .16);
  1342. }
  1343. }
  1344. }
  1345. }
  1346. .autocomplete-suggestions {
  1347. border-radius: 2px;
  1348. background: #FFF;
  1349. overflow: auto;
  1350. min-width: 200px;
  1351. .box-shadow(0px 20px 30px rgba(83, 88, 93, 0.05), 0px 0px 30px rgba(83, 88, 93, 0.1));
  1352. strong {
  1353. font-weight: normal;
  1354. color: red;
  1355. }
  1356. .autocomplete-suggestion {
  1357. padding: 5px 10px;
  1358. white-space: nowrap;
  1359. overflow: hidden;
  1360. }
  1361. .autocomplete-selected {
  1362. background: #F0F0F0;
  1363. }
  1364. .autocomplete-group {
  1365. padding: 5px 10px;
  1366. strong {
  1367. display: block;
  1368. border-bottom: 1px solid #ddd;
  1369. }
  1370. }
  1371. }