_tab.scss 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351
  1. /* Tab */
  2. .nav-tabs {
  3. > li {
  4. &.nav-item {
  5. display: inline-block;
  6. float: none;
  7. margin: 0;
  8. padding: 0 17px;
  9. }
  10. }
  11. }
  12. /* Tab style 03 */
  13. .tab-style-03 {
  14. .nav-tabs {
  15. .nav-link {
  16. padding: 10px 33px;
  17. color: var(--medium-gray);
  18. border: 1px solid var(--light-medium-gray);
  19. border-bottom: none;
  20. @include prefix(border-radius, 6px 6px 0 0, webkit);
  21. &.active, &.show, &:hover {
  22. color: var(--dark-gray);
  23. background-color: var(--white);
  24. }
  25. }
  26. >li {
  27. &.nav-item {
  28. padding: 0 8px;
  29. }
  30. }
  31. }
  32. }
  33. /* Tab style 02 */
  34. .tab-style-02 {
  35. .nav-tabs {
  36. border-bottom: none;
  37. > li {
  38. &.nav-item {
  39. margin: 0 34px;
  40. > a {
  41. &.nav-link {
  42. border: none;
  43. padding: 0;
  44. color: var(--medium-gray);
  45. border-bottom: 2px solid transparent;
  46. @include prefix(transition, all 0.3s linear, webkit);
  47. i {
  48. @include prefix(transition, all 0.3s linear, webkit);
  49. @include prefix(transform, translateY(0), webkit);
  50. will-change: transform;
  51. }
  52. &:hover {
  53. color: var(--dark-gray);
  54. border-bottom: 2px solid;
  55. i {
  56. color: var(--base-color);
  57. @include prefix(transform, translateY(-5px), webkit);
  58. @include prefix(transform, scale(1.1), webkit);
  59. }
  60. }
  61. &.active {
  62. color: var(--dark-gray);
  63. border-bottom: 2px solid;
  64. background: transparent;
  65. i {
  66. color: var(--base-color);
  67. }
  68. }
  69. }
  70. }
  71. }
  72. }
  73. }
  74. }
  75. /* Tab style 03 */
  76. .tab-style-01 {
  77. .nav-tabs {
  78. .nav-link {
  79. border: none;
  80. @include prefix(border-radius, 50px, webkit);
  81. padding: 10px 40px;
  82. color: var(--medium-gray);
  83. @include prefix(transition, all 0.3s linear, webkit);
  84. &.show, &.active, &:hover {
  85. color: var(--dark-gray);
  86. background-color: var(--white);
  87. @include box-shadow(0 0 10px rgba(0,0,0,.08));
  88. @include prefix(transform, translate3d(0, -3px, 0), webkit);
  89. }
  90. }
  91. > li {
  92. &.nav-item {
  93. padding: 0 4px;
  94. }
  95. }
  96. }
  97. }
  98. /* Tab style 04 */
  99. .tab-style-04 {
  100. .nav-tabs {
  101. .nav-item {
  102. padding: 0 35px;
  103. .nav-link {
  104. padding: 0;
  105. border: none;
  106. background: transparent;
  107. position: relative;
  108. color: var(--medium-gray);
  109. .tab-border {
  110. width: 100%;
  111. height: 2px;
  112. display: block;
  113. @include prefix(transform, scaleX(0), wekit moz ms);
  114. @include prefix(transition, transform .5s ease, webkit);
  115. }
  116. &.active, &.show, &:hover {
  117. color: var(--dark-gray);
  118. .tab-border {
  119. @include prefix(transform, scaleX(1), webkit);
  120. }
  121. }
  122. }
  123. }
  124. }
  125. }
  126. /* Tab style 05 */
  127. .tab-style-05 {
  128. .nav-tabs {
  129. > li {
  130. width: 100%;
  131. &.nav-item {
  132. padding: 0;
  133. }
  134. }
  135. .nav-item {
  136. .nav-link {
  137. border: none;
  138. padding: 20px 28px 22px;
  139. margin-bottom: 15px;
  140. background: transparent;
  141. @include prefix(border-radius, 4px, webkit);
  142. @include prefix(transition, all 0.3s cubic-bezier(0.12, 0, 0.39, 0), webkit);
  143. display: flex;
  144. align-items: center;
  145. i {
  146. vertical-align: middle;
  147. display: inline-block;
  148. margin-right: 10px;
  149. }
  150. span{
  151. position: relative;
  152. top: 1px;
  153. color: var(--dark-gray);
  154. @include prefix(transition, all 0.3s cubic-bezier(0.12, 0, 0.39, 0), webkit);
  155. }
  156. &:hover, &.show, &.active {
  157. background: var(--white);
  158. color: var(--base-color);
  159. @include box-shadow(0 0 20px rgba(0,0,0,.08));
  160. i {
  161. color: var(--base-color);
  162. }
  163. span{
  164. color: var(--base-color);
  165. }
  166. }
  167. }
  168. &:last-child {
  169. .nav-link {
  170. border-bottom: none;
  171. }
  172. }
  173. }
  174. }
  175. }
  176. /* Tab style 06 */
  177. .tab-style-06 {
  178. .nav-tabs {
  179. >li {
  180. &.nav-item {
  181. position: relative;
  182. z-index: 1;
  183. padding: 0;
  184. border: 1px solid;
  185. overflow:hidden;
  186. border-radius:4px 0 0 4px;
  187. &:last-child {
  188. border-radius:0 4px 4px 0;
  189. margin-left: -1px;
  190. }
  191. >a {
  192. &.nav-link {
  193. border-bottom: none;
  194. border-radius: 0;
  195. line-height: 18px;
  196. padding: 16px 40px;
  197. text-transform: uppercase;
  198. z-index: 1;
  199. background-color: transparent;
  200. color: var(--medium-gray);
  201. border: 0;
  202. &.active {
  203. color: #fff!important;
  204. +.tab-bg-active {
  205. opacity: 1;
  206. }
  207. }
  208. }
  209. }
  210. }
  211. }
  212. }
  213. .tab-bg-active {
  214. position: absolute;
  215. top: -1px;
  216. left: -1px;
  217. width: calc(100% + 2px);
  218. height: calc(100% + 2px);
  219. z-index: -1;
  220. opacity: 0;
  221. }
  222. }
  223. /* Tab style 07 */
  224. .tab-style-07 {
  225. .nav-tabs {
  226. > li {
  227. width: 100%;
  228. &.nav-item {
  229. padding: 0;
  230. }
  231. }
  232. .nav-item {
  233. .nav-link {
  234. border: none;
  235. border-bottom:1px solid;
  236. border-color:var(--extra-medium-gray);
  237. padding: 38px 60px 38px;
  238. background: transparent;
  239. @include prefix(border-radius, 0, webkit);
  240. @include prefix(transition, 0.4s, webkit);
  241. position:relative;
  242. span{
  243. color: var(--dark-gray);
  244. z-index: 9;
  245. position: relative;
  246. @include prefix(transition, 0.3s cubic-bezier(0.12, 0, 0.39, 0), webkit);
  247. }
  248. &:hover, &.show, &.active {
  249. color: var(--white);
  250. isolation: inherit;
  251. span{
  252. color: var(--white);
  253. @include prefix(transition, 0.5s, webkit);
  254. }
  255. .number-box {
  256. opacity:1;
  257. @include prefix(transform, translate(50%, -50%), webkit);
  258. transition: opacity 0.4s,transform 0.4s;
  259. @include prefix(transition-delay, 0.35s, webkit);
  260. }
  261. .bg-hover {
  262. @include prefix(transform, scaleX(1), webkit);
  263. }
  264. }
  265. .number-box {
  266. position:absolute;
  267. top:50%;
  268. z-index:9;
  269. right:0;
  270. opacity:0;
  271. @include prefix(transform, translate(25%, -50%), webkit);
  272. transition: opacity 0s,transform 0s;
  273. @include prefix(transition-delay, 0s, webkit);
  274. }
  275. .bg-hover {
  276. position:absolute;
  277. width: 100%;
  278. height: 100%;
  279. left:0;
  280. top:0;
  281. content: "";
  282. @include prefix(transform, scaleX(0), webkit);
  283. transform-origin: left;
  284. @include prefix(transition, 0.3s cubic-bezier(0.12, 0, 0.39, 0), webkit);
  285. z-index: 1;
  286. }
  287. }
  288. &:last-child {
  289. .nav-link {
  290. border-bottom: none;
  291. }
  292. }
  293. }
  294. }
  295. }
  296. /* Tab style 08 */
  297. .tab-style-08 {
  298. ul {
  299. .nav-item {
  300. padding: 0;
  301. background-color: transparent;
  302. border-right: 1px solid var(--light-medium-gray);
  303. flex-grow: 1;
  304. flex-basis: 0;
  305. .nav-link {
  306. border:0;
  307. margin-bottom:0;
  308. padding:30px 15px;
  309. background-color: transparent;
  310. position: relative;
  311. color:var(--medium-gray);
  312. &.active, &.show, &:hover {
  313. border:0;
  314. color:var(--base-color);
  315. .tab-border {
  316. @include prefix(transform, scaleX(1), wekit moz ms);
  317. }
  318. }
  319. }
  320. .tab-border {
  321. width: calc(100% + 2px);
  322. height: 3px;
  323. display: block;
  324. @include prefix(transform, scaleX(0), wekit moz ms);
  325. @include prefix(transition, transform .5s ease, webkit);
  326. position: absolute;
  327. left: -1px;
  328. top: 0;
  329. }
  330. &:last-child {
  331. border: 0;
  332. }
  333. }
  334. &.active-tab-border-bottom {
  335. .nav-item {
  336. .tab-border {
  337. bottom: 0;
  338. top: auto;
  339. }
  340. }
  341. }
  342. }
  343. }