Tabs: add chalk theme

pull/7011/head
Leopoldthecoder 2017-09-13 19:18:44 +08:00 committed by 杨奕
parent 11827f222f
commit e40609e2c7
1 changed files with 132 additions and 30 deletions

View File

@ -3,7 +3,6 @@
@include b(tabs) { @include b(tabs) {
@include e(header) { @include e(header) {
border-bottom: 1px solid $--color-black;
padding: 0; padding: 0;
position: relative; position: relative;
margin: 0 0 15px; margin: 0 0 15px;
@ -12,7 +11,7 @@
position: absolute; position: absolute;
bottom: 0; bottom: 0;
left: 0; left: 0;
height: 3px; height: 2px;
background-color: $--color-primary; background-color: $--color-primary;
z-index: 1; z-index: 1;
transition: transform .3s cubic-bezier(.645,.045,.355,1); transition: transform .3s cubic-bezier(.645,.045,.355,1);
@ -45,8 +44,19 @@
margin-bottom: -1px; margin-bottom: -1px;
position: relative; position: relative;
&::after {
content: "";
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 2px;
background-color: $--border-color-light;
z-index: $--index-normal;
}
@include when(scrollable) { @include when(scrollable) {
padding: 0 15px; padding: 0 20px;
box-sizing: border-box; box-sizing: border-box;
} }
} }
@ -58,7 +68,7 @@
cursor: pointer; cursor: pointer;
line-height: 44px; line-height: 44px;
font-size: 12px; font-size: 12px;
color: $--color-black; color: $--color-text-secondary;
} }
@include e(nav-next) { @include e(nav-next) {
right: 0; right: 0;
@ -71,16 +81,18 @@
position: relative; position: relative;
transition: transform .3s; transition: transform .3s;
float: left; float: left;
z-index: #{$--index-normal + 1};
} }
@include e(item) { @include e(item) {
padding: 0 16px; padding: 0 20px;
height: 42px; height: 40px;
box-sizing: border-box; box-sizing: border-box;
line-height: 40px; line-height: 40px;
display: inline-block; display: inline-block;
list-style: none; list-style: none;
font-size: 14px; font-size: 14px;
color: $--color-black; font-weight: 500;
color: $--color-text-primary;
position: relative; position: relative;
& .el-icon-close { & .el-icon-close {
@ -94,7 +106,7 @@
} }
&:hover { &:hover {
background-color: $--color-black; background-color: $--color-text-placeholder;
color: $--color-white; color: $--color-white;
} }
} }
@ -104,7 +116,7 @@
} }
&:hover { &:hover {
color: $--color-black; color: $--color-primary;
cursor: pointer; cursor: pointer;
} }
@ -118,6 +130,17 @@
position: relative; position: relative;
} }
@include m(card) { @include m(card) {
> .el-tabs__header {
border-bottom: 1px solid $--border-color-light;
}
> .el-tabs__header .el-tabs__nav-wrap::after {
content: none;
}
> .el-tabs__header .el-tabs__nav {
border: 1px solid $--border-color-light;
border-bottom: none;
border-radius: 4px 4px 0 0;
}
> .el-tabs__header .el-tabs__active-bar { > .el-tabs__header .el-tabs__active-bar {
display: none; display: none;
} }
@ -134,13 +157,16 @@
transform-origin: 100% 50%; transform-origin: 100% 50%;
} }
> .el-tabs__header .el-tabs__item { > .el-tabs__header .el-tabs__item {
border: 1px solid transparent; border-bottom: 1px solid transparent;
transition: all .3s cubic-bezier(.645,.045,.355,1); border-left: 1px solid $--border-color-light;
transition: color .3s cubic-bezier(.645,.045,.355,1), padding .3s cubic-bezier(.645,.045,.355,1);
&:first-child {
border-left: none;
}
&.is-closable { &.is-closable {
&:hover { &:hover {
padding-left: 9px; padding-left: 13px;
padding-right: 9px; padding-right: 13px;
& .el-icon-close { & .el-icon-close {
width: 14px; width: 14px;
@ -148,13 +174,11 @@
} }
} }
&.is-active { &.is-active {
border: 1px solid $--color-black;
border-bottom-color: $--color-white; border-bottom-color: $--color-white;
border-radius: 4px 4px 0 0;
&.is-closable { &.is-closable {
padding-left: 16px; padding-left: 20px;
padding-right: 16px; padding-right: 20px;
.el-icon-close { .el-icon-close {
width: 14px; width: 14px;
@ -165,25 +189,34 @@
} }
@include m(border-card) { @include m(border-card) {
background: $--color-white; background: $--color-white;
border: 1px solid $--color-black; border: 1px solid $--border-color-base;
box-shadow: 0 2px 4px 0 rgba(0,0,0,0.12), 0 0 6px 0 rgba(0,0,0,0.04); box-shadow: 0 2px 4px 0 rgba(0,0,0,0.12), 0 0 6px 0 rgba(0,0,0,0.04);
>.el-tabs__content { >.el-tabs__content {
padding: 15px; padding: 15px;
} }
>.el-tabs__header { >.el-tabs__header {
background-color: $--color-black; background-color: $--background-color-base;
border-bottom: 1px solid $--border-color-light;
margin: 0; margin: 0;
} }
> .el-tabs__header .el-tabs__nav-wrap::after {
content: none;
}
>.el-tabs__header .el-tabs__item { >.el-tabs__header .el-tabs__item {
transition: all .3s cubic-bezier(.645,.045,.355,1); transition: all .3s cubic-bezier(.645,.045,.355,1);
border: 1px solid transparent; border: 1px solid transparent;
margin: -1px -1px 0; margin: -1px -1px 0;
color: $--color-text-secondary;
&.is-active { &.is-active {
color: $--color-primary;
background-color: $--color-white; background-color: $--color-white;
border-right-color: $--color-black; border-right-color: $--border-color-base;
border-left-color: $--color-black; border-left-color: $--border-color-base;
}
&:hover {
color: $--color-primary;
} }
} }
} }
@ -195,7 +228,7 @@
&.el-tabs--border-card { &.el-tabs--border-card {
.el-tabs__header { .el-tabs__header {
border-bottom: 0; border-bottom: 0;
border-top: 1px solid $--color-black; border-top: 1px solid $--border-color-base;
} }
.el-tabs__nav-wrap { .el-tabs__nav-wrap {
margin-top: -1px; margin-top: -1px;
@ -219,7 +252,7 @@
.el-tabs__active-bar { .el-tabs__active-bar {
top: 0; top: 0;
bottom: auto; bottom: auto;
width: 3px; width: 2px;
height: auto; height: auto;
} }
@ -229,6 +262,13 @@
&.is-scrollable { &.is-scrollable {
padding: 30px 0; padding: 30px 0;
} }
&::after {
height: 100%;
width: 2px;
bottom: auto;
top: 0;
}
} }
.el-tabs__nav { .el-tabs__nav {
@ -262,13 +302,15 @@
@include m(left) { @include m(left) {
.el-tabs__header { .el-tabs__header {
float: left; float: left;
border-bottom: none;
border-right: 1px solid $--color-black;
margin-bottom: 0; margin-bottom: 0;
margin-right: 10px; margin-right: 10px;
} }
.el-tabs__nav-wrap { .el-tabs__nav-wrap {
margin-right: -1px; margin-right: -1px;
&::after {
left: auto;
right: 0;
}
} }
.el-tabs__active-bar { .el-tabs__active-bar {
right: 0; right: 0;
@ -279,10 +321,37 @@
} }
&.el-tabs--card { &.el-tabs--card {
.el-tabs__active-bar {
display: none;
}
.el-tabs__item {
border-left: none;
border-right: 1px solid $--border-color-light;
border-bottom: none;
border-top: 1px solid $--border-color-light;
}
.el-tabs__item:first-child {
border-right: 1px solid $--border-color-light;
border-top: none;
}
.el-tabs__item.is-active { .el-tabs__item.is-active {
border: 1px solid rgb(209, 219, 229); border: 1px solid $--border-color-light;
border-right-color: #fff; border-right-color: #fff;
border-left: none;
border-bottom: none;
&:first-child {
border-top: none;
}
&:last-child {
border-bottom: none;
}
}
.el-tabs__nav {
border-radius: 4px 0 0 4px; border-radius: 4px 0 0 4px;
border-bottom: 1px solid $--border-color-light;
border-right: none;
} }
.el-tabs__new-tab { .el-tabs__new-tab {
@ -291,6 +360,9 @@
} }
&.el-tabs--border-card { &.el-tabs--border-card {
.el-tabs__header {
border-right: 1px solid #dfe4ed;
}
.el-tabs__item { .el-tabs__item {
border: 1px solid transparent; border: 1px solid transparent;
margin: -1px 0 -1px -1px; margin: -1px 0 -1px -1px;
@ -306,14 +378,16 @@
@include m(right) { @include m(right) {
.el-tabs__header { .el-tabs__header {
float: right; float: right;
border-bottom: none;
border-left: 1px solid $--color-black;
margin-bottom: 0; margin-bottom: 0;
margin-left: 10px; margin-left: 10px;
} }
.el-tabs__nav-wrap { .el-tabs__nav-wrap {
margin-left: -1px; margin-left: -1px;
&::after {
left: 0;
right: auto;
}
} }
.el-tabs__active-bar { .el-tabs__active-bar {
@ -321,13 +395,41 @@
} }
&.el-tabs--card { &.el-tabs--card {
.el-tabs__active-bar {
display: none;
}
.el-tabs__item {
border-bottom: none;
border-top: 1px solid $--border-color-light;
}
.el-tabs__item:first-child {
border-left: 1px solid $--border-color-light;
border-top: none;
}
.el-tabs__item.is-active { .el-tabs__item.is-active {
border: 1px solid rgb(209, 219, 229); border: 1px solid $--border-color-light;
border-left-color: #fff; border-left-color: #fff;
border-right: none;
border-bottom: none;
&:first-child {
border-top: none;
}
&:last-child {
border-bottom: none;
}
}
.el-tabs__nav {
border-radius: 0 4px 4px 0; border-radius: 0 4px 4px 0;
border-bottom: 1px solid $--border-color-light;
border-left: none;
} }
} }
&.el-tabs--border-card { &.el-tabs--border-card {
.el-tabs__header {
border-left: 1px solid #dfe4ed;
}
.el-tabs__item { .el-tabs__item {
border: 1px solid transparent; border: 1px solid transparent;
margin: -1px -1px -1px 0; margin: -1px -1px -1px 0;