| @import "mixins/mixins"; | 
| @import "checkbox"; | 
| @import "tag"; | 
| @import "tooltip"; | 
| @import "common/var"; | 
|   | 
| @include b(table) { | 
|   position: relative; | 
|   overflow: hidden; | 
|   box-sizing: border-box; | 
|   flex: 1; | 
|   width: 100%; | 
|   max-width: 100%; | 
|   background-color: $--color-white; | 
|   font-size: 14px; | 
|   color: $--table-font-color; | 
|   | 
|   // 数据为空 | 
|   @include e(empty-block) { | 
|     min-height: 60px; | 
|     text-align: center; | 
|     width: 100%; | 
|     display: flex; | 
|     justify-content: center; | 
|     align-items: center; | 
|   } | 
|   | 
|   @include e(empty-text) { | 
|     // min-height doesn't work in IE10 and IE11 https://github.com/philipwalton/flexbugs#3-min-height-on-a-flex-container-wont-apply-to-its-flex-items | 
|     // set empty text line height up to contrainer min-height as workaround. | 
|     line-height: 60px; | 
|     width: 50%; | 
|     color: $--color-text-secondary; | 
|   } | 
|   | 
|   // 展开行 | 
|   @include e(expand-column) { | 
|     .cell { | 
|       padding: 0; | 
|       text-align: center; | 
|     } | 
|   } | 
|   | 
|   @include e(expand-icon) { | 
|     position: relative; | 
|     cursor: pointer; | 
|     color: #666; | 
|     font-size: 12px; | 
|     transition: transform 0.2s ease-in-out; | 
|     height: 20px; | 
|   | 
|     @include m(expanded) { | 
|       transform: rotate(90deg); | 
|     } | 
|   | 
|     > .el-icon { | 
|       position: absolute; | 
|       left: 50%; | 
|       top: 50%; | 
|       margin-left: -5px; | 
|       margin-top: -5px; | 
|     } | 
|   } | 
|   | 
|   @include e(expanded-cell) { | 
|     background-color: $--color-white; | 
|   | 
|     // 纯属为了增加权重 | 
|     &[class*=cell] { | 
|       padding: 20px 50px; | 
|     } | 
|   | 
|     &:hover { | 
|       background-color: transparent !important; | 
|     } | 
|   } | 
|   | 
|   @include e(placeholder) { | 
|     display: inline-block; | 
|     width: 20px; | 
|   } | 
|   | 
|   @include e(append-wrapper) { | 
|     // 避免外边距重合 https://developer.mozilla.org/zh-CN/docs/Web/CSS/CSS_Box_Model/Mastering_margin_collapsing | 
|     overflow: hidden; | 
|   } | 
|   | 
|   @include m(fit) { | 
|     border-right: 0; | 
|     border-bottom: 0; | 
|   | 
|     .el-table__cell.gutter { | 
|       border-right-width: 1px; | 
|     } | 
|   } | 
|   | 
|   @include m(scrollable-x) { | 
|     .el-table__body-wrapper { | 
|       overflow-x: auto; | 
|     } | 
|   } | 
|   | 
|   @include m(scrollable-y) { | 
|     .el-table__body-wrapper { | 
|       overflow-y: auto; | 
|     } | 
|   } | 
|   | 
|   thead { | 
|     color: $--table-header-font-color; | 
|     font-weight: 500; | 
|   | 
|     &.is-group { | 
|       th.el-table__cell { | 
|         background: $--background-color-base; | 
|       } | 
|     } | 
|   } | 
|   | 
|   .el-table__cell { | 
|     padding: 12px 0; | 
|     min-width: 0; | 
|     box-sizing: border-box; | 
|     text-overflow: ellipsis; | 
|     vertical-align: middle; | 
|     position: relative; | 
|     text-align: left; | 
|   | 
|     @include when(center) { | 
|       text-align: center; | 
|     } | 
|   | 
|     @include when(right) { | 
|       text-align: right; | 
|     } | 
|   | 
|     &.gutter { | 
|       width: 15px; | 
|       border-right-width: 0; | 
|       border-bottom-width: 0; | 
|       padding: 0; | 
|     } | 
|   | 
|     &.is-hidden { | 
|       > * { | 
|         visibility: hidden; | 
|       } | 
|     } | 
|   } | 
|   | 
|   @include m(medium) { | 
|     .el-table__cell { | 
|       padding: 10px 0; | 
|     } | 
|   } | 
|   | 
|   @include m(small) { | 
|     font-size: 12px; | 
|     .el-table__cell { | 
|       padding: 8px 0; | 
|     } | 
|   } | 
|   | 
|   @include m(mini) { | 
|     font-size: 12px; | 
|     .el-table__cell { | 
|       padding: 6px 0; | 
|     } | 
|   } | 
|   | 
|   tr { | 
|     background-color: $--color-white; | 
|   | 
|     input[type="checkbox"] { | 
|       margin: 0; | 
|     } | 
|   } | 
|   | 
|   th.el-table__cell.is-leaf, | 
|   td.el-table__cell { | 
|     border-bottom: $--table-border; | 
|   } | 
|   | 
|   th.el-table__cell.is-sortable { | 
|     cursor: pointer; | 
|   } | 
|   | 
|   th.el-table__cell { | 
|     overflow: hidden; | 
|     user-select: none; | 
|     background-color: $--table-header-background-color; | 
|   | 
|     > .cell { | 
|       display: inline-block; | 
|       box-sizing: border-box; | 
|       position: relative; | 
|       vertical-align: middle; | 
|       padding-left: 10px; | 
|       padding-right: 10px; | 
|       width: 100%; | 
|   | 
|       &.highlight { | 
|         color: $--color-primary; | 
|       } | 
|     } | 
|   | 
|     &.required > div::before { | 
|       display: inline-block; | 
|       content: ""; | 
|       width: 8px; | 
|       height: 8px; | 
|       border-radius: 50%; | 
|       background: #ff4d51; | 
|       margin-right: 5px; | 
|       vertical-align: middle; | 
|     } | 
|   } | 
|   | 
|   td.el-table__cell { | 
|     div { | 
|       box-sizing: border-box; | 
|     } | 
|   | 
|     &.gutter { | 
|       width: 0; | 
|     } | 
|   } | 
|   | 
|   .cell { | 
|     box-sizing: border-box; | 
|     overflow: hidden; | 
|     text-overflow: ellipsis; | 
|     white-space: normal; | 
|     word-break: break-all; | 
|     line-height: 23px; | 
|     padding-left: 10px; | 
|     padding-right: 10px; | 
|   | 
|     &.el-tooltip { | 
|       white-space: nowrap; | 
|       min-width: 50px; | 
|     } | 
|   } | 
|   | 
|   // 拥有多级表头 | 
|   @include m((group, border)) { | 
|     border: $--table-border; | 
|   | 
|     @include share-rule(border-pseudo) { | 
|       content: ''; | 
|       position: absolute; | 
|       background-color: $--table-border-color; | 
|       z-index: 1; | 
|     } | 
|   | 
|     // 表格右部伪 border | 
|     &::after { | 
|       @include extend-rule(border-pseudo); | 
|       top: 0; | 
|       right: 0; | 
|       width: 1px; | 
|       height: 100%; | 
|     } | 
|   } | 
|   | 
|   // 表格底部伪 border,总是有的 | 
|   &::before { | 
|     @include extend-rule(border-pseudo); | 
|     left: 0; | 
|     bottom: 0; | 
|     width: 100%; | 
|     height: 1px; | 
|   } | 
|   | 
|   // table--border | 
|   @include m(border) { | 
|     border-right: none; | 
|     border-bottom: none; | 
|   | 
|     &.el-loading-parent--relative { | 
|       border-color: transparent; | 
|     } | 
|   | 
|     .el-table__cell { | 
|       border-right: $--table-border; | 
|   | 
|       &:first-child .cell { | 
|         padding-left: 10px; | 
|       } | 
|     } | 
|   | 
|     th.el-table__cell.gutter:last-of-type { | 
|       border-bottom: $--table-border; | 
|       border-bottom-width: 1px; | 
|     } | 
|   | 
|     & th.el-table__cell { | 
|       border-bottom: $--table-border; | 
|     } | 
|   } | 
|   | 
|   @include m(hidden) { | 
|     visibility: hidden; | 
|   } | 
|   | 
|   @include e((fixed, fixed-right)) { | 
|     position: absolute; | 
|     top: 0; | 
|     left: 0; | 
|     overflow-x: hidden; | 
|     overflow-y: hidden; | 
|     box-shadow: $--table-fixed-box-shadow; | 
|   | 
|     &::before { | 
|       content: ''; | 
|       position: absolute; | 
|       left: 0; | 
|       bottom: 0; | 
|       width: 100%; | 
|       height: 1px; | 
|       background-color: $--border-color-lighter; | 
|       z-index: 4; | 
|     } | 
|   } | 
|   | 
|   @include e(fixed-right-patch) { | 
|     position: absolute; | 
|     top: -1px; | 
|     right: 0; | 
|     background-color: $--color-white; | 
|     border-bottom: $--table-border; | 
|   } | 
|   | 
|   @include e(fixed-right) { | 
|     top: 0; | 
|     left: auto; | 
|     right: 0; | 
|   | 
|     .el-table__fixed-header-wrapper, | 
|     .el-table__fixed-body-wrapper, | 
|     .el-table__fixed-footer-wrapper { | 
|       left: auto; | 
|       right: 0; | 
|     } | 
|   } | 
|   | 
|   @include e(fixed-header-wrapper) { | 
|     position: absolute; | 
|     left: 0; | 
|     top: 0; | 
|     z-index: 3; | 
|   } | 
|   | 
|   @include e(fixed-footer-wrapper) { | 
|     position: absolute; | 
|     left: 0; | 
|     bottom: 0; | 
|     z-index: 3; | 
|   | 
|     & tbody td.el-table__cell { | 
|       border-top: $--table-border; | 
|       background-color: $--table-row-hover-background-color; | 
|       color: $--table-font-color; | 
|     } | 
|   } | 
|   | 
|   @include e(fixed-body-wrapper) { | 
|     position: absolute; | 
|     left: 0; | 
|     top: 37px; | 
|     overflow: hidden; | 
|     z-index: 3; | 
|   } | 
|   | 
|   @include e((header-wrapper, body-wrapper, footer-wrapper)) { | 
|     width: 100%; | 
|   } | 
|   | 
|   @include e(footer-wrapper) { | 
|     margin-top: -1px; | 
|     td.el-table__cell { | 
|       border-top: $--table-border; | 
|     } | 
|   } | 
|   | 
|   @include e((header, body, footer)) { | 
|     table-layout: fixed; | 
|     border-collapse: separate; | 
|   } | 
|   | 
|   @include e((header-wrapper, footer-wrapper)) { | 
|     overflow: hidden; | 
|   | 
|     & tbody td.el-table__cell { | 
|       background-color: $--table-row-hover-background-color; | 
|       color: $--table-font-color; | 
|     } | 
|   } | 
|   | 
|   @include e(body-wrapper) { | 
|     overflow: hidden; | 
|     position: relative; | 
|   | 
|     @include when(scrolling-none) { | 
|       ~ .el-table__fixed, | 
|       ~ .el-table__fixed-right { | 
|         box-shadow: none; | 
|       } | 
|     } | 
|   | 
|     @include when(scrolling-left) { | 
|       ~ .el-table__fixed { | 
|         box-shadow: none; | 
|       } | 
|     } | 
|   | 
|     @include when(scrolling-right) { | 
|       ~ .el-table__fixed-right { | 
|         box-shadow: none; | 
|       } | 
|     } | 
|   | 
|     .el-table--border { | 
|       @include when(scrolling-right) { | 
|         ~ .el-table__fixed-right { | 
|           border-left: $--table-border; | 
|         } | 
|       } | 
|   | 
|       @include when(scrolling-left) { | 
|         ~ .el-table__fixed { | 
|           border-right: $--table-border; | 
|         } | 
|       } | 
|     } | 
|   } | 
|   | 
|   .caret-wrapper { | 
|     display: inline-flex; | 
|     flex-direction: column; | 
|     align-items: center; | 
|     height: 34px; | 
|     width: 24px; | 
|     vertical-align: middle; | 
|     cursor: pointer; | 
|     overflow: initial; | 
|     position: relative; | 
|   } | 
|   | 
|   .sort-caret { | 
|     width: 0; | 
|     height: 0; | 
|     border: solid 5px transparent; | 
|     position: absolute; | 
|     left: 7px; | 
|   | 
|     &.ascending { | 
|       border-bottom-color: $--color-text-placeholder; | 
|       top: 5px; | 
|     } | 
|   | 
|     &.descending { | 
|       border-top-color: $--color-text-placeholder; | 
|       bottom: 7px; | 
|     } | 
|   } | 
|   | 
|   .ascending .sort-caret.ascending { | 
|     border-bottom-color: $--color-primary; | 
|   } | 
|   | 
|   .descending .sort-caret.descending { | 
|     border-top-color: $--color-primary; | 
|   } | 
|   | 
|   .hidden-columns { | 
|     visibility: hidden; | 
|     position: absolute; | 
|     z-index: -1; | 
|   } | 
|   | 
|   @include m(striped) { | 
|     & .el-table__body { | 
|       & tr.el-table__row--striped { | 
|         td.el-table__cell { | 
|           background: #FAFAFA; | 
|         } | 
|   | 
|         &.current-row td.el-table__cell { | 
|           background-color: $--table-current-row-background-color; | 
|         } | 
|       } | 
|     } | 
|   } | 
|   | 
|   @include e(body) { | 
|     tr.hover-row { | 
|       &, &.el-table__row--striped { | 
|         &, &.current-row { | 
|           > td.el-table__cell { | 
|             background-color: $--table-row-hover-background-color; | 
|           } | 
|         } | 
|       } | 
|     } | 
|   | 
|     tr.current-row > td.el-table__cell { | 
|       background-color: $--table-current-row-background-color; | 
|     } | 
|   } | 
|   | 
|   @include e(column-resize-proxy) { | 
|     position: absolute; | 
|     left: 200px; | 
|     top: 0; | 
|     bottom: 0; | 
|     width: 0; | 
|     border-left: $--table-border; | 
|     z-index: 10; | 
|   } | 
|   | 
|   @include e(column-filter-trigger) { | 
|     display: inline-block; | 
|     line-height: 34px; | 
|     cursor: pointer; | 
|   | 
|     & i { | 
|       color: $--color-info; | 
|       font-size: 12px; | 
|       transform: scale(.75); | 
|     } | 
|   } | 
|   | 
|   @include m(enable-row-transition) { | 
|     .el-table__body td.el-table__cell { | 
|       transition: background-color .25s ease; | 
|     } | 
|   } | 
|   | 
|   @include m(enable-row-hover) { | 
|     .el-table__body tr:hover > td.el-table__cell { | 
|       background-color: $--table-row-hover-background-color; | 
|     } | 
|   } | 
|   | 
|   @include m(fluid-height) { | 
|     .el-table__fixed, | 
|     .el-table__fixed-right { | 
|       bottom: 0; | 
|       overflow: hidden; | 
|     } | 
|   } | 
|   | 
|   [class*=el-table__row--level] { | 
|     .el-table__expand-icon { | 
|       display: inline-block; | 
|       width: 20px; | 
|       line-height: 20px; | 
|       height: 20px; | 
|       text-align: center; | 
|       margin-right: 3px; | 
|     } | 
|   } | 
| } |