kui-vue
Version:
A high quality UI Toolkit built on Vue.js 2.0
402 lines (336 loc) • 7.09 kB
text/less
@import '../../styles/var.less';
.k-btn {
color: var(--kui-color-font);
font-size: 14px;
height: 32px;
line-height: 1;
padding: 0 15px;
box-sizing: border-box;
flex-shrink: 0;
border-radius: var(--kui-border-radius);
display: inline-flex;
align-items: center;
justify-content: center;
vertical-align: middle; // transition: opacity .2s ease-in-out;
user-select: none;
outline: none;
border: 1px solid var(--kui-color-border);
transition: all .2s;
z-index: 0;
white-space: nowrap;
background-color: var(--kui-color-back);
cursor: pointer;
// &:focus,
&:hover {
border-color: var(--kui-color-main);
color: var(--kui-color-main);
z-index: 1;
}
&:active {
color: var(--kui-color-main-actived);
border-color: var(--kui-color-main-actived);
}
&>.k-icon+span,
span+.k-icon {
margin-left: 4px;
}
.k-icon {
font-size: 14px;
vertical-align: middle;
}
&.k-btn-light {
background: var(--kui-color-gray-80);
border: none;
// &:focus,
&:hover {
background: var(--kui-color-gray-70);
}
&:active {
background: var(--kui-color-gray-60);
}
}
// &.k-btn-solid {
// background:none;
// color: var(--kui-color-font);
// border-color: var(--kui-color-border);
// &:focus, &:hover {
// border-color: var(--kui-color-main);
// color: var(--kui-color-main);
// }
// }
&.k-btn-normal {
background: 0 0;
border: none;
// &:focus,
&:hover {
background-color: var(--kui-color-gray-80);
}
&:active {
background: var(--kui-color-gray-60);
}
}
}
.k-btn-block {
width: 100%;
}
.k-btn-dashed {
border-style: dashed;
}
.k-btn-loading {
opacity: .8;
&:hover {
opacity: .8;
}
}
.k-btn-sm {
height: 24px;
// line-height: 22px;
font-size: 12px;
padding: 0 8px;
[class^="k-ion"] {
font-size: 10px;
}
}
.k-btn-lg {
height: 40px;
// line-height: 38px;
font-size: 16px;
padding: 0 15px;
.k-icon {
font-size: 16px;
}
}
.k-btn-solid {
background-color: transparent;
}
.k-btn-circle {
border-radius: 30px;
}
.k-btn-primary {
color: #fff;
background: var(--kui-color-main);
border-color: var(--kui-color-main);
// &:focus,
&:hover {
zoom: 0%;
color: #fff;
background: var(--kui-color-main-hover);
border-color: var(--kui-color-main-hover);
}
&:active {
border-color: var(--kui-color-main-actived);
background: var(--kui-color-main-actived);
}
&.k-btn-light {
background-color: var(--kui-color-gray-80);
color: var(--kui-color-main);
border: none;
}
&.k-btn-solid {
background: none;
color: var(--kui-color-main);
border-color: var(--kui-color-main);
// &:focus,
&:hover {
color: var(--kui-color-main-hover);
border-color: var(--kui-color-main-hover);
}
&:active {
color: var(--kui-color-main-actived);
border-color: var(--kui-color-main-actived);
}
}
&.k-btn-normal {
color: var(--kui-color-main);
}
}
.k-btn-danger {
color: #fff;
border-color: var(--kui-color-danger);
background: var(--kui-color-danger);
// &:focus,
&:hover {
zoom: 0%;
color: #fff;
border-color: var(--kui-color-danger-hover);
background: var(--kui-color-danger-hover);
}
&:active {
color: #fff;
border-color: var(--kui-color-danger-actived);
background: var(--kui-color-danger-actived);
}
.badge-count {
border-color: var(--kui-color-danger);
color: var(--kui-color-danger);
}
&.k-btn-light {
background-color: var(--kui-color-gray-80);
color: var(--kui-color-danger);
border: none;
}
&.k-btn-solid {
background: none;
color: var(--kui-color-danger);
border-color: var(--kui-color-danger);
&:focus,
&:hover {
color: var(--kui-color-danger-hover);
border-color: var(--kui-color-danger-hover);
}
&:active {
color: var(--kui-color-danger-actived);
border-color: var(--kui-color-danger-actived);
}
}
&.k-btn-normal {
color: var(--kui-color-danger);
}
}
.k-btn-warning {
color: #fff;
border-color: var(--kui-color-warning);
background: var(--kui-color-warning);
// &:focus,
&:hover {
zoom: 0%;
color: #fff;
border-color: var(--kui-color-warning-hover);
background: var(--kui-color-warning-hover);
}
&:active {
border-color: var(--kui-color-warning-actived);
background: var(--kui-color-warning-actived);
color: #fff;
}
&.k-btn-light {
background-color: var(--kui-color-gray-80);
color: var(--kui-color-warning);
border: none;
}
&.k-btn-solid {
background: none;
color: var(--kui-color-warning);
border-color: var(--kui-color-warning);
&:focus,
&:hover {
color: var(--kui-color-warning-hover);
border-color: var(--kui-color-warning-hover);
}
&:active {
color: var(--kui-color-warning-actived);
border-color: var(--kui-color-warning-actived);
}
}
&.k-btn-normal {
color: var(--kui-color-warning);
}
}
.k-btn-group {
position: relative;
flex-shrink: 0;
display: inline-flex;
// vertical-align: middle;
align-items: center;
white-space: nowrap;
.k-btn {
margin-left: -1px;
position: relative;
margin-right: 0;
border-radius: 0;
&:first-child {
border-radius: var(--kui-border-radius) 0 0 var(--kui-border-radius);
}
&:last-child {
border-radius: 0 var(--kui-border-radius) var(--kui-border-radius) 0;
}
}
}
.k-btn-icon-only {
padding: 0;
height: 32px;
width: 32px;
}
.k-btn-icon-only.k-btn-lg {
padding: 0;
height: 40px;
width: 40px;
}
.k-btn-icon-only.k-btn-sm {
padding: 0;
height: 24px;
width: 24px;
min-width: 24px;
}
.k-btn-group-sm {
.k-btn {
height: 24px;
// line-height: 22px;
font-size: 12px;
padding: 0 8px;
}
}
.k-btn-group-lg {
.k-btn {
height: 40px;
// line-height: 38px;
font-size: 14px;
padding: 0 15px;
}
}
.k-btn-group-circle {
.k-btn {
&:first-child {
border-top-left-radius: 30px;
border-bottom-left-radius: 30px;
}
&:last-child {
border-top-right-radius: 30px;
border-bottom-right-radius: 30px;
}
}
}
.k-btn[disabled='disabled'] {
&,
// &:focus,
&:hover,
&:active {
opacity: .8;
cursor: not-allowed;
color: var(--kui-color-disable-color);
background: var(--kui-color-disable-back);
border-color: var(--kui-color-disable-border);
}
&.k-btn-normal {
background: 0 0;
}
}
.k-btn-primary[disabled='disabled'] {
&,
&:hover,
// &:focus,
&:active {
opacity: .9;
cursor: not-allowed;
color: var(--kui-color-disable-color);
}
}
a.k-btn-link,
.k-btn-link {
background: none;
border: none;
color: var(--kui-color-main);
text-decoration: none;
&:hover {
text-decoration: none;
opacity: .8;
}
&:disabled {
background: 0 0;
&:hover,
// &:focus,
&:active {
background: 0 0;
}
}
}