vxe-table-select-area
Version:
一个基于 vxe-table 的可区域选中复制、粘贴的组件
344 lines (343 loc) • 11.5 kB
CSS
/*font*/
/*size*/
/*icon*/
/*color*/
/*input/radio/checkbox*/
/*popup*/
/*table*/
/*filter*/
/*menu*/
/*loading*/
/*validate*/
/*grid*/
/*toolbar*/
/*tooltip*/
/*pager*/
/*modal*/
/*checkbox*/
/*radio*/
/*button*/
/*input*/
/*textarea*/
/*form*/
/*select*/
/*switch*/
/*pulldown*/
/*pager*/
.vxe-pager {
position: relative;
display: flex;
align-items: center;
color: #606266;
font-family: -apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, Hiragino Sans GB, Microsoft YaHei, Helvetica Neue, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;
text-align: right;
background-color: #fff;
}
.vxe-pager.is--hidden {
display: none;
}
.vxe-pager.align--left {
text-align: left;
}
.vxe-pager.align--center {
text-align: center;
}
.vxe-pager.is--loading:after {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 999;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
background-color: rgba(255, 255, 255, 0.5);
}
.vxe-pager .vxe-pager--prev-btn,
.vxe-pager .vxe-pager--next-btn,
.vxe-pager .vxe-pager--num-btn,
.vxe-pager .vxe-pager--jump-prev,
.vxe-pager .vxe-pager--jump-next {
color: inherit;
outline: 0;
padding: 0;
border: 1px solid transparent;
font-size: inherit;
}
.vxe-pager .vxe-pager--prev-btn:not(.is--disabled):focus,
.vxe-pager .vxe-pager--next-btn:not(.is--disabled):focus,
.vxe-pager .vxe-pager--num-btn:not(.is--disabled):focus,
.vxe-pager .vxe-pager--jump-prev:not(.is--disabled):focus,
.vxe-pager .vxe-pager--jump-next:not(.is--disabled):focus {
box-shadow: 0 0 0.25em 0 #409eff;
}
.vxe-pager .vxe-pager--prev-btn:not(.is--disabled):hover,
.vxe-pager .vxe-pager--next-btn:not(.is--disabled):hover,
.vxe-pager .vxe-pager--num-btn:not(.is--disabled):hover,
.vxe-pager .vxe-pager--jump-prev:not(.is--disabled):hover,
.vxe-pager .vxe-pager--jump-next:not(.is--disabled):hover {
color: #5faeff;
}
.vxe-pager .vxe-pager--prev-btn:not(.is--disabled):active,
.vxe-pager .vxe-pager--next-btn:not(.is--disabled):active,
.vxe-pager .vxe-pager--num-btn:not(.is--disabled):active,
.vxe-pager .vxe-pager--jump-prev:not(.is--disabled):active,
.vxe-pager .vxe-pager--jump-next:not(.is--disabled):active {
background-color: #f7f7f7;
}
.vxe-pager.is--border:not(.is--background) .vxe-pager--prev-btn,
.vxe-pager.is--border:not(.is--background) .vxe-pager--next-btn,
.vxe-pager.is--border:not(.is--background) .vxe-pager--num-btn,
.vxe-pager.is--border:not(.is--background) .vxe-pager--jump-prev,
.vxe-pager.is--border:not(.is--background) .vxe-pager--jump-next, .vxe-pager.is--perfect:not(.is--background) .vxe-pager--prev-btn,
.vxe-pager.is--perfect:not(.is--background) .vxe-pager--next-btn,
.vxe-pager.is--perfect:not(.is--background) .vxe-pager--num-btn,
.vxe-pager.is--perfect:not(.is--background) .vxe-pager--jump-prev,
.vxe-pager.is--perfect:not(.is--background) .vxe-pager--jump-next {
border-color: #dcdfe6;
}
.vxe-pager.is--background .vxe-pager--prev-btn,
.vxe-pager.is--background .vxe-pager--next-btn,
.vxe-pager.is--background .vxe-pager--jump-prev,
.vxe-pager.is--background .vxe-pager--num-btn,
.vxe-pager.is--background .vxe-pager--jump-next, .vxe-pager.is--perfect .vxe-pager--prev-btn,
.vxe-pager.is--perfect .vxe-pager--next-btn,
.vxe-pager.is--perfect .vxe-pager--jump-prev,
.vxe-pager.is--perfect .vxe-pager--num-btn,
.vxe-pager.is--perfect .vxe-pager--jump-next {
background-color: #f4f4f5;
}
.vxe-pager.is--background .vxe-pager--jump-prev:not(.is--disabled).is--active,
.vxe-pager.is--background .vxe-pager--num-btn:not(.is--disabled).is--active,
.vxe-pager.is--background .vxe-pager--jump-next:not(.is--disabled).is--active, .vxe-pager.is--perfect .vxe-pager--jump-prev:not(.is--disabled).is--active,
.vxe-pager.is--perfect .vxe-pager--num-btn:not(.is--disabled).is--active,
.vxe-pager.is--perfect .vxe-pager--jump-next:not(.is--disabled).is--active {
color: #fff;
background-color: #409eff;
}
.vxe-pager.is--background .vxe-pager--jump-prev:not(.is--disabled).is--active:hover,
.vxe-pager.is--background .vxe-pager--num-btn:not(.is--disabled).is--active:hover,
.vxe-pager.is--background .vxe-pager--jump-next:not(.is--disabled).is--active:hover, .vxe-pager.is--perfect .vxe-pager--jump-prev:not(.is--disabled).is--active:hover,
.vxe-pager.is--perfect .vxe-pager--num-btn:not(.is--disabled).is--active:hover,
.vxe-pager.is--perfect .vxe-pager--jump-next:not(.is--disabled).is--active:hover {
background-color: #5faeff;
}
.vxe-pager.is--background .vxe-pager--jump-prev:not(.is--disabled).is--active:focus,
.vxe-pager.is--background .vxe-pager--num-btn:not(.is--disabled).is--active:focus,
.vxe-pager.is--background .vxe-pager--jump-next:not(.is--disabled).is--active:focus, .vxe-pager.is--perfect .vxe-pager--jump-prev:not(.is--disabled).is--active:focus,
.vxe-pager.is--perfect .vxe-pager--num-btn:not(.is--disabled).is--active:focus,
.vxe-pager.is--perfect .vxe-pager--jump-next:not(.is--disabled).is--active:focus {
border-color: #409eff;
}
.vxe-pager.is--background .vxe-pager--jump-prev:not(.is--disabled).is--active:active,
.vxe-pager.is--background .vxe-pager--num-btn:not(.is--disabled).is--active:active,
.vxe-pager.is--background .vxe-pager--jump-next:not(.is--disabled).is--active:active, .vxe-pager.is--perfect .vxe-pager--jump-prev:not(.is--disabled).is--active:active,
.vxe-pager.is--perfect .vxe-pager--num-btn:not(.is--disabled).is--active:active,
.vxe-pager.is--perfect .vxe-pager--jump-next:not(.is--disabled).is--active:active {
border-color: #3196ff;
background-color: #3196ff;
}
.vxe-pager.is--perfect {
border: 1px solid #e8eaec;
border-top-width: 0;
background-color: #fff;
}
.vxe-pager.is--border .vxe-pager--num-btn.is--active {
border-color: #409eff;
}
.vxe-pager .vxe-pager--wrapper {
flex-grow: 1;
}
.vxe-pager .vxe-pager--jump-icon,
.vxe-pager .vxe-pager--btn-icon {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
.vxe-pager .vxe-pager--left-wrapper,
.vxe-pager .vxe-pager--right-wrapper,
.vxe-pager .vxe-pager--total,
.vxe-pager .vxe-pager--prev-btn,
.vxe-pager .vxe-pager--next-btn,
.vxe-pager .vxe-pager--jump,
.vxe-pager .vxe-pager--jump-prev,
.vxe-pager .vxe-pager--jump-next,
.vxe-pager .vxe-pager--count,
.vxe-pager .vxe-pager--sizes {
margin: 0 0.4em;
vertical-align: middle;
display: inline-block;
}
.vxe-pager .vxe-pager--prev-btn,
.vxe-pager .vxe-pager--jump-prev,
.vxe-pager .vxe-pager--num-btn,
.vxe-pager .vxe-pager--jump-next,
.vxe-pager .vxe-pager--next-btn {
position: relative;
cursor: pointer;
}
.vxe-pager .vxe-pager--left-wrapper,
.vxe-pager .vxe-pager--right-wrapper,
.vxe-pager .vxe-pager--count,
.vxe-pager .vxe-pager--prev-btn,
.vxe-pager .vxe-pager--next-btn,
.vxe-pager .vxe-pager--jump-prev,
.vxe-pager .vxe-pager--num-btn,
.vxe-pager .vxe-pager--jump-next {
height: 2.15em;
line-height: 2em;
display: inline-block;
}
.vxe-pager .vxe-pager--jump .vxe-pager--goto,
.vxe-pager .vxe-pager--sizes > .vxe-input {
height: 2.15em;
line-height: 2.15em;
}
.vxe-pager .vxe-pager--sizes > .vxe-select--panel .vxe-select-option {
text-align: center;
}
.vxe-pager .vxe-pager--jump-prev,
.vxe-pager .vxe-pager--prev-btn,
.vxe-pager .vxe-pager--next-btn,
.vxe-pager .vxe-pager--jump-next,
.vxe-pager .vxe-pager--num-btn,
.vxe-pager .vxe-pager--count {
min-width: 2.15em;
}
.vxe-pager .vxe-pager--btn-wrapper {
padding: 0;
margin: 0;
display: inline-block;
text-align: center;
}
.vxe-pager .vxe-pager--btn-wrapper .vxe-pager--jump-prev:hover .vxe-pager--jump-more-icon,
.vxe-pager .vxe-pager--btn-wrapper .vxe-pager--jump-next:hover .vxe-pager--jump-more-icon {
display: none;
}
.vxe-pager .vxe-pager--btn-wrapper .vxe-pager--jump-prev:hover .vxe-pager--jump-icon,
.vxe-pager .vxe-pager--btn-wrapper .vxe-pager--jump-next:hover .vxe-pager--jump-icon {
display: inline-block;
}
.vxe-pager .vxe-pager--btn-wrapper .vxe-pager--jump-icon {
display: none;
}
.vxe-pager .vxe-pager--jump-prev,
.vxe-pager .vxe-pager--prev-btn,
.vxe-pager .vxe-pager--next-btn,
.vxe-pager .vxe-pager--jump-next,
.vxe-pager .vxe-pager--num-btn {
text-align: center;
border-radius: 4px;
margin: 0 0.25em;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
background-color: #fff;
}
.vxe-pager .vxe-pager--jump-prev:not(.is--disabled):hover,
.vxe-pager .vxe-pager--prev-btn:not(.is--disabled):hover,
.vxe-pager .vxe-pager--next-btn:not(.is--disabled):hover,
.vxe-pager .vxe-pager--jump-next:not(.is--disabled):hover,
.vxe-pager .vxe-pager--num-btn:not(.is--disabled):hover {
color: #5faeff;
}
.vxe-pager .vxe-pager--jump-prev:not(.is--disabled).is--active, .vxe-pager .vxe-pager--jump-prev:not(.is--disabled):focus,
.vxe-pager .vxe-pager--prev-btn:not(.is--disabled).is--active,
.vxe-pager .vxe-pager--prev-btn:not(.is--disabled):focus,
.vxe-pager .vxe-pager--next-btn:not(.is--disabled).is--active,
.vxe-pager .vxe-pager--next-btn:not(.is--disabled):focus,
.vxe-pager .vxe-pager--jump-next:not(.is--disabled).is--active,
.vxe-pager .vxe-pager--jump-next:not(.is--disabled):focus,
.vxe-pager .vxe-pager--num-btn:not(.is--disabled).is--active,
.vxe-pager .vxe-pager--num-btn:not(.is--disabled):focus {
color: #409eff;
}
.vxe-pager .vxe-pager--jump-prev:not(.is--disabled):active,
.vxe-pager .vxe-pager--prev-btn:not(.is--disabled):active,
.vxe-pager .vxe-pager--next-btn:not(.is--disabled):active,
.vxe-pager .vxe-pager--jump-next:not(.is--disabled):active,
.vxe-pager .vxe-pager--num-btn:not(.is--disabled):active {
color: #3196ff;
}
.vxe-pager .vxe-pager--jump-prev.is--disabled,
.vxe-pager .vxe-pager--prev-btn.is--disabled,
.vxe-pager .vxe-pager--next-btn.is--disabled,
.vxe-pager .vxe-pager--jump-next.is--disabled,
.vxe-pager .vxe-pager--num-btn.is--disabled {
cursor: no-drop;
color: #BFBFBF;
}
.vxe-pager .vxe-pager--jump-prev.is--disabled:hover,
.vxe-pager .vxe-pager--prev-btn.is--disabled:hover,
.vxe-pager .vxe-pager--next-btn.is--disabled:hover,
.vxe-pager .vxe-pager--jump-next.is--disabled:hover,
.vxe-pager .vxe-pager--num-btn.is--disabled:hover {
color: #BFBFBF;
}
.vxe-pager .vxe-pager--num-btn {
vertical-align: middle;
}
.vxe-pager .vxe-pager--num-btn.is--active {
font-weight: 700;
}
.vxe-pager .vxe-pager--sizes {
width: 7em;
text-align: center;
cursor: pointer;
}
.vxe-pager .vxe-pager--sizes .vxe-input--inner {
text-align: center;
}
.vxe-pager .vxe-pager--count {
text-align: center;
}
.vxe-pager .vxe-pager--count > span {
vertical-align: middle;
}
.vxe-pager .vxe-pager--count .vxe-pager--separator {
margin-right: 0.2em;
}
.vxe-pager .vxe-pager--count .vxe-pager--separator:before {
content: "/";
}
.vxe-pager .vxe-pager--jump .vxe-pager--goto {
border-radius: 4px;
border: 1px solid #dcdfe6;
color: #606266;
transition: border 0.2s ease-in-out;
padding: 0 0.4em;
background-color: #fff;
}
.vxe-pager .vxe-pager--jump .vxe-pager--goto:focus {
border: 1px solid #409eff;
outline: 0;
}
.vxe-pager .vxe-pager--jump .vxe-pager--goto-text {
margin-right: 0.25em;
}
.vxe-pager .vxe-pager--jump .vxe-pager--classifier-text {
margin-left: 0.25em;
}
.vxe-pager .vxe-pager--jump .vxe-pager--goto {
width: 3.2em;
text-align: center;
}
.vxe-pager {
font-size: 14px;
height: 48px;
}
.vxe-pager.size--medium {
font-size: 14px;
height: 44px;
}
.vxe-pager.size--small {
font-size: 13px;
height: 40px;
}
.vxe-pager.size--mini {
font-size: 12px;
height: 36px;
}