_table.less 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757
  1. // /**
  2. // * Copyright © Magento, Inc. All rights reserved.
  3. // * See COPYING.txt for license details.
  4. // */
  5. //
  6. // Table Filters
  7. // --------------------------------------
  8. .filter {
  9. input.input-text {
  10. width: 99%;
  11. margin-right: 0;
  12. &::-webkit-input-placeholder {
  13. color: @grid-filters-placeholder-color !important;
  14. text-transform: lowercase;
  15. }
  16. &::-moz-placeholder {
  17. color: @grid-filters-placeholder-color!important;
  18. text-transform: lowercase;
  19. }
  20. &:-moz-placeholder {
  21. color: @grid-filters-placeholder-color !important;
  22. text-transform: lowercase;
  23. }
  24. &:-ms-input-placeholder {
  25. color: @grid-filters-placeholder-color !important;
  26. text-transform: lowercase;
  27. }
  28. }
  29. }
  30. //
  31. // Table Grid
  32. //--------------------------------------
  33. .grid {
  34. padding: 15px;
  35. table {
  36. width: 100%;
  37. }
  38. tbody tr {
  39. &.selected th,
  40. &.selected td,
  41. &:hover th,
  42. &:hover td,
  43. &:nth-child(odd):hover th,
  44. &:nth-child(odd):hover td {
  45. cursor: pointer;
  46. &.empty-text {
  47. cursor: default;
  48. }
  49. }
  50. }
  51. .empty-text {
  52. text-align: center;
  53. white-space: nowrap;
  54. }
  55. th.required,
  56. th .required {
  57. &:extend(.validation-symbol-light all);
  58. }
  59. // Dates and date ranges
  60. td {
  61. &.col-period,
  62. &.col-date,
  63. &.col-date_to,
  64. &.col-date_from,
  65. &.col-ended_at,
  66. &.col-created_at,
  67. &.col-updated_at,
  68. &.col-customer_since,
  69. &.col-session_start_time,
  70. &.col-last_activity,
  71. &.col-email,
  72. &.col-name,
  73. &.col-sku,
  74. &.col-firstname,
  75. &.col-lastname,
  76. &.col-title,
  77. &.col-label,
  78. &.col-product,
  79. &.col-set_name,
  80. &.col-websites,
  81. &.col-time,
  82. &.col-billing_name,
  83. &.col-shipping_name,
  84. &.col-phone,
  85. &.col-type {
  86. &:extend(.ellipsis all);
  87. }
  88. }
  89. .col-period,
  90. .col-date,
  91. .col-date_to,
  92. .col-date_from,
  93. .col-ended_at,
  94. .col-created_at,
  95. .col-updated_at,
  96. .col-customer_since,
  97. .col-session_start_time,
  98. .col-last_activity,
  99. // Email
  100. .col-email,
  101. // Total items
  102. .col-items_total,
  103. .col-firstname,
  104. .col-lastname,
  105. .col-status-default,
  106. .col-websites,
  107. .col-time,
  108. .col-billing_name,
  109. .col-shipping_name {
  110. &:extend(.col-110-max all);
  111. }
  112. .col-name,
  113. .col-product {
  114. &:extend(.col-370-max all);
  115. }
  116. .col-sku {
  117. max-width: 100px;
  118. width: 100px;
  119. }
  120. // Order ID, Invoice number
  121. .col-order-number,
  122. .col-real_order_id,
  123. .col-invoice-number,
  124. .col-increment_id,
  125. .col-transaction-id,
  126. .col-parent-transaction-id,
  127. .col-reference_id,
  128. // Status
  129. .col-status,
  130. .col-price,
  131. .col-position,
  132. .col__base_grand_total,
  133. .col-grand_total,
  134. .col-sort_order,
  135. // Reports
  136. .col-carts,
  137. .col-priority,
  138. .col-severity {
  139. &:extend(.col-70 all);
  140. }
  141. .col-phone {
  142. &:extend(.col-70-max all);
  143. }
  144. .col-action,
  145. .col-actions,
  146. .col-qty,
  147. .col-purchases {
  148. &:extend(.col-50 all);
  149. }
  150. // Grid columns
  151. .col-select,
  152. .col-id,
  153. .col-number {
  154. &:extend(.col-40 all);
  155. }
  156. .col-select,
  157. .col-massaction {
  158. text-align: center;
  159. }
  160. .editable .input-text {
  161. width: 65px;
  162. }
  163. .col-actions {
  164. .action-select {
  165. background: @form-element-background-color;
  166. border-color: @grid-controls-border;
  167. height: 28px;
  168. margin: 0;
  169. padding: 4px 4px 5px;
  170. width: 80px;
  171. }
  172. }
  173. .col-position.editable {
  174. white-space: nowrap;
  175. .input-text {
  176. margin: -7px 5px 0;
  177. width: 70%;
  178. }
  179. }
  180. }
  181. td.col-period,
  182. td.col-date,
  183. td.col-date_to,
  184. td.col-date_from,
  185. td.col-ended_at,
  186. td.col-created_at,
  187. td.col-updated_at,
  188. td.col-customer_since,
  189. td.col-session_start_time,
  190. td.col-time,
  191. td.col-type {
  192. &:extend(.nowrap all);
  193. }
  194. //
  195. // Data table
  196. //--------------------------------------
  197. .data-table {
  198. width: 100%;
  199. thead,
  200. tfoot,
  201. th {
  202. background: @grid-td-light;
  203. .style2();
  204. }
  205. th {
  206. text-align: left;
  207. }
  208. thead th {
  209. border: solid @data-table-th-border-color;
  210. border-width: 0 0 1px;
  211. padding: 7px;
  212. }
  213. td,
  214. tbody tr th,
  215. tbody tr td {
  216. background: @data-table-td-background-color;
  217. border-width: 0;
  218. padding: 5px 7px;
  219. vertical-align: middle;
  220. }
  221. tbody {
  222. tr {
  223. &:nth-child(odd) th,
  224. &:nth-child(odd) td {
  225. background: @data-table-td-background-color-odd;
  226. }
  227. }
  228. &.odd {
  229. tr {
  230. th,
  231. td {
  232. background: @data-table-td-background-color-odd;
  233. }
  234. }
  235. }
  236. &.even {
  237. tr {
  238. th,
  239. td {
  240. background: @data-table-td-background-color;
  241. }
  242. }
  243. }
  244. }
  245. tfoot {
  246. tr {
  247. &:last-child th,
  248. &:last-child td {
  249. border: 0;
  250. }
  251. }
  252. }
  253. &.order-tables {
  254. tbody {
  255. td {
  256. vertical-align: top;
  257. }
  258. &:hover tr {
  259. th,
  260. td {
  261. background: @data-table-td-background-color-hover;
  262. }
  263. }
  264. }
  265. tfoot td {
  266. background: @grid-tfoot-background-color;
  267. .style2();
  268. }
  269. }
  270. input[type="text"] {
  271. width: 98%;
  272. padding-left: 1%;
  273. padding-right: 1%;
  274. }
  275. select {
  276. margin: 0;
  277. box-sizing: border-box;
  278. }
  279. th.required-entry,
  280. td.required-entry {
  281. &:extend(.validation-symbol all);
  282. }
  283. .col-actions .actions-split {
  284. margin-top: 4px;
  285. [class^='action-'] {
  286. background: none;
  287. border: 1px solid #c8c3b5;
  288. padding: 3px 5px;
  289. color: #bbb3a6;
  290. font-size: 12px;
  291. &:first-child {
  292. border-right: 0;
  293. }
  294. }
  295. .dropdown-menu {
  296. margin-top: -1px;
  297. a {
  298. display: block;
  299. color: #333;
  300. text-decoration: none;
  301. }
  302. }
  303. &.active .action-toggle {
  304. position: relative;
  305. border-bottom-right-radius: 0;
  306. box-shadow: none;
  307. background: @color-white;
  308. &:after {
  309. position: absolute;
  310. top: 100%;
  311. left: 0;
  312. right: 0;
  313. height: 2px;
  314. margin-top: -1px;
  315. background: @color-white;
  316. content: '';
  317. z-index: 2;
  318. }
  319. .dropdown-menu {
  320. border-top-right-radius: 0;
  321. }
  322. }
  323. }
  324. //
  325. // Attribute Information
  326. // --------------------------------------
  327. .col-default {
  328. white-space: nowrap;
  329. text-align: center;
  330. vertical-align: middle;
  331. }
  332. .col-delete {
  333. text-align: center;
  334. width: 32px;
  335. }
  336. .col-file {
  337. white-space: nowrap;
  338. input,
  339. .input-text {
  340. margin: 0 5px;
  341. width: 40%;
  342. &:first-child {
  343. margin-left: 0;
  344. }
  345. }
  346. }
  347. .col-actions-add {
  348. padding: 10px 0;
  349. }
  350. }
  351. .accordion .config .data-table {
  352. thead th,
  353. tfoot td {
  354. &:extend(.data-table thead all);
  355. }
  356. td {
  357. &:extend(.data-table td all);
  358. }
  359. tbody tr:nth-child(odd) td {
  360. &:extend(.data-table tbody tr:nth-child(odd) td);
  361. }
  362. tfoot tr:last-child td {
  363. &:extend(tfoot tr:last-child td all);
  364. }
  365. }
  366. //
  367. // Grid - Pager and Buttons row
  368. // --------------------------------------
  369. .grid-actions {
  370. background: @grid-frame-background-color;
  371. font-size: 13px;
  372. line-height: 28px;
  373. padding: 10px 15px;
  374. position: relative;
  375. + .grid {
  376. padding-top: 5px;
  377. }
  378. .export,
  379. .filter-actions {
  380. float: right;
  381. margin-left: 10px;
  382. vertical-align: top;
  383. }
  384. .import {
  385. display: block;
  386. }
  387. .action-reset {
  388. .lib-button-as-link();
  389. margin: 6px 10px 0 0;
  390. vertical-align: top;
  391. }
  392. .import,
  393. .export {
  394. .label {
  395. margin: 0 14px 0 0;
  396. vertical-align: inherit;
  397. }
  398. }
  399. .import,
  400. .export,
  401. .filter-actions {
  402. .action- {
  403. vertical-align: inherit;
  404. }
  405. }
  406. .filter {
  407. .date {
  408. float: left;
  409. margin: 0 15px 0 0;
  410. position: relative;
  411. .ui-datepicker-trigger {
  412. &:before {
  413. color: @color-middle;
  414. top: 1px;
  415. }
  416. &:hover {
  417. &:before {
  418. color: @color-dark;
  419. }
  420. }
  421. }
  422. }
  423. .label {
  424. margin: 0;
  425. }
  426. ._has-datepicker {
  427. margin: 0 5px;
  428. width: 80px;
  429. }
  430. .show-by {
  431. .select {
  432. margin-left: 5px;
  433. padding: 4px 44px 5px 4px;
  434. vertical-align: top;
  435. width: auto;
  436. }
  437. }
  438. &.required {
  439. &:after {
  440. content: '';
  441. }
  442. .label span {
  443. &:extend(.validation-symbol all);
  444. }
  445. }
  446. }
  447. .required {
  448. &:extend(.validation-symbol all);
  449. }
  450. img {
  451. vertical-align: middle;
  452. height: 22px;
  453. width: 22px;
  454. }
  455. .validation-advice {
  456. background: @validation-background-color;
  457. border: 1px solid @validation__color;
  458. border-radius: 3px;
  459. color: @validation__color;
  460. margin: 5px 0 0;
  461. padding: 3px 7px;
  462. position: absolute;
  463. white-space: nowrap;
  464. z-index: 5;
  465. &:before {
  466. .arrow(up, 5px, @validation__color);
  467. content: '';
  468. left: 50%;
  469. margin-left: -5px;
  470. position: absolute;
  471. top: -11px;
  472. }
  473. }
  474. input[type="text"].validation-failed {
  475. border-color: @validation__color;
  476. box-shadow: 0 0 8px @validation__color-rgba;
  477. }
  478. .link-feed {
  479. white-space: nowrap;
  480. }
  481. }
  482. .form-inline .grid-actions {
  483. &:extend(.massaction-form-inline-label-reset all);
  484. }
  485. .pager {
  486. .link-feed {
  487. font-size: 12px;
  488. margin: 7px 15px 0 0;
  489. position: absolute;
  490. right: 0;
  491. top: 0;
  492. }
  493. }
  494. //
  495. // Grid - Mass Action
  496. // --------------------------------------
  497. .massaction {
  498. background: @grid-frame-background-color;
  499. border-top: @grid-massaction-border;
  500. font-size: 13px;
  501. line-height: 28px;
  502. padding: 15px 15px 0;
  503. &:extend(.add-clearer all);
  504. > .entry-edit {
  505. float: right;
  506. .field-row {
  507. display: inline-block;
  508. vertical-align: top;
  509. }
  510. .validation-advice {
  511. display: none !important;
  512. }
  513. .form-inline {
  514. display: inline-block;
  515. }
  516. .label {
  517. &:extend(.grid-actions .export .label);
  518. padding: 0;
  519. width: auto;
  520. }
  521. .action- {
  522. &:extend(.grid-actions .export .action-);
  523. vertical-align: top;
  524. }
  525. }
  526. .select.validation-failed {
  527. border: @validation-border;
  528. background: @validation-background-color;
  529. }
  530. }
  531. .form-inline .massaction {
  532. &:extend(.massaction-form-inline-label-reset all);
  533. }
  534. //
  535. // Grid - status and severity
  536. // --------------------------------------
  537. .grid-severity-critical,
  538. .grid-severity-major,
  539. .grid-severity-notice,
  540. .grid-severity-minor {
  541. background: @grid-severity-minor-background-color;
  542. border: 1px solid @grid-severity-minor-border;
  543. color: @grid-severity-minor-color;
  544. display: block;
  545. padding: 0 3px;
  546. font-weight: bold;
  547. line-height: 17px;
  548. text-transform: uppercase;
  549. text-align: center;
  550. }
  551. .grid-severity-critical,
  552. .grid-severity-major {
  553. border-color: @grid-severity-critical-border;
  554. background: @grid-severity-critical-background-color;
  555. color: @grid-severity-critical-color;
  556. }
  557. .grid-severity-notice {
  558. border-color: @grid-severity-notice-border;
  559. background: @grid-severity-notice-background-color;
  560. color: @grid-severity-notice-color;
  561. }
  562. //
  563. // Inputs and selects in tables
  564. // --------------------------------------
  565. .grid,
  566. .data-table {
  567. tbody {
  568. td,
  569. th {
  570. input[type="text"],
  571. .input-text,
  572. select,
  573. .select {
  574. width: 99%;
  575. }
  576. }
  577. }
  578. }
  579. //
  580. // Grids for pages
  581. // --------------------------------------
  582. .ui-tabs-panel {
  583. .grid .col-sku {
  584. max-width: 150px;
  585. width: 150px;
  586. }
  587. }
  588. .col-indexer_status,
  589. .col-indexer_mode {
  590. width: 160px;
  591. }
  592. .fieldset-wrapper {
  593. .grid-actions + .grid {
  594. padding-top: 15px;
  595. }
  596. .grid-actions {
  597. padding: 10px 0 0;
  598. }
  599. .grid {
  600. padding: 0;
  601. }
  602. .massaction {
  603. padding: 0;
  604. border-top: none;
  605. margin-bottom: 15px;
  606. }
  607. }
  608. .accordion .grid {
  609. padding: 0;
  610. }
  611. .ui-dialog-content {
  612. .grid-actions,
  613. .grid {
  614. padding-left: 0;
  615. padding-right: 0;
  616. }
  617. }
  618. //
  619. // Sales
  620. // --------------------------------------
  621. .product-options .grouped-items-table {
  622. .col-name,
  623. .col-sku {
  624. &:extend(.ellipsis all);
  625. &:extend(.col-110-max all);
  626. }
  627. }
  628. //
  629. // Sales -> Qty - table
  630. //--------------------------------------
  631. .qty-table {
  632. td {
  633. border: 0;
  634. padding: 0 5px 3px;
  635. }
  636. }
  637. //
  638. // Sales -> Create Order
  639. //--------------------------------------
  640. .order-account-information {
  641. &:extend(.data-table-td-max all);
  642. }
  643. //
  644. // Content -> Banners
  645. // --------------------------------------
  646. .col-banner_name {
  647. &:extend(.col-370-max all);
  648. &:extend(.ellipsis all);
  649. }