vue-easytable
Version:
380 lines (379 loc) • 18.6 kB
CSS
/* ve-table */
/* ve-pagination */
/* ve-checkbox */
/* ve-radio */
/* ve-select */
/* ve-dropdown */
/* ve-contextmenu */
.ve-table *,
.ve-table *:before,
.ve-table *:after {
box-sizing: border-box;
}
.ve-table {
position: relative;
overflow: hidden;
}
.ve-table .ve-table-container {
position: relative;
overflow-y: auto;
height: 100%;
width: 100%;
user-select: text;
}
.ve-table .ve-table-container .ve-table-content-wrapper {
position: relative;
left: 0;
right: 0;
top: 0;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content {
min-width: 100%;
table-layout: fixed;
border-collapse: separate;
border-spacing: 0;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content thead.ve-table-header tr.ve-table-header-tr {
height: 40px;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content thead.ve-table-header tr.ve-table-header-tr th.ve-table-header-th {
background-color: #fafafa;
padding: 10px;
font-weight: 500;
color: #000000d9;
font-size: 14px;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content thead.ve-table-header tr.ve-table-header-tr th.ve-table-header-th.ve-table-cell-indicator {
background-color: #eaebec;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content thead.ve-table-header tr.ve-table-header-tr th.ve-table-header-th.ve-table-cell-indicator-active {
background-color: #5f6266;
color: #fff;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content thead.ve-table-header.ve-table-fixed-header tr th {
position: sticky;
z-index: 20;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content thead.ve-table-header .ve-table-header-tr .ve-table-header-th {
/* filter */
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content thead.ve-table-header .ve-table-header-tr .ve-table-header-th.ve-table-fixed-left,
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content thead.ve-table-header .ve-table-header-tr .ve-table-header-th.ve-table-fixed-right {
position: sticky;
z-index: 30;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content thead.ve-table-header .ve-table-header-tr .ve-table-header-th .ve-table-checkbox-wrapper {
width: 25px;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content thead.ve-table-header .ve-table-header-tr .ve-table-header-th .ve-table-sort {
display: inline-block;
position: relative;
width: 16px;
height: 16px;
margin-left: 5px;
color: #bfbfbf;
pointer-events: none;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content thead.ve-table-header .ve-table-header-tr .ve-table-header-th .ve-table-sort .ve-table-sort-icon {
position: absolute;
display: block;
font-size: 14px;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content thead.ve-table-header .ve-table-header-tr .ve-table-header-th .ve-table-sort .ve-table-sort-icon.ve-table-sort-icon-top {
top: 1px;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content thead.ve-table-header .ve-table-header-tr .ve-table-header-th .ve-table-sort .ve-table-sort-icon.ve-table-sort-icon-bottom {
top: 9px;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content thead.ve-table-header .ve-table-header-tr .ve-table-header-th .ve-table-sort .ve-table-sort-icon.active {
color: #108ee9;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content thead.ve-table-header .ve-table-header-tr .ve-table-header-th.ve-table-sortable-column {
cursor: pointer;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content thead.ve-table-header .ve-table-header-tr .ve-table-header-th .ve-table-filter {
display: inline-block;
position: relative;
width: 0;
height: 16px;
cursor: pointer;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content thead.ve-table-header .ve-table-header-tr .ve-table-header-th .ve-table-filter .ve-table-filter-icon {
color: #000;
position: absolute;
top: 0;
left: 5px;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body tr.ve-table-body-tr,
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body tr.ve-table-expand-tr {
height: 40px;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body tr.ve-table-body-tr td.ve-table-body-td,
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body tr.ve-table-expand-tr td.ve-table-body-td,
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body tr.ve-table-body-tr td.ve-table-expand-td,
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body tr.ve-table-expand-tr td.ve-table-expand-td {
background-color: #fff;
color: #000000d9;
height: inherit;
font-size: 14px;
overflow: hidden;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body tr.ve-table-body-tr td.ve-table-body-td,
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body tr.ve-table-expand-tr td.ve-table-body-td {
padding: 10px;
white-space: pre-wrap;
overflow: hidden;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body tr.ve-table-body-tr td.ve-table-operation-col,
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body tr.ve-table-expand-tr td.ve-table-operation-col {
background-color: #fafafa;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body tr.ve-table-body-tr td.ve-table-operation-col.ve-table-cell-indicator,
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body tr.ve-table-expand-tr td.ve-table-operation-col.ve-table-cell-indicator {
background-color: #eaebec;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body tr.ve-table-body-tr td.ve-table-operation-col.ve-table-cell-indicator-active,
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body tr.ve-table-expand-tr td.ve-table-operation-col.ve-table-cell-indicator-active {
background-color: #5f6266;
color: #fff;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body tr.ve-table-expand-tr {
display: table-row;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body tr.ve-table-body-row-scrolling > td {
background-color: #fff;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body.ve-table-stripe tr.ve-table-body-tr:nth-child(2n + 1) td {
background-color: #fafafa;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body.ve-table-row-hover tr.ve-table-body-tr:hover td {
background-color: #f5f7fa;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body.ve-table-row-highlight tr.ve-table-body-tr.ve-table-tr-highlight td {
background-color: #e0f3ff;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body .ve-table-body-tr .ve-table-body-td.ve-table-fixed-left,
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body .ve-table-body-tr .ve-table-body-td.ve-table-fixed-right {
position: sticky;
z-index: 10;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body .ve-table-body-tr .ve-table-body-td .ve-table-row-expand-icon {
cursor: pointer;
display: inline-block;
width: 20px;
height: 20px;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body .ve-table-body-tr .ve-table-body-td .ve-table-row-expand-icon i {
display: inline-flex;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body .ve-table-body-tr .ve-table-body-td .ve-table-row-expand-icon i::before {
transform: rotate(0deg);
transition: transform 0.3s;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body .ve-table-body-tr .ve-table-body-td .ve-table-row-expand-icon.ve-table-expand-icon-collapsed i::before {
transform: rotate(90deg);
transition: transform 0.3s;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body .ve-table-body-tr .ve-table-body-td .ve-table-checkbox-wrapper {
width: 25px;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body .ve-table-body-tr .ve-table-body-td .ve-table-body-td-span-ellipsis {
overflow: hidden;
display: -webkit-box;
text-overflow: ellipsis;
/* -webkit-line-clamp: 1; */
-webkit-box-orient: vertical;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tbody.ve-table-body .ve-table-expand-tr .ve-table-expand-td-content {
position: sticky;
z-index: 10;
left: 0px;
padding: 0 10px;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tfoot.ve-table-footer tr.ve-table-footer-tr {
height: 40px;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tfoot.ve-table-footer tr.ve-table-footer-tr td.ve-table-footer-td {
background-color: #fafafa;
color: #000000d9;
padding: 10px;
font-size: 14px;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tfoot.ve-table-footer.ve-table-fixed-footer tr td {
position: sticky;
z-index: 20;
}
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tfoot.ve-table-footer .ve-table-footer-tr .ve-table-footer-td.ve-table-fixed-left,
.ve-table .ve-table-container .ve-table-content-wrapper table.ve-table-content tfoot.ve-table-footer .ve-table-footer-tr .ve-table-footer-td.ve-table-fixed-right {
position: sticky;
z-index: 30;
}
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-fixed-left .ve-table-selection-current .ve-table-selection-corner,
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-fixed-left .ve-table-selection-normal-area .ve-table-selection-corner,
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-fixed-left .ve-table-selection-autofill-area .ve-table-selection-corner {
position: absolute;
z-index: 11;
}
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-fixed-left .ve-table-selection-current .ve-table-selection-border,
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-fixed-left .ve-table-selection-normal-area .ve-table-selection-border,
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-fixed-left .ve-table-selection-autofill-area .ve-table-selection-border {
position: absolute;
z-index: 10;
}
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-fixed-left .ve-table-selection-normal-area-layer {
position: absolute;
z-index: 10;
}
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-middle .ve-table-selection-current .ve-table-selection-corner,
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-middle .ve-table-selection-normal-area .ve-table-selection-corner,
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-middle .ve-table-selection-autofill-area .ve-table-selection-corner {
position: absolute;
z-index: 1;
}
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-middle .ve-table-selection-current .ve-table-selection-border,
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-middle .ve-table-selection-normal-area .ve-table-selection-border,
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-middle .ve-table-selection-autofill-area .ve-table-selection-border {
position: absolute;
z-index: 0;
}
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-middle .ve-table-selection-normal-area-layer {
position: absolute;
z-index: 0;
}
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-fixed-right .ve-table-selection-current .ve-table-selection-corner,
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-fixed-right .ve-table-selection-normal-area .ve-table-selection-corner,
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-fixed-right .ve-table-selection-autofill-area .ve-table-selection-corner {
position: absolute;
z-index: 11;
}
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-fixed-right .ve-table-selection-current .ve-table-selection-border,
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-fixed-right .ve-table-selection-normal-area .ve-table-selection-border,
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-fixed-right .ve-table-selection-autofill-area .ve-table-selection-border {
position: absolute;
z-index: 10;
}
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-fixed-right .ve-table-selection-normal-area-layer {
position: absolute;
z-index: 10;
}
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-normal-area-layer {
background-color: #0d65eb;
opacity: 0.1;
pointer-events: none;
}
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-current .ve-table-selection-corner,
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-normal-area .ve-table-selection-corner {
display: block;
height: 8px;
width: 8px;
border-style: solid;
border-color: #ffffff;
background-color: #4b89ff;
cursor: crosshair;
}
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-current .ve-table-selection-border,
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-normal-area .ve-table-selection-border {
display: block;
background-color: #4b89ff;
}
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-autofill-area .ve-table-selection-border {
display: block;
background-color: #ff000085;
}
.ve-table .ve-table-container .ve-table-content-wrapper .ve-table-selection-wrapper .ve-table-selection-border {
pointer-events: none;
}
.ve-table .ve-table-container .ve-table-virtual-phantom.ve-table-virtual-scroll {
position: absolute;
left: 0;
top: 0;
right: 0;
z-index: -1;
}
.ve-table .ve-table-container.ve-table-container-left-scrolling .ve-table-last-left-fixed-column {
border-right-color: #ddd;
}
.ve-table .ve-table-container.ve-table-container-right-scrolling .ve-table-first-right-fixed-column {
border-left: 1px solid #ddd;
}
.ve-table .ve-table-container.ve-table-autofilling {
cursor: crosshair;
}
.ve-table .ve-table-container.ve-table-enable-cell-selection {
user-select: none;
}
.ve-table .ve-table-container .ve-table-border-x th,
.ve-table .ve-table-container .ve-table-border-x td {
border-bottom: 1px solid #eee;
}
.ve-table .ve-table-container .ve-table-border-x tr:first-child > th,
.ve-table .ve-table-container .ve-table-border-x tr.ve-table-footer-tr:first-child > td {
border-top: 1px solid #eee;
}
.ve-table .ve-table-container .ve-table-border-y th,
.ve-table .ve-table-container .ve-table-border-y td {
border-right: 1px solid #eee;
}
.ve-table .ve-table-container .ve-table-border-y th:first-child,
.ve-table .ve-table-container .ve-table-border-y td:first-child {
border-left: 1px solid #eee;
}
.ve-table.ve-table-border-around {
border: 1px solid #eee;
}
.ve-table.ve-table-border-around .ve-table-container table.ve-table-content.ve-table-border-x tr:last-child > td {
border-bottom: 0px;
}
.ve-table.ve-table-border-around .ve-table-container table.ve-table-content.ve-table-border-x tr:first-child > th {
border-top: 0px;
}
.ve-table.ve-table-border-around .ve-table-container table.ve-table-content.ve-table-border-y th.ve-table-last-column,
.ve-table.ve-table-border-around .ve-table-container table.ve-table-content.ve-table-border-y td:last-child {
border-right: 0px;
}
.ve-table.ve-table-border-around .ve-table-container table.ve-table-content.ve-table-border-y th:first-child,
.ve-table.ve-table-border-around .ve-table-container table.ve-table-content.ve-table-border-y td:first-child {
border-left: 0px;
}
.ve-table .ve-table-edit-input-container {
position: absolute;
right: auto;
}
.ve-table .ve-table-edit-input-container .ve-table-edit-input {
resize: none;
overflow-y: visible;
border: none;
outline-width: 0;
margin: 0;
padding: 1px 5px 0;
font-family: inherit;
line-height: 30px;
font-size: inherit;
border: 2px solid #2196f3;
box-shadow: 1px 2px 5px 0 #1f232966;
display: block;
color: #000;
border-radius: 0;
background-color: #fff;
}
.ve-table .ve-table-column-resizer-handler {
position: absolute;
cursor: col-resize;
top: 0;
bottom: 0;
width: 5px;
height: 40px;
z-index: 50;
}
.ve-table .ve-table-column-resizer-handler.active {
background-color: #4d90fe;
}
.ve-table .ve-table-column-resizer-line {
position: absolute;
pointer-events: none;
top: 0;
bottom: 0;
width: 0;
border-left: 1px solid #4d90fe;
z-index: 50;
}