zarm-web
Version:
基于 React 的桌面端UI库
383 lines (356 loc) • 9.85 kB
CSS
.zw-tabs {
position: relative;
overflow: hidden;
}
.zw-tabs__header {
position: relative;
margin-bottom: 16px;
transition: padding 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.zw-tabs__header__scroll {
position: relative;
margin: 0;
padding: 0;
}
.zw-tabs__header__arrow {
position: absolute;
text-align: center;
transition: width 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
cursor: pointer;
}
.zw-tabs__header__arrow .zw-icon {
color: var(--color-text-caption);
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
.zw-tabs__header__arrow:hover .zw-icon {
color: var(--tabs-default-icon-hover-color);
}
.zw-tabs__header__arrow--disabled {
cursor: not-allowed;
pointer-events: auto;
}
.zw-tabs__header__arrow--disabled .zw-icon {
color: var(--tabs-default-icon-disabled-color);
}
.zw-tabs__header__arrow--disabled:hover .zw-icon {
color: var(--tabs-default-icon-disabled-color);
}
.zw-tabs__header__nav {
position: relative;
transition: transform 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.zw-tabs__header__item {
position: relative;
cursor: pointer;
line-height: normal;
color: var(--tabs-default-color);
}
.zw-tabs__header__item:hover {
color: var(--tabs-default-hover-color);
}
.zw-tabs__header__item--disabled {
color: var(--tabs-default-disabled-color);
cursor: not-allowed;
}
.zw-tabs__header__item--disabled:hover {
color: var(--tabs-default-disabled-color);
}
.zw-tabs__header__item--active {
background: var(--tabs-default-active-background);
color: var(--tabs-default-active-color);
}
.zw-tabs__header__item .zw-icon {
margin: 0 8px 0 0;
display: inline-block;
}
.zw-tabs__header__item .zw-icon--wrong {
margin: 0 0 0 8px;
color: var(--tabs-default-icon-color);
}
.zw-tabs__header__item .zw-icon--wrong:hover {
color: var(--tabs-default-icon-hover-color);
}
.zw-tabs__header__line {
transition: transform 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.zw-tabs__body {
position: relative;
}
.zw-tabs__body__item {
line-height: normal;
opacity: 0;
overflow: hidden;
height: 0;
font-size: 14px;
}
.zw-tabs__body__item--active {
opacity: 1;
height: auto;
}
.zw-tabs--sm {
font-size: var(--tabs-font-size-sm);
}
.zw-tabs--sm .zw-tabs__header {
height: var(--tabs-header-line-height-sm);
font-size: var(--tabs-font-size-sm);
}
.zw-tabs--sm .zw-tabs__header__item {
padding: 0 16px;
}
.zw-tabs--sm .zw-tabs__header .zw-icon {
font-size: var(--tabs-header-icon-sm);
}
.zw-tabs--sm.zw-tabs--horizontal.zw-tabs--line .zw-tabs__header__item {
height: var(--tabs-header-line-height-sm);
line-height: var(--tabs-header-line-height-sm);
}
.zw-tabs--sm.zw-tabs--horizontal.zw-tabs--card .zw-tabs__header {
height: var(--tabs-header-card-height-sm);
}
.zw-tabs--sm.zw-tabs--horizontal.zw-tabs--card .zw-tabs__header__item {
height: var(--tabs-header-card-height-sm);
line-height: var(--tabs-header-card-height-sm);
}
.zw-tabs--sm.zw-tabs--horizontal.zw-tabs--noborder-card .zw-tabs__header {
height: var(--tabs-header-card-height-sm);
}
.zw-tabs--sm.zw-tabs--horizontal.zw-tabs--noborder-card .zw-tabs__header__item {
height: var(--tabs-header-card-height-sm);
line-height: var(--tabs-header-card-height-sm);
}
.zw-tabs--sm.zw-tabs--vertical .zw-tabs__header {
height: 100%;
}
.zw-tabs--sm.zw-tabs--vertical .zw-tabs__header__item {
padding: 0 var(--tabs-header-vertical-padding-sm);
height: var(--tabs-header-vertical-height-sm);
line-height: var(--tabs-header-vertical-height-sm);
}
.zw-tabs--md {
font-size: var(--tabs-font-size-md);
}
.zw-tabs--md .zw-tabs__header {
height: var(--tabs-header-line-height-md);
font-size: var(--tabs-font-size-md);
}
.zw-tabs--md .zw-tabs__header__item {
padding: 0 16px;
}
.zw-tabs--md .zw-tabs__header .zw-icon {
font-size: var(--tabs-header-icon-md);
}
.zw-tabs--md.zw-tabs--horizontal.zw-tabs--line .zw-tabs__header__item {
height: var(--tabs-header-line-height-md);
line-height: var(--tabs-header-line-height-md);
}
.zw-tabs--md.zw-tabs--horizontal.zw-tabs--card .zw-tabs__header {
height: var(--tabs-header-card-height-md);
}
.zw-tabs--md.zw-tabs--horizontal.zw-tabs--card .zw-tabs__header__item {
height: var(--tabs-header-card-height-md);
line-height: var(--tabs-header-card-height-md);
}
.zw-tabs--md.zw-tabs--horizontal.zw-tabs--noborder-card .zw-tabs__header {
height: var(--tabs-header-card-height-md);
}
.zw-tabs--md.zw-tabs--horizontal.zw-tabs--noborder-card .zw-tabs__header__item {
height: var(--tabs-header-card-height-md);
line-height: var(--tabs-header-card-height-md);
}
.zw-tabs--md.zw-tabs--vertical .zw-tabs__header {
height: 100%;
}
.zw-tabs--md.zw-tabs--vertical .zw-tabs__header__item {
padding: 0 var(--tabs-header-vertical-padding-md);
height: var(--tabs-header-vertical-height-md);
line-height: var(--tabs-header-vertical-height-md);
}
.zw-tabs--lg {
font-size: var(--tabs-font-size-lg);
}
.zw-tabs--lg .zw-tabs__header {
height: var(--tabs-header-line-height-lg);
font-size: var(--tabs-font-size-lg);
}
.zw-tabs--lg .zw-tabs__header__item {
padding: 0 16px;
}
.zw-tabs--lg .zw-tabs__header .zw-icon {
font-size: var(--tabs-header-icon-lg);
}
.zw-tabs--lg.zw-tabs--horizontal.zw-tabs--line .zw-tabs__header__item {
height: var(--tabs-header-line-height-lg);
line-height: var(--tabs-header-line-height-lg);
}
.zw-tabs--lg.zw-tabs--horizontal.zw-tabs--card .zw-tabs__header {
height: var(--tabs-header-card-height-lg);
}
.zw-tabs--lg.zw-tabs--horizontal.zw-tabs--card .zw-tabs__header__item {
height: var(--tabs-header-card-height-lg);
line-height: var(--tabs-header-card-height-lg);
}
.zw-tabs--lg.zw-tabs--horizontal.zw-tabs--noborder-card .zw-tabs__header {
height: var(--tabs-header-card-height-lg);
}
.zw-tabs--lg.zw-tabs--horizontal.zw-tabs--noborder-card .zw-tabs__header__item {
height: var(--tabs-header-card-height-lg);
line-height: var(--tabs-header-card-height-lg);
}
.zw-tabs--lg.zw-tabs--vertical .zw-tabs__header {
height: 100%;
}
.zw-tabs--lg.zw-tabs--vertical .zw-tabs__header__item {
padding: 0 var(--tabs-header-vertical-padding-lg);
height: var(--tabs-header-vertical-height-lg);
line-height: var(--tabs-header-vertical-height-lg);
}
.zw-tabs--horizontal .zw-tabs__header {
border-bottom: 1px solid var(--border-color);
}
.zw-tabs--horizontal .zw-tabs__header--arrow-mode {
padding: 0 20px;
}
.zw-tabs--horizontal .zw-tabs__header__scroll {
position: relative;
overflow: hidden;
white-space: nowrap;
margin-bottom: -1px;
}
.zw-tabs--horizontal .zw-tabs__header__arrow {
height: 100%;
width: 20px;
top: 0;
}
.zw-tabs--horizontal .zw-tabs__header__arrow--left {
left: 0;
}
.zw-tabs--horizontal .zw-tabs__header__arrow--right {
right: 0;
}
.zw-tabs--horizontal .zw-tabs__header__nav {
display: inline-block;
}
.zw-tabs--horizontal .zw-tabs__header__item {
display: inline-block;
text-align: center;
}
.zw-tabs--horizontal .zw-tabs__header__line {
position: absolute;
left: 0;
bottom: 0;
width: auto;
border-bottom: 2px solid var(--tabs-default-line-color);
}
.zw-tabs--horizontal .zw-tabs__body {
display: flex;
flex-direction: row;
width: 100%;
}
.zw-tabs--horizontal .zw-tabs__body--animated {
transition: margin-left 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.zw-tabs--horizontal .zw-tabs__body__item {
width: 100%;
flex-shrink: 0;
}
.zw-tabs--vertical:before, .zw-tabs--vertical:after {
content: " ";
display: table;
}
.zw-tabs--vertical:after {
clear: both;
}
.zw-tabs--vertical .zw-tabs__header {
border-right: 1px solid var(--border-color);
float: left;
}
.zw-tabs--vertical .zw-tabs__header--arrow-mode {
padding: 30px 0;
}
.zw-tabs--vertical .zw-tabs__header__scroll {
height: 100%;
overflow: hidden;
white-space: nowrap;
margin-right: -1px;
}
.zw-tabs--vertical .zw-tabs__header__item {
padding: 0;
text-align: center;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
margin-bottom: 8px;
}
.zw-tabs--vertical .zw-tabs__header__item:last-child {
margin-bottom: 0;
}
.zw-tabs--vertical .zw-tabs__header__line {
position: absolute;
top: 0;
right: 0;
border-right: 2px solid var(--tabs-default-line-color);
}
.zw-tabs--vertical .zw-tabs__header__arrow {
height: 30px;
width: 100%;
left: 0;
}
.zw-tabs--vertical .zw-tabs__header__arrow--top {
top: 0;
}
.zw-tabs--vertical .zw-tabs__header__arrow--bottom {
bottom: 0;
}
.zw-tabs--vertical .zw-tabs__body {
padding-left: 10px;
overflow: hidden;
position: relative;
}
.zw-tabs--vertical .zw-tabs__body__item {
height: 0;
}
.zw-tabs--vertical .zw-tabs__body__item--active {
height: auto;
}
.zw-tabs--line .zw-tabs__header__item {
margin-right: 16px;
}
.zw-tabs--line .zw-tabs__header__item:last-child {
margin-right: 0;
}
.zw-tabs--card .zw-tabs__header__item {
border: 1px solid var(--border-color);
border-radius: 4px 4px 0 0;
margin-right: 4px;
background: var(--tabs-default-card-background);
}
.zw-tabs--card .zw-tabs__header__item--active {
border-bottom: 1px solid var(--tabs-default-background-color);
background: var(--tabs-default-active-background);
}
.zw-tabs--card .zw-tabs__header__item:last-child {
margin-right: 0;
}
.zw-tabs--noborder-card .zw-tabs__header {
margin-bottom: 0;
border-bottom: none;
}
.zw-tabs--noborder-card .zw-tabs__header__item {
background: var(--tabs-default-noborder-background);
}
.zw-tabs--noborder-card .zw-tabs__header__item--active {
background: var(--tabs-default-background-color);
border: none;
border-top-left-radius: 4px;
border-top-right-radius: 4px;
}
.zw-tabs--noborder-card .zw-tabs__body {
background: var(--tabs-default-background-color);
transition: none;
}
.zw-tabs--noborder-card .zw-tabs__body__item {
background: var(--tabs-default-background-color);
}