vxe-table
Version:
一个基于 vue 的 PC 端表格组件,支持增删改查、虚拟滚动、懒加载、快捷菜单、数据校验、树形结构、打印导出、表单渲染、数据分页、虚拟列表、模态窗口、自定义模板、渲染器、贼灵活的配置项、扩展接口等...
532 lines (476 loc) • 14.2 kB
CSS
/*font*/
/*size*/
/*icon*/
/*color*/
/*input/radio/checkbox*/
/*popup*/
/*table*/
/*filter*/
/*menu*/
/*loading*/
/*validate*/
/*grid*/
/*toolbar*/
/*tooltip*/
/*modal*/
/*checkbox*/
/*radio*/
/*button*/
/*input*/
/*textarea*/
/*form*/
/*select*/
/*switch*/
[class*="vxe-icon--"] {
display: inline-block;
vertical-align: middle;
position: relative;
direction: ltr;
font-family: Verdana, Arial, Tahoma;
font-weight: normal;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none; }
[class*="vxe-icon--"].rotate45 {
-webkit-transform: rotate(45deg);
transform: rotate(45deg); }
[class*="vxe-icon--"].rotate90 {
-webkit-transform: rotate(90deg);
transform: rotate(90deg); }
[class*="vxe-icon--"].rotate180 {
-webkit-transform: rotate(180deg);
transform: rotate(180deg); }
.vxe-icon--square, .vxe-icon--zoomin, .vxe-icon--zoomout, .vxe-icon--menu, .vxe-icon--caret-top, .vxe-icon--caret-bottom, .vxe-icon--caret-left, .vxe-icon--caret-right, .vxe-icon--arrow-top, .vxe-icon--arrow-bottom, .vxe-icon--arrow-left, .vxe-icon--arrow-right, .vxe-icon--d-arrow-left, .vxe-icon--d-arrow-right, .vxe-icon--funnel, .vxe-icon--edit-outline, .vxe-icon--more, .vxe-icon--plus, .vxe-icon--check, .vxe-icon--close, .vxe-icon--minus, .vxe-icon--refresh, .vxe-icon--question, .vxe-icon--info, .vxe-icon--warning, .vxe-icon--success, .vxe-icon--circle-plus, .vxe-icon--remove, .vxe-icon--error, .vxe-icon--upload,
.vxe-icon--download, .vxe-icon--eye,
.vxe-icon--eye-slash, .vxe-icon--calendar, .vxe-icon--dot, .vxe-icon--print, .vxe-icon--search {
width: 1em;
height: 1em;
line-height: 1em; }
.vxe-icon--square:before, .vxe-icon--zoomin:before, .vxe-icon--zoomin:after, .vxe-icon--zoomout:before, .vxe-icon--zoomout:after, .vxe-icon--caret-top:before, .vxe-icon--caret-bottom:before, .vxe-icon--caret-left:before, .vxe-icon--caret-right:before, .vxe-icon--arrow-top:before, .vxe-icon--arrow-bottom:before, .vxe-icon--arrow-left:before, .vxe-icon--arrow-right:before, .vxe-icon--d-arrow-left:before, .vxe-icon--d-arrow-right:before, .vxe-icon--d-arrow-left:after, .vxe-icon--d-arrow-right:after, .vxe-icon--funnel:before, .vxe-icon--funnel:after, .vxe-icon--edit-outline:before, .vxe-icon--edit-outline:after, .vxe-icon--more:before, .vxe-icon--plus:before, .vxe-icon--check:before, .vxe-icon--close:before, .vxe-icon--minus:before, .vxe-icon--refresh:before, .vxe-icon--refresh:after, .vxe-icon--question:after, .vxe-icon--info:after, .vxe-icon--warning:after, .vxe-icon--success:after, .vxe-icon--circle-plus:after, .vxe-icon--remove:after, .vxe-icon--error:after, .vxe-icon--upload:before,
.vxe-icon--download:before, .vxe-icon--upload:after,
.vxe-icon--download:after, .vxe-icon--eye:before,
.vxe-icon--eye-slash:before, .vxe-icon--eye-slash:after, .vxe-icon--calendar:before, .vxe-icon--calendar:after, .vxe-icon--dot:before, .vxe-icon--print:before, .vxe-icon--print:after, .vxe-icon--search:before, .vxe-icon--search:after {
content: "";
position: absolute; }
.vxe-icon--square:before {
left: 0.05em;
top: 0.05em;
width: 0.9em;
height: 0.9em;
border-width: 0.1em;
border-style: solid;
border-color: inherit; }
.vxe-icon--zoomin {
border-width: 0.1em;
border-style: solid;
border-color: inherit;
background-color: #fff; }
.vxe-icon--zoomin:before, .vxe-icon--zoomin:after {
background-color: inherit; }
.vxe-icon--zoomin:before {
left: -0.1em;
top: 0.2em;
width: 1.1em;
height: 0.4em; }
.vxe-icon--zoomin:after {
top: -0.1em;
left: 0.2em;
width: 0.4em;
height: 1.1em; }
.vxe-icon--zoomout {
position: relative; }
.vxe-icon--zoomout:before {
right: 0;
top: 0;
width: 0.7em;
height: 0.7em;
border-width: 0.1em;
border-style: solid;
border-color: inherit; }
.vxe-icon--zoomout:after {
left: 0.1em;
bottom: 0.1em;
width: 0.7em;
height: 0.7em;
border-width: 0.1em;
border-style: solid;
border-color: inherit;
background-color: #fff; }
.vxe-icon--menu:before {
content: "";
display: inline-block;
width: 0.22em;
height: 0.22em;
-webkit-box-shadow: 0 -0.36em 0, -0.36em -0.36em 0, 0.36em -0.36em 0, 0 0 0 1em inset, -0.36em 0 0, 0.36em 0 0, 0 0.36em 0, -0.36em 0.36em 0, 0.36em 0.36em 0;
box-shadow: 0 -0.36em 0, -0.36em -0.36em 0, 0.36em -0.36em 0, 0 0 0 1em inset, -0.36em 0 0, 0.36em 0 0, 0 0.36em 0, -0.36em 0.36em 0, 0.36em 0.36em 0;
margin: 0.26em; }
.vxe-icon--caret-top:before, .vxe-icon--caret-bottom:before, .vxe-icon--caret-left:before, .vxe-icon--caret-right:before {
border-width: 0.4em;
border-style: solid;
border-color: transparent; }
.vxe-icon--caret-top:before {
left: 0.1em;
bottom: 0.3em;
border-bottom-color: inherit; }
.vxe-icon--caret-bottom:before {
left: 0.1em;
top: 0.3em;
border-top-color: inherit; }
.vxe-icon--caret-left:before {
right: 0.3em;
bottom: 0.1em;
border-right-color: inherit; }
.vxe-icon--caret-right:before {
left: 0.3em;
bottom: 0.1em;
border-left-color: inherit; }
.vxe-icon--arrow-top:before, .vxe-icon--arrow-bottom:before, .vxe-icon--arrow-left:before, .vxe-icon--arrow-right:before {
top: 0.4em;
left: 0.14em;
width: 0.7em;
height: 0.7em;
border-width: 0.15em;
border-style: solid;
border-top-color: inherit;
border-right-color: inherit;
border-bottom-color: transparent;
border-left-color: transparent;
border-radius: 0.15em;
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg); }
.vxe-icon--arrow-bottom:before {
top: 0;
left: 0.14em;
-webkit-transform: rotate(135deg);
transform: rotate(135deg); }
.vxe-icon--arrow-left:before {
top: 0.18em;
left: 0.35em;
-webkit-transform: rotate(-135deg);
transform: rotate(-135deg); }
.vxe-icon--arrow-right:before {
top: 0.18em;
left: 0;
-webkit-transform: rotate(45deg);
transform: rotate(45deg); }
.vxe-icon--d-arrow-left:before, .vxe-icon--d-arrow-right:before {
left: 0.15em; }
.vxe-icon--d-arrow-left:after, .vxe-icon--d-arrow-right:after {
left: 0.58em; }
.vxe-icon--d-arrow-left:before, .vxe-icon--d-arrow-right:before, .vxe-icon--d-arrow-left:after, .vxe-icon--d-arrow-right:after {
top: 0.18em;
width: 0.7em;
height: 0.7em;
border-width: 0.15em;
border-style: solid;
border-top-color: inherit;
border-right-color: transparent;
border-bottom-color: transparent;
border-left-color: inherit;
border-radius: 0.15em;
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg); }
.vxe-icon--d-arrow-right:before, .vxe-icon--d-arrow-right:after {
-webkit-transform: rotate(135deg);
transform: rotate(135deg); }
.vxe-icon--d-arrow-right:before {
left: -0.25em; }
.vxe-icon--d-arrow-right:after {
left: 0.18em; }
.vxe-icon--funnel:before {
top: 0.05em;
left: 0;
border-width: 0.5em;
border-style: solid;
border-top-color: inherit;
border-right-color: transparent;
border-bottom-color: transparent;
border-left-color: transparent; }
.vxe-icon--funnel:after {
left: 0.41em;
top: 0.4em;
width: 0;
height: 0.5em;
border-width: 0 0.2em 0 0;
border-style: solid;
border-right-color: inherit; }
.vxe-icon--edit-outline:before {
height: 0.84em;
width: 0.86em;
top: 0.1em;
left: 0.02em;
border-radius: 0.2em;
border-width: 0.1em;
border-style: solid;
border-color: inherit; }
.vxe-icon--edit-outline:after {
left: 0.6em;
bottom: 0.2em;
width: 0;
height: 0.8em;
border-radius: 0 0 80% 80%;
border-width: 0 0 0 0.22em;
border-style: solid;
border-color: inherit;
-webkit-transform: rotate(45deg);
transform: rotate(45deg); }
.vxe-icon--more:before {
content: "...";
top: 0;
left: 0.1em;
line-height: 0.5em;
font-weight: 700; }
.vxe-icon--plus:before {
content: "+";
left: -0.05em;
bottom: 0;
line-height: 0.9em;
font-size: 1.4em; }
.vxe-icon--check:before {
left: 0.25em;
bottom: 0.2em;
width: 0.5em;
height: 0.9em;
border-width: 0.15em;
border-style: solid;
border-top-color: transparent;
border-right-color: inherit;
border-bottom-color: inherit;
border-radius: 0.15em;
border-left-color: transparent;
-webkit-transform: rotate(45deg);
transform: rotate(45deg); }
.vxe-icon--close:before {
content: "\D7";
left: -0.05em;
bottom: 0;
line-height: 0.8em;
font-size: 1.4em; }
.vxe-icon--minus:before {
content: "\2500";
left: 0;
bottom: 0;
width: 100%;
text-align: center;
line-height: 0.9em;
font-size: 1.2em; }
.vxe-icon--refresh {
border-width: 0.1em;
border-style: solid;
border-radius: 50%;
border-right-color: transparent ;
border-left-color: transparent ; }
.vxe-icon--refresh:before {
left: 50%;
top: 0;
-webkit-transform: translateX(50%) rotate(-45deg);
transform: translateX(50%) rotate(-45deg); }
.vxe-icon--refresh:after {
right: 50%;
bottom: 0;
-webkit-transform: translateX(-50%) rotate(135deg);
transform: translateX(-50%) rotate(135deg); }
.vxe-icon--refresh:before, .vxe-icon--refresh:after {
width: 0;
height: 0;
border-width: 0.25em;
border-style: solid;
border-right-color: transparent;
border-bottom-color: transparent;
border-left-color: transparent; }
.vxe-icon--refresh.roll {
-webkit-animation: rollCircle 1s infinite linear;
animation: rollCircle 1s infinite linear; }
@-webkit-keyframes rollCircle {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg); }
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg); } }
@keyframes rollCircle {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg); }
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg); } }
.vxe-icon--question:before, .vxe-icon--info:before, .vxe-icon--warning:before, .vxe-icon--success:before, .vxe-icon--circle-plus:before, .vxe-icon--remove:before, .vxe-icon--error:before {
content: "";
border-radius: 50%;
border-width: 0.5em;
border-style: solid;
border-color: inherit;
position: absolute;
top: 0;
left: 0;
-webkit-transform: scale(0.95);
transform: scale(0.95); }
.vxe-icon--question:after, .vxe-icon--info:after, .vxe-icon--warning:after {
left: 0;
bottom: 0;
width: 100%;
text-align: center;
color: #fff;
-webkit-transform: rotate(-10deg) scale(0.75);
transform: rotate(-10deg) scale(0.75); }
.vxe-icon--question:after {
content: "\3F"; }
.vxe-icon--info:after {
content: "\A1"; }
.vxe-icon--warning:after {
content: "\21"; }
.vxe-icon--success:after {
content: "\2713";
left: 0.25em;
bottom: 0;
color: #fff;
font-size: 0.65em; }
.vxe-icon--circle-plus:after {
content: "+";
left: 0;
bottom: 0;
width: 100%;
text-align: center;
color: #fff;
line-height: 1.4em;
font-size: 0.8em; }
.vxe-icon--remove:after {
content: "\2500";
left: 0;
bottom: 0;
width: 100%;
text-align: center;
line-height: 1.5em;
color: #fff;
font-size: 0.7em; }
.vxe-icon--error:after {
content: "\D7";
left: 0;
bottom: 0;
width: 100%;
line-height: 1.4em;
text-align: center;
color: #fff;
font-size: 0.8em; }
.vxe-icon--upload,
.vxe-icon--download {
overflow: hidden; }
.vxe-icon--upload:before,
.vxe-icon--download:before {
left: 0;
width: 1em;
border-width: 0;
border-style: solid;
border-color: inherit; }
.vxe-icon--upload:after,
.vxe-icon--download:after {
width: 100%;
text-align: center;
font-size: 2em; }
.vxe-icon--upload:before {
top: 0.1em;
border-top-width: 0.1em; }
.vxe-icon--upload:after {
content: "\2191";
left: 0;
top: 0.15em; }
.vxe-icon--download:before {
bottom: 0.05em;
border-bottom-width: 0.1em; }
.vxe-icon--download:after {
content: "\2191";
left: 0;
bottom: 0.15em;
-webkit-transform: rotate(180deg);
transform: rotate(180deg); }
.vxe-icon--eye:before,
.vxe-icon--eye-slash:before {
content: "\25CF";
top: 0.16em;
left: 0;
width: 1em;
height: 0.68em;
line-height: 0.25em;
border-radius: 50%;
border-width: 0.1em;
border-style: solid;
border-color: inherit;
text-align: center; }
.vxe-icon--eye-slash:after {
top: -0.1em;
left: 0.45em;
width: 0;
height: 1.2em;
border-width: 0;
border-style: solid;
border-color: inherit;
border-left-width: 0.1em;
-webkit-transform: rotate(45deg);
transform: rotate(45deg); }
.vxe-icon--calendar:before {
top: 0.15em;
left: 0;
width: 1em;
height: 0.8em;
border-width: 0.2em 0.1em 0.1em 0.1em;
border-radius: 0.1em 0.1em 0 0;
border-style: solid;
border-color: inherit; }
.vxe-icon--calendar:after {
left: 0.2em;
top: 0;
width: 0.6em;
height: 0.3em;
border-width: 0 0.1em;
border-style: solid;
border-color: inherit; }
.vxe-icon--dot:before {
top: 0.25em;
left: 0.25em;
border-radius: 50%;
border-width: 0.25em;
border-style: solid;
border-color: inherit; }
.vxe-icon--print {
-webkit-box-shadow: inset 0 0 0 0.1em;
box-shadow: inset 0 0 0 0.1em;
border-width: 0.2em 0;
border-style: solid;
border-color: transparent ;
border-radius: 0.3em 0.3em 0 0; }
.vxe-icon--print:before {
width: 0.6em;
height: 0.3em;
top: -0.2em;
left: 0.2em;
-webkit-box-shadow: inset 0 0 0 0.1em;
box-shadow: inset 0 0 0 0.1em; }
.vxe-icon--print:after {
width: 0.6em;
height: 0.6em;
left: 0.2em;
bottom: -0.2em;
-webkit-box-shadow: inset 0 0 0 0.1em;
box-shadow: inset 0 0 0 0.1em;
background-color: #fff; }
.vxe-icon--search:before {
top: 0;
left: 0;
width: 0.8em;
height: 0.8em;
border-width: 0.15em;
border-style: solid;
border-color: inherit;
border-radius: 50%; }
.vxe-icon--search:after {
top: 0.75em;
left: 0.6em;
width: 0.35em;
height: 0;
border-width: 0.15em 0 0 0;
border-style: solid;
border-color: inherit;
-webkit-transform: rotate(45deg);
transform: rotate(45deg); }