Files
vxe-table/styles/pager.scss
xuliangzhan c505a6c944 内部优化
2020-02-11 15:19:43 +08:00

341 lines
7.1 KiB
SCSS

/**Variable**/
@import './helpers/mixin.scss';
/*pager*/
.vxe-pager {
min-height: $vxe-table-row-height-default;
display: flex;
align-items: center;
font-size: $vxe-font-size;
color: $vxe-font-color;
font-family: $vxe-font-family;
text-align: right;
user-select: none;
&.align--left {
text-align: left;
}
&.align--center {
text-align: center;
}
&.is--loading {
position: relative;
&:before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1;
user-select: none;
background-color: $vxe-loading-background-color;
}
}
.vxe-pager--prev-btn,
.vxe-pager--next-btn,
.vxe-pager--num-btn,
.vxe-pager--jump-prev,
.vxe-pager--jump-next {
border: 1px solid transparent;
}
&.p--border,
&.p--perfect {
&:not(.p--background) {
.vxe-pager--prev-btn,
.vxe-pager--next-btn,
.vxe-pager--num-btn,
.vxe-pager--jump-prev,
.vxe-pager--jump-next {
border-color: $vxe-input-border-color;
}
}
}
&.p--background,
&.p--perfect {
.vxe-pager--prev-btn,
.vxe-pager--next-btn {
background-color: #f4f4f5;
}
.vxe-pager--jump-prev,
.vxe-pager--num-btn,
.vxe-pager--jump-next {
background-color: #f4f4f5;
&:hover {
color: $vxe-primary-color;
}
&.is--active {
color: #fff;
background-color: $vxe-primary-color;
}
}
}
&.p--perfect {
border: 1px solid $vxe-table-border-color;
border-top-width: 0;
background-color: $vxe-table-header-background-color;
.vxe-pager--prev-btn,
.vxe-pager--next-btn,
.vxe-pager--jump-prev,
.vxe-pager--num-btn,
.vxe-pager--jump-next {
background-color: #fff;
}
}
&.p--border {
.vxe-pager--num-btn {
&.is--active {
border-color: $vxe-primary-color;
}
}
}
&.size--medium {
font-size: $vxe-font-size-medium;
min-height: $vxe-table-row-height-medium;
.vxe-pager--count,
.size--content,
.vxe-pager--prev-btn,
.vxe-pager--next-btn,
.vxe-pager--jump-prev,
.vxe-pager--num-btn,
.vxe-pager--jump-next {
height: 28px;
line-height: 26px;
}
.vxe-pager--sizes {
.vxe-pager--sizes-arrow {
top: 8px;
}
}
.vxe-pager--jump .vxe-pager--goto {
height: 28px;
}
}
&.size--small {
font-size: $vxe-font-size-small;
min-height: $vxe-table-row-height-small;
.vxe-pager--count,
.size--content,
.vxe-pager--prev-btn,
.vxe-pager--next-btn,
.vxe-pager--jump-prev,
.vxe-pager--num-btn,
.vxe-pager--jump-next {
height: 26px;
line-height: 24px;
}
.vxe-pager--sizes {
.vxe-pager--sizes-arrow {
top: 7px;
}
}
.vxe-pager--jump .vxe-pager--goto {
height: 26px;
}
}
&.size--mini {
font-size: $vxe-font-size-mini;
min-height: $vxe-table-row-height-mini;
.vxe-pager--count,
.size--content,
.vxe-pager--prev-btn,
.vxe-pager--next-btn,
.vxe-pager--jump-prev,
.vxe-pager--num-btn,
.vxe-pager--jump-next {
height: 24px;
line-height: 22px;
}
.vxe-pager--sizes {
.vxe-pager--sizes-arrow {
top: 6px;
}
}
.vxe-pager--jump .vxe-pager--goto {
height: 24px;
}
}
.vxe-pager--wrapper {
flex-grow: 1;
}
.vxe-pager--total,
.vxe-pager--prev-btn,
.vxe-pager--next-btn,
.vxe-pager--sizes,
.vxe-pager--jump,
.vxe-pager--jump-prev,
.vxe-pager--jump-next,
.vxe-pager--count {
margin: 0 0.4em;
vertical-align: middle;
display: inline-block;
}
.vxe-pager--prev-btn,
.vxe-pager--jump-prev,
.vxe-pager--num-btn,
.vxe-pager--jump-next,
.vxe-pager--next-btn,
.vxe-pager--sizes {
cursor: pointer;
}
.vxe-pager--count,
.size--content,
.vxe-pager--prev-btn,
.vxe-pager--next-btn,
.vxe-pager--jump-prev,
.vxe-pager--num-btn,
.vxe-pager--jump-next {
height: 30px;
line-height: 28px;
display: inline-block;
}
.vxe-pager--btn-wrapper {
list-style-type: none;
padding: 0;
margin: 0;
display: inline-block;
text-align: center;
.vxe-pager--jump-prev,
.vxe-pager--jump-next {
&:hover {
.vxe-pager--jump-more {
display: none;
}
.vxe-pager--jump-icon {
display: inline-block;
}
}
}
.vxe-pager--jump-icon {
display: none;
}
}
.vxe-pager--jump-prev,
.vxe-pager--prev-btn,
.vxe-pager--num-btn,
.vxe-pager--next-btn,
.vxe-pager--jump-next {
border-radius: 4px;
margin: 0 0.25em;
&:hover,
&.is--active {
color: $vxe-primary-color;
}
&.is--disabled {
cursor: no-drop;
color: $vxe-disabled-color;
&:hover {
color: $vxe-disabled-color;
}
}
}
.vxe-pager--jump-prev,
.vxe-pager--prev-btn,
.vxe-pager--next-btn,
.vxe-pager--jump-next,
.vxe-pager--num-btn {
min-width: 2em;
text-align: center;
}
.vxe-pager--num-btn {
vertical-align: middle;
&.is--active {
font-weight: 700;
color: $vxe-primary-color;
}
}
.vxe-pager--btn-icon,
.vxe-pager--jump-icon {
margin-top: -2px;
}
.vxe-pager--sizes {
position: relative;
border-radius: 4px;
padding: 0;
border: 1px solid $vxe-input-border-color;
color: $vxe-font-color;
text-align: center;
display: inline-block;
@include animatTransition(border);
&.is--active {
border: 1px solid $vxe-primary-color;
.vxe-pager--sizes-arrow {
transform: rotate(180deg);
}
.vxe-pager-size--select-wrapper {
display: block;
}
}
.vxe-pager--sizes-arrow {
position: absolute;
right: 5px;
top: 9px;
font-size: 12px;
@include animatTransition(transform, .2s);
}
.size--content {
padding: 0 22px 0 10px;
display: block;
}
}
.vxe-pager--count {
.vxe-pager--separator {
margin-right: 6px;
}
}
.vxe-pager--jump .vxe-pager--goto {
border-radius: 4px;
border: 1px solid $vxe-input-border-color;
color: $vxe-font-color;
height: 30px;
transition: border .2s ease-in-out;
&:focus {
border: 1px solid $vxe-primary-color;
outline: 0;
}
}
.vxe-pager--jump {
.vxe-pager--goto-text {
margin-right: 4px;
}
.vxe-pager--classifier-text {
margin-left: 4px;
}
.vxe-pager--goto {
width: 42px;
text-align: center;
}
}
}
.vxe-pager-size--select-wrapper {
display: none;
position: absolute;
bottom: 0;
left: 0;
width: 200px;
text-align: center;
pointer-events: none;
.vxe-pager-size--select {
margin: 0;
padding: 4px 0;
min-width: 50px;
list-style-type: none;
display: inline-block;
border-radius: 4px;
background-color: #fff;
border: 1px solid $vxe-primary-color;
pointer-events: auto;
box-shadow: 0 0 6px 2px rgba(0, 0, 0, 0.1);
.size--option {
padding: 0 15px;
white-space: nowrap;
cursor: pointer;
&:hover {
color: $vxe-primary-color;
}
&.is--active {
font-weight: 700;
color: $vxe-primary-color;
}
}
}
}