acud
Version:
acg react 组件库
311 lines (264 loc) • 7.87 kB
text/less
@import '../../style/themes/index';
@import '../../style/mixins/index';
@import '../../input/style/mixin.less';
@import '../../button/style/mixin.less';
@import './mix.less';
@pagination-prefix-cls: ~'@{acud-prefix}-pagination';
.@{pagination-prefix-cls} {
.pagination();
ul,
ol {
margin: 0;
padding: 0;
list-style: none;
}
&::after {
display: block;
clear: both;
height: 0;
overflow: hidden;
visibility: hidden;
content: ' ';
}
li {
font-size: @pagination-font-size;
}
&-total-text {
display: inline-block;
height: @pagination-height-md;
margin-right: @pagination-margin-left-right;
line-height: @pagination-height-md;
vertical-align: middle;
color: @G5;
}
&-item {
display: inline-block;
min-width: @pagination-height-md;
height: @pagination-height-md;
font-family: @font-family;
line-height: @pagination-height-md - 2;
text-align: center;
vertical-align: middle;
list-style: none;
outline: 0;
cursor: pointer;
user-select: none;
box-sizing: border-box;
font-weight: @font-weight-400;
border: @pagination-border-width solid rgba(0, 0, 0, 0);
border-radius: @pagination-radius;
.basic-config(@pagination-default-tp, @pagination-default-p);
a {
display: block;
transition: none;
padding: 0 6px;
.basic-config(@pagination-default-tp, @pagination-default-p);
&:hover {
text-decoration: none;
}
}
&:focus,
&:hover {
transition: all 0.3s;
}
&-active {
.basic-config(@pagination-active-tp, @pagination-active-p);
a {
.basic-config(@pagination-active-tp, @pagination-default-p);
}
}
}
&-jump-prev,
&-jump-next {
outline: 0;
.@{pagination-prefix-cls}-item-container {
position: relative;
.@{pagination-prefix-cls}-item-link-icon {
display: inline-block;
position: relative;
font-size: @pagination-font-size;
letter-spacing: -1px;
opacity: 0;
transition: all 0.2s;
top: 0px;
right: 0;
bottom: 0;
left: 0;
margin: auto;
}
.@{pagination-prefix-cls}-item-ellipsis {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
display: block;
margin: auto;
font-family: Arial, Helvetica, sans-serif;
letter-spacing: 2px;
text-align: center;
opacity: 1;
transition: all 0.2s;
.@{iconfont-css-prefix} {
line-height: 0;
}
}
}
&:hover {
.@{pagination-prefix-cls}-item-link-icon {
opacity: 1;
}
.@{pagination-prefix-cls}-item-ellipsis {
opacity: 0;
}
}
}
&-jump-prev,
&-jump-next {
margin-right: @pagination-margin-left-right;
}
&-prev,
&-next,
&-jump-prev,
&-jump-next {
display: inline-block;
min-width: @pagination-height-md;
height: @pagination-height-md;
font-family: @font-family;
font-weight: @font-weight-400;
line-height: @pagination-height-md - 2px;
text-align: center;
vertical-align: middle;
list-style: none;
cursor: pointer;
transition: all 0.3s;
}
&-prev,
&-next {
font-family: Arial, Helvetica, sans-serif;
outline: 0;
button {
cursor: pointer;
user-select: none;
}
&.@{pagination-prefix-cls}-disabled {
button {
cursor: not-allowed;
}
}
.@{pagination-prefix-cls}-item-link {
display: block;
width: 100%;
height: 100%;
line-height: 100%;
padding: 0;
font-size: @pagination-font-size-prev-next;
text-align: center;
outline: none;
transition: all 0.3s;
border: 1px solid transparent;
.basic-config(@pagination-arrow-tp, @pagination-arrow-p);
.@{iconfont-css-prefix} {
line-height: 0;
font-size: 16px;
}
}
}
&-slash {
margin: 0 12px;
}
&-options {
display: inline-block;
margin-left: @pagination-margin-left-right;
vertical-align: middle;
// IE11 css hack. `*::-ms-backdrop,` is a must have
@media all and (-ms-high-contrast: none) {
*::-ms-backdrop,
& {
vertical-align: top;
}
}
&-tip {
margin-right: @pagination-margin-left-right;
}
&-quick-jumper {
display: flex;
align-content: center;
height: @pagination-height-md;
line-height: @pagination-height-md;
vertical-align: top;
input {
.input();
.basic-config(@pagination-jump-tp, @pagination-jump-p);
border-radius: @pagination-radius 0 0 @pagination-radius;
display: inline-flex;
width: @pagination-jump-width;
padding: 0 @pagination-padding-jump;
margin: 0 0 0 @pagination-margin-left-right;
}
button {
.btn();
.basic-config(@pagination-goto-tp, @pagination-goto-p);
border-radius: 0 @pagination-radius @pagination-radius 0;
min-width: @pagination-goto-width;
border-left-width: 0;
position: relative;
font-weight: @font-weight-400;
&:active, &:hover, &:focus {
border-left-width: 1px;
margin-left: -1px;
z-index: 2;
}
}
}
}
// // ============================ Disabled ============================
&&-disabled {
cursor: not-allowed;
.@{pagination-prefix-cls}-item {
cursor: not-allowed;
a {
border: none;
cursor: not-allowed;
}
}
.@{pagination-prefix-cls}-item-link {
cursor: not-allowed;
}
.@{pagination-prefix-cls}-item-link-icon {
opacity: 0;
}
.@{pagination-prefix-cls}-item-ellipsis {
opacity: 1;
}
&.@{pagination-prefix-cls}-simple {
color: @G6;
}
}
&-simple {
&-pager {
display: inline-block;
line-height: @pagination-height-md;
input {
.input();
.basic-config(@pagination-jump-tp, @pagination-jump-p);
width: 40px;
display: inline-flex;
text-align: center;
}
}
}
}
@media only screen and (max-width: @screen-lg) {
.@{pagination-prefix-cls}-item {
&-after-jump-prev,
&-before-jump-next {
display: none;
}
}
}
@media only screen and (max-width: @screen-sm) {
.@{pagination-prefix-cls}-options {
display: none;
}
}