UNPKG

@fesjs/fes-design

Version:
254 lines (253 loc) 6.36 kB
.fes-tabs { display: flex; background: var(--f-white); margin: 0; padding: 0; outline: none; color: var(--f-text-color); font-size: var(--f-font-size-base); font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', 'Helvetica Neue', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-variant: tabular-nums; line-height: 22px; font-feature-settings: 'tnum'; } .fes-tabs-nav { position: relative; display: flex; align-items: center; } .fes-tabs-nav::before { position: absolute; background-color: var(--f-border-color-split); content: ""; pointer-events: none; } .fes-tabs-nav-prefix, .fes-tabs-nav-suffix { padding: 4px 16px; } .fes-tabs-nav .fes-tabs-nav-scroll .fes-tabs-nav-scroll-content { display: flex; flex-wrap: nowrap; align-items: center; } .fes-tabs-tab { padding: 4px 16px; color: var(--f-font-color-base); font-size: var(--f-font-size-base); cursor: pointer; transition: width, color, background 0.3s; -webkit-user-select: none; -moz-user-select: none; user-select: none; } .fes-tabs-tab.hover .fes-tabs-tab-close { width: 0; opacity: 0; } .fes-tabs-tab.hover:hover .fes-tabs-tab-close { width: 22px; opacity: 0.8; } .fes-tabs-tab-disabled { color: var(--f-text-color-disabled); cursor: not-allowed; } .fes-tabs-tab-disabled:hover { color: var(--f-text-color-disabled); } .fes-tabs-tab-label { position: relative; display: flex; flex-wrap: nowrap; white-space: nowrap; } .fes-tabs-tab-label::before { position: absolute; background-color: var(--f-primary-color); } .fes-tabs-tab-close { display: flex; align-items: center; box-sizing: border-box; width: 22px; overflow: hidden; color: var(--f-text-color-disabled); transform: translateX(8px); opacity: 0.6; transition: all 0.3s; } .fes-tabs-tab-close:hover { opacity: 1; } .fes-tabs-tab-active { color: var(--f-primary-color); } .fes-tabs-top .fes-tabs-nav .fes-tabs-nav-scroll .fes-tabs-nav-scroll-content, .fes-tabs-bottom .fes-tabs-nav .fes-tabs-nav-scroll .fes-tabs-nav-scroll-content { flex-direction: row; } .fes-tabs-top { flex-direction: column; } .fes-tabs-top .fes-tabs-nav { align-items: flex-end; } .fes-tabs-top .fes-tabs-nav::before { bottom: 0; left: 0; width: 100%; height: 1px; } .fes-tabs-top .fes-tabs-nav .fes-tabs-tab-active:not(.fes-tabs-tab-card) .fes-tabs-tab-label::before { bottom: 0; left: 0; width: 100%; height: 2px; transform: translateY(4px); content: ''; } .fes-tabs-bottom { flex-direction: column-reverse; } .fes-tabs-bottom .fes-tabs-nav { align-items: flex-end; } .fes-tabs-bottom .fes-tabs-nav::before { top: 0; left: 0; width: 100%; height: 1px; } .fes-tabs-bottom .fes-tabs-nav .fes-tabs-tab-active:not(.fes-tabs-tab-card) .fes-tabs-tab-label::before { top: 0; left: 0; width: 100%; height: 2px; transform: translateY(-4px); content: ''; } .fes-tabs-left .fes-tabs-nav .fes-tabs-nav-scroll .fes-tabs-nav-scroll-content, .fes-tabs-right .fes-tabs-nav .fes-tabs-nav-scroll .fes-tabs-nav-scroll-content { flex-direction: column; } .fes-tabs-left .fes-tabs-nav .fes-tabs-nav-scroll .fes-tabs-nav-scroll-content .fes-tabs-tab, .fes-tabs-right .fes-tabs-nav .fes-tabs-nav-scroll .fes-tabs-nav-scroll-content .fes-tabs-tab { width: 100%; } .fes-tabs-left .fes-tabs-nav .fes-tabs-nav-scroll .fes-tabs-nav-scroll-content .fes-tabs-tab-label, .fes-tabs-right .fes-tabs-nav .fes-tabs-nav-scroll .fes-tabs-nav-scroll-content .fes-tabs-tab-label { justify-content: center; } .fes-tabs-left .fes-tabs-nav-prefix, .fes-tabs-right .fes-tabs-nav-prefix, .fes-tabs-left .fes-tabs-nav-suffix, .fes-tabs-right .fes-tabs-nav-suffix { width: 100%; padding: 16px; text-align: center; } .fes-tabs-left { flex-direction: row; } .fes-tabs-left .fes-tabs-nav { flex-direction: column; } .fes-tabs-left .fes-tabs-nav::before { top: 0; right: 0; width: 1px; height: 100%; } .fes-tabs-left .fes-tabs-tab { padding: 16px; text-align: right; } .fes-tabs-left .fes-tabs-tab.fes-tabs-tab-active:not(.fes-tabs-tab-card) .fes-tabs-tab-label::before { top: 0; right: 0; width: 2px; height: 100%; transform: translateX(16px); content: ''; } .fes-tabs-right { flex-direction: row-reverse; } .fes-tabs-right .fes-tabs-nav { flex-direction: column; } .fes-tabs-right .fes-tabs-nav::before { top: 0; left: 0; width: 1px; height: 100%; } .fes-tabs-right .fes-tabs-tab { padding: 16px; text-align: left; } .fes-tabs-right .fes-tabs-tab.fes-tabs-tab-active:not(.fes-tabs-tab-card) .fes-tabs-tab-label::before { top: 0; left: 0; width: 2px; height: 100%; transform: translateX(-16px); content: ''; } .fes-tabs-card .fes-tabs-nav::before { display: none; } .fes-tabs-card .fes-tabs-nav-prefix, .fes-tabs-card .fes-tabs-nav-suffix { border-bottom: var(--f-border-width-base) var(--f-border-style-base) var(--f-border-color-split); } .fes-tabs-card .fes-tabs-tab-pad { align-self: flex-end; min-width: 4px; border-bottom: var(--f-border-width-base) var(--f-border-style-base) var(--f-border-color-split); } .fes-tabs-card .fes-tabs-tab-pad--last { flex: 1; align-self: flex-end; border-bottom: var(--f-border-width-base) var(--f-border-style-base) var(--f-border-color-split); } .fes-tabs-card .fes-tabs-tab-card { display: flex; flex-shrink: 0; flex-wrap: nowrap; background: var(--f-disabled-color-light); border: var(--f-border-width-base) var(--f-border-style-base) var(--f-border-color-split); border-top-left-radius: var(--f-border-radius-base); border-top-right-radius: var(--f-border-radius-base); } .fes-tabs-card .fes-tabs-tab-active { margin-bottom: 1px; background: none; border-bottom: 0; } .fes-tabs-card .fes-tabs-tab.addable { align-items: center; align-self: stretch; padding: 8px; } .fes-tabs-tab-pane-wrapper { flex: 1; overflow: hidden; } .fes-tabs-tab-pane { display: inline-block; width: 100%; } .fes-tabs-slide-fade-enter-active { transition: all 0.3s cubic-bezier(0.7, 0.3, 0.1, 1); } .fes-tabs-slide-fade-leave-active { transition: all 0.1s cubic-bezier(0.7, 0.3, 0.1, 1); } .fes-tabs-slide-fade-enter-from { transform: translateX(100%); } .fes-tabs-slide-fade-leave-to { opacity: 0; }