antd
Version:
An enterprise-class UI design language and React-based implementation
450 lines (449 loc) • 11.1 kB
CSS
.ant-table {
font-size: 12px;
color: #666;
position: relative;
border-radius: 6px 6px 0 0;
overflow: hidden;
/* fix firefox scrollbar bug */
}
.ant-table-body {
-webkit-transition: opacity 0.3s ease;
transition: opacity 0.3s ease;
}
.ant-table table {
width: 100%;
border-collapse: separate;
border-spacing: 0;
text-align: left;
border-radius: 6px 6px 0 0;
overflow: hidden;
}
.ant-table-thead > tr > th {
background: #f7f7f7;
font-weight: bold;
-webkit-transition: background .3s ease;
transition: background .3s ease;
text-align: left;
}
.ant-table-thead > tr > th .anticon-filter {
margin-left: 4px;
font-size: 12px;
cursor: pointer;
color: #aaa;
-webkit-transition: all 0.3s ease;
transition: all 0.3s ease;
}
.ant-table-thead > tr > th .anticon-filter:hover {
color: #666;
}
.ant-table-thead > tr > th .ant-table-filter-selected.anticon-filter {
color: #2db7f5;
}
.ant-table-tbody > tr > td {
border-bottom: 1px solid #e9e9e9;
}
.ant-table-thead > tr,
.ant-table-tbody > tr {
-webkit-transition: all .3s ease;
transition: all .3s ease;
}
.ant-table-thead > tr.ant-table-row-hover,
.ant-table-tbody > tr.ant-table-row-hover,
.ant-table-thead > tr:hover,
.ant-table-tbody > tr:hover {
background: #eaf8fe;
}
.ant-table-thead > tr:hover {
background: none;
}
.ant-table-footer {
padding: 16px 8px;
background: #f7f7f7;
position: relative;
z-index: 2;
top: -1px;
border-radius: 0 0 6px 6px;
}
.ant-table.ant-table-bordered .ant-table-footer {
border: 1px solid #e9e9e9;
}
.ant-table-title {
padding: 16px 8px;
position: relative;
top: 1px;
border-radius: 6px 6px 0 0;
}
.ant-table.ant-table-bordered .ant-table-title {
border: 1px solid #e9e9e9;
}
.ant-table-title + .ant-table-content {
position: relative;
}
.ant-table-title + .ant-table-content table {
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.ant-table-tbody > tr.ant-table-row-selected {
background: #fafafa;
}
.ant-table-thead > tr > th.ant-table-column-sort {
background: #eaeaea;
}
.ant-table-thead > tr > th,
.ant-table-tbody > tr > td {
padding: 16px 8px;
word-break: break-all;
}
.ant-table-thead > tr > th.ant-table-selection-column,
.ant-table-tbody > tr > td.ant-table-selection-column {
text-align: center;
width: 60px;
}
.ant-table-header {
background: #f7f7f7;
overflow: hidden;
}
.ant-table-header table {
border-radius: 6px 6px 0 0;
}
.ant-table-loading {
position: relative;
}
.ant-table-loading .ant-table-body {
background: #fff;
opacity: 0.5;
}
.ant-table-loading .ant-table-spin-holder {
height: 20px;
line-height: 20px;
left: 50%;
top: 50%;
margin-left: -30px;
position: absolute;
}
.ant-table-loading .ant-table-with-pagination {
margin-top: -20px;
}
.ant-table-loading .ant-table-without-pagination {
margin-top: 10px;
}
.ant-table-middle .ant-table-thead > tr > th,
.ant-table-middle .ant-table-tbody > tr > td {
padding: 10px 8px;
}
.ant-table-small {
border: 1px solid #e9e9e9;
border-radius: 6px;
}
.ant-table-small .ant-table-header > table,
.ant-table-small .ant-table-body > table {
border: 0;
padding: 0 8px;
}
.ant-table-small.ant-table-bordered .ant-table-body > table {
border: 0;
}
.ant-table-small .ant-table-thead > tr > th {
padding: 10px 8px;
background: #fff;
border-bottom: 1px solid #e9e9e9;
}
.ant-table-small .ant-table-tbody > tr > td {
padding: 6px 8px;
}
.ant-table-small .ant-table-header {
background: #fff;
}
.ant-table-small .ant-table-header table {
border-bottom: 1px solid #e9e9e9;
}
.ant-table-small .ant-table-header .ant-table-thead > tr > th {
border-bottom: 0;
}
.ant-table-small .ant-table-row:last-child td {
border-bottom: 0;
}
.ant-table-column-sorter {
margin-left: 4px;
display: inline-block;
width: 12px;
height: 14px;
vertical-align: middle;
text-align: center;
}
.ant-table-column-sorter-up,
.ant-table-column-sorter-down {
line-height: 4px;
height: 5px;
display: block;
width: 12px;
cursor: pointer;
}
.ant-table-column-sorter-up:hover .anticon,
.ant-table-column-sorter-down:hover .anticon {
color: #666;
}
.ant-table-column-sorter-up.on .anticon-caret-up,
.ant-table-column-sorter-down.on .anticon-caret-up,
.ant-table-column-sorter-up.on .anticon-caret-down,
.ant-table-column-sorter-down.on .anticon-caret-down {
color: #2db7f5;
}
.ant-table-column-sorter .anticon-caret-up,
.ant-table-column-sorter .anticon-caret-down {
display: inline-block;
font-size: 12px;
font-size: 7px \9;
-webkit-transform: scale(0.58333333) rotate(0deg);
-ms-transform: scale(0.58333333) rotate(0deg);
transform: scale(0.58333333) rotate(0deg);
/* IE6-IE8 */
-ms-filter: "progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=1, M12=0, M21=0, M22=1)";
zoom: 1;
line-height: 6px;
height: 6px;
color: #aaa;
}
:root .ant-table-column-sorter .anticon-caret-up,
:root .ant-table-column-sorter .anticon-caret-down {
-webkit-filter: none;
filter: none;
}
:root .ant-table-column-sorter .anticon-caret-up,
:root .ant-table-column-sorter .anticon-caret-down {
font-size: 12px;
}
.ant-table-column-sorter .anticon-caret-up:before,
.ant-table-column-sorter .anticon-caret-down:before {
-moz-transform-origin: 53% 50%;
/* fix firefox position */
}
.ant-table-bordered .ant-table-header > table,
.ant-table-bordered .ant-table-body > table,
.ant-table-bordered .ant-table-fixed-left table,
.ant-table-bordered .ant-table-fixed-right table {
border: 1px solid #e9e9e9;
}
.ant-table-bordered.ant-table-fixed-header .ant-table-header > table {
border-bottom: 0;
}
.ant-table-bordered.ant-table-fixed-header .ant-table-body > table {
border-top: 0;
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.ant-table-bordered.ant-table-fixed-header .ant-table-body-inner > table {
border-top: 0;
}
.ant-table-bordered.ant-table-fixed-header .ant-table-placeholder {
border-bottom: 0;
}
.ant-table-bordered .ant-table-thead > tr > th {
border-bottom: 1px solid #e9e9e9;
}
.ant-table-bordered.ant-table-empty .ant-table-thead > tr > th {
border-bottom: 0;
}
.ant-table-bordered .ant-table-tbody tr:last-child > th,
.ant-table-bordered .ant-table-tbody tr:last-child > td {
border-bottom: 0;
}
.ant-table-bordered .ant-table-thead > tr > th,
.ant-table-bordered .ant-table-tbody > tr > td {
border-right: 1px solid #e9e9e9;
}
.ant-table-bordered .ant-table-thead > tr:first-child > th:last-child,
.ant-table-bordered .ant-table-tbody > tr > td:last-child {
border-right: 0;
}
.ant-table-placeholder {
padding: 16px 8px;
background: #fff;
border-bottom: 1px solid #e9e9e9;
text-align: center;
position: relative;
z-index: 2;
font-size: 12px;
color: #999;
}
.ant-table-placeholder .anticon {
margin-right: 4px;
}
.ant-table-pagination {
margin: 16px 0;
float: right;
}
.ant-table-filter-dropdown {
min-width: 96px;
margin-left: -8px;
background: #fff;
border-radius: 6px;
box-shadow: 0 1px 6px rgba(0, 0, 0, 0.2);
}
.ant-table-filter-dropdown .ant-dropdown-menu {
border: 0;
box-shadow: none;
border-radius: 6px 6px 0 0;
}
.ant-table-filter-dropdown .ant-dropdown-menu-item > label + span {
margin-left: 8px;
}
.ant-table-filter-dropdown .ant-dropdown-menu-sub {
border-radius: 6px;
box-shadow: 0 1px 6px rgba(0, 0, 0, 0.2);
}
.ant-table-filter-dropdown .ant-dropdown-menu .ant-dropdown-submenu-contain-selected .ant-dropdown-menu-submenu-title:after {
color: #2db7f5;
font-weight: bold;
text-shadow: 0 0 2px #d5f1fd;
}
.ant-table-filter-dropdown .ant-dropdown-menu-item {
overflow: hidden;
}
.ant-table-filter-dropdown > .ant-dropdown-menu > .ant-dropdown-menu-item:last-child,
.ant-table-filter-dropdown > .ant-dropdown-menu > .ant-dropdown-menu-submenu:last-child .ant-dropdown-menu-submenu-title {
border-radius: 0;
}
.ant-table-filter-dropdown-btns {
overflow: hidden;
padding: 7px 16px;
border-top: 1px solid #e9e9e9;
}
.ant-table-filter-dropdown-link {
color: #2db7f5;
}
.ant-table-filter-dropdown-link:hover {
color: #57c5f7;
}
.ant-table-filter-dropdown-link:active {
color: #2baee9;
}
.ant-table-filter-dropdown-link.confirm {
float: left;
}
.ant-table-filter-dropdown-link.clear {
float: right;
}
.ant-table-expand-icon-th {
width: 34px;
}
.ant-table-row-expand-icon {
cursor: pointer;
display: inline-block;
width: 17px;
height: 17px;
text-align: center;
line-height: 14px;
border: 1px solid #e9e9e9;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
background: #fff;
}
.ant-table-row-expand-icon-cell {
width: 18px;
}
.ant-table-row-expanded:after {
content: '-';
}
.ant-table-row-collapsed:after {
content: '+';
}
.ant-table-row-spaced {
visibility: hidden;
}
.ant-table-row-spaced:after {
content: '.';
}
.ant-table-row[class*="ant-table-row-level-0"] .ant-table-selection-column > span {
display: inline-block;
}
tr.ant-table-expanded-row,
tr.ant-table-expanded-row:hover {
background: #fbfbfb;
}
.ant-table .ant-table-row-indent + .ant-table-row-expand-icon {
margin-right: 8px;
}
.ant-table-scroll {
overflow: auto;
}
.ant-table-scroll table {
width: auto;
min-width: 100%;
}
.ant-table-body-inner {
height: 100%;
}
.ant-table-fixed-header .ant-table-body {
position: relative;
background: #fff;
}
.ant-table-fixed-header .ant-table-body-inner {
overflow: scroll;
}
.ant-table-fixed-header .ant-table-scroll .ant-table-header {
overflow: scroll;
padding-bottom: 20px;
margin-bottom: -20px;
}
.ant-table-fixed-header.ant-table-empty .ant-table-scroll .ant-table-body {
padding-bottom: 20px;
margin-bottom: -20px;
}
.ant-table-fixed-left,
.ant-table-fixed-right {
position: absolute;
top: 0;
overflow: hidden;
z-index: 1;
-webkit-transition: box-shadow 0.3s ease;
transition: box-shadow 0.3s ease;
border-radius: 0;
}
.ant-table-fixed-left table,
.ant-table-fixed-right table {
width: auto;
background: #fff;
}
.ant-table-fixed-header .ant-table-fixed-left .ant-table-body-outer .ant-table-fixed,
.ant-table-fixed-header .ant-table-fixed-right .ant-table-body-outer .ant-table-fixed {
border-radius: 0;
}
.ant-table-fixed-left {
left: 0;
box-shadow: 1px 0 6px rgba(0, 0, 0, 0.2);
}
.ant-table-fixed-left .ant-table-header {
overflow-y: hidden;
}
.ant-table-fixed-left .ant-table-body-inner {
margin-right: -20px;
padding-right: 20px;
}
.ant-table-fixed-header .ant-table-fixed-left .ant-table-body-inner {
padding-right: 0;
}
.ant-table-fixed-left,
.ant-table-fixed-left table {
border-radius: 6px 0 0 0;
}
.ant-table-fixed-right {
right: 0;
box-shadow: -1px 0 6px rgba(0, 0, 0, 0.2);
}
.ant-table-fixed-right,
.ant-table-fixed-right table {
border-radius: 0 6px 0 0;
}
.ant-table-fixed-right .ant-table-expanded-row {
color: transparent;
pointer-events: none;
}
.ant-table.ant-table-scroll-position-left .ant-table-fixed-left {
box-shadow: none;
}
.ant-table.ant-table-scroll-position-right .ant-table-fixed-right {
box-shadow: none;
}