vxe-table
Version:
一个基于 vue 的 PC 端表格组件,支持增删改查、虚拟滚动、懒加载、快捷菜单、数据校验、树形结构、打印导出、表单渲染、数据分页、虚拟列表、模态窗口、自定义模板、渲染器、贼灵活的配置项、扩展接口等...
237 lines (214 loc) • 6.64 kB
CSS
@charset "UTF-8";
/*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*/
/*加载中*/
.vxe-loading {
display: none;
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 99;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
background-color: rgba(0, 0, 0, 0.2); }
.vxe-loading.is--visible {
display: block; }
.vxe-loading .vxe-loading--spinner {
width: 56px;
height: 56px;
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%); }
.vxe-loading .vxe-loading--spinner:before, .vxe-loading .vxe-loading--spinner:after {
content: "";
width: 100%;
height: 100%;
border-radius: 50%;
background-color: #409eff;
opacity: 0.6;
position: absolute;
top: 0;
left: 0;
-webkit-animation: bounce 2.0s infinite ease-in-out;
animation: bounce 2.0s infinite ease-in-out; }
.vxe-loading .vxe-loading--spinner:after {
-webkit-animation-delay: -1.0s;
animation-delay: -1.0s; }
@-webkit-keyframes bounce {
0%, 100% {
-webkit-transform: scale(0);
transform: scale(0); }
50% {
-webkit-transform: scale(1);
transform: scale(1); } }
@keyframes bounce {
0%, 100% {
-webkit-transform: scale(0);
transform: scale(0); }
50% {
-webkit-transform: scale(1);
transform: scale(1); } }
.size--mini .vxe-loading .vxe-loading--spinner {
width: 38px;
height: 38px; }
.size--small .vxe-loading .vxe-loading--spinner {
width: 44px;
height: 44px; }
.size--medium .vxe-loading .vxe-loading--spinner {
width: 50px;
height: 50px; }
.vxe-select {
position: relative;
display: inline-block;
width: 180px;
color: #606266;
text-align: left; }
.vxe-select:not(.is--disabled) > .vxe-input .vxe-input--inner {
cursor: pointer; }
.vxe-select > .vxe-input {
width: 100%; }
.vxe-select > .vxe-input .vxe-input--suffix-icon {
-webkit-transition: -webkit-transform 0.2s ease-in-out;
transition: -webkit-transform 0.2s ease-in-out;
transition: transform 0.2s ease-in-out;
transition: transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out; }
.vxe-select.is--active > .vxe-input .vxe-input--inner {
border: 1px solid #409eff; }
.vxe-select-slots {
display: none; }
.vxe-select--panel {
display: none;
position: absolute;
left: 0;
padding: 4px 0;
color: #606266;
text-align: left; }
.vxe-select--panel:not(.is--transfer) {
min-width: 100%; }
.vxe-select--panel.is--transfer {
position: fixed; }
.vxe-select--panel.animat--leave {
display: block;
opacity: 0;
-webkit-transform: scaleY(0.5);
transform: scaleY(0.5);
-webkit-transition: opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.3s cubic-bezier(0.23, 1, 0.32, 1);
transition: opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.3s cubic-bezier(0.23, 1, 0.32, 1);
transition: transform 0.3s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1);
transition: transform 0.3s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.3s cubic-bezier(0.23, 1, 0.32, 1);
-webkit-transform-origin: center top;
transform-origin: center top;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
-webkit-transform-style: preserve-3d;
transform-style: preserve-3d; }
.vxe-select--panel.animat--leave[data-placement="top"] {
-webkit-transform-origin: center bottom;
transform-origin: center bottom; }
.vxe-select--panel.animat--enter {
opacity: 1;
-webkit-transform: scaleY(1);
transform: scaleY(1); }
.vxe-select-option--wrapper {
overflow-x: hidden;
overflow-y: auto;
padding: 4px 0;
max-height: 200px;
border-radius: 4px;
border: 1px solid #DADCE0;
-webkit-box-shadow: 0 0 6px 2px rgba(0, 0, 0, 0.1);
box-shadow: 0 0 6px 2px rgba(0, 0, 0, 0.1);
background-color: #fff; }
.vxe-optgroup .vxe-optgroup--title {
padding: 0 6px;
color: #909399;
font-size: 12px; }
.vxe-optgroup--wrapper .vxe-select-option {
padding: 0 20px; }
.vxe-select-option {
padding: 0 10px;
max-width: 400px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap; }
.vxe-select-option.is--selected {
font-weight: 700;
color: #409eff; }
.vxe-select-option:not(.is--disabled) {
cursor: pointer; }
.vxe-select-option:not(.is--disabled).is--hover {
background-color: #f5f7fa; }
.vxe-select-option.is--disabled {
color: #BFBFBF;
cursor: no-drop; }
.vxe-select--empty-placeholder {
padding: 0 10px;
text-align: center; }
.vxe-select,
.vxe-select--panel {
font-size: 14px; }
.vxe-select.size--medium,
.vxe-select--panel.size--medium {
font-size: 14px; }
.vxe-select.size--small,
.vxe-select--panel.size--small {
font-size: 13px; }
.vxe-select.size--mini,
.vxe-select--panel.size--mini {
font-size: 12px; }
.vxe-select--panel .vxe-optgroup--title,
.vxe-select--panel .vxe-select-option {
height: 30px; }
.vxe-select--panel .vxe-optgroup--title,
.vxe-select--panel .vxe-select-option,
.vxe-select--panel .vxe-select--empty-placeholder {
line-height: 30px; }
.vxe-select--panel.size--medium .vxe-optgroup--title,
.vxe-select--panel.size--medium .vxe-select-option {
height: 28px; }
.vxe-select--panel.size--medium .vxe-optgroup--title,
.vxe-select--panel.size--medium .vxe-select-option,
.vxe-select--panel.size--medium .vxe-select--empty-placeholder {
line-height: 28px; }
.vxe-select--panel.size--small .vxe-optgroup--title,
.vxe-select--panel.size--small .vxe-select-option {
height: 26px; }
.vxe-select--panel.size--small .vxe-optgroup--title,
.vxe-select--panel.size--small .vxe-select-option,
.vxe-select--panel.size--small .vxe-select--empty-placeholder {
line-height: 26px; }
.vxe-select--panel.size--mini .vxe-optgroup--title,
.vxe-select--panel.size--mini .vxe-select-option {
height: 24px; }
.vxe-select--panel.size--mini .vxe-optgroup--title,
.vxe-select--panel.size--mini .vxe-select-option,
.vxe-select--panel.size--mini .vxe-select--empty-placeholder {
line-height: 24px; }