UNPKG

@opensig/opendesign

Version:

<p align="center"><img src="../docs/public/opendesign-logo-light.png"/></p> <h1 align="center">opendesign</h1> <p align="center">一个 Vue 3 组件库</p> <p align="center"><b>皮肤可定制,使用 TypeScript</b></p>

339 lines (311 loc) 7.99 kB
.o-tab { --tab-nav-btn-icon-size: var(--o-icon_size_control-xs); --tab-nav-btn-size: 24px; --tab-nav-color: var(--o-color-info2); --tab-nav-color-disabled: var(--o-color-info4); --tab-nav-radius: 2px; --tab-icon-color: var(--o-color-info2); --tab-icon-color-hover: var(--o-color-primary1); --tab-icon-color-disabled: var(--o-color-info4); --tab-nav-divider: 1px solid var(--o-color-control1); --tab-nav-anchor-color: var(--o-color-primary1); --tab-nav-anchor-height: 2px; --tab-nav-close-size: var(--o-icon_size_control-xs); --tab-nav-icon-size: var(--o-icon_size_control-m); } .o-tab-large { --tab-nav-text-size: var(--o-font_size-h4); --tab-nav-text-height: var(--o-line_height-h4); --tab-nav-gap: 40px; --tab-nav-icon-size: var(--o-icon_size_control-l); --tab-nav-padding: 0 0 16px; } .o-tab-medium { --tab-nav-text-size: var(--o-font_size-text2); --tab-nav-text-height: var(--o-line_height-text2); --tab-nav-gap: 32px; --tab-nav-icon-size: var(--o-icon_size_control-m); --tab-nav-padding: 0 0 14px; } .o-tab-small { --tab-nav-text-size: var(--o-font_size-text1); --tab-nav-text-height: var(--o-line_height-text1); --tab-nav-gap: 24px; --tab-nav-icon-size: var(--o-icon_size_control-xs); --tab-nav-padding: 0 0 8px; } .o-tab-solid { --tab-nav-bd-color: var(--o-color-control1-light); --tab-nav-bd-color-hover: var(--o-color-control2-light); --tab-nav-bd-color-active: var(--o-color-control1-light); --tab-nav-bd-color-disabled: var(--o-color-control4-light); --tab-nav-bg-color: var(--o-color-control1-light); --tab-nav-bg-color-hover: var(--o-color-control2-light); --tab-nav-bg-color-active: var(--o-color-control-light); --tab-nav-bg-color-disabled: var(--o-color-control4-light); --tab-solid-nav-padding: 4px 16px; --tab-solid-nav-gap: 8px; } .o-tab-text { --tab-nav-color-hover: var(--o-color-primary1); --tab-nav-color-active: var(--o-color-primary1); --tab-nav-bd-color: transparent; --tab-nav-bd-color-hover: transparent; --tab-nav-bd-color-active: var(--o-color-primary1); } .o-tab-navs { display: flex; align-items: center; position: relative; width: 100%; justify-content: var(--tab-nav-justify, center); } .o-tab-head { font-size: var(--tab-nav-text-size); line-height: var(--tab-nav-text-height); color: var(--tab-nav-color); position: relative; } .o-tab-head.with-act { display: flex; align-items: center; } .o-tab-head.show-line::after { content: ""; position: absolute; bottom: 0; left: 0; right: 0; border-bottom: var(--tab-nav-divider); } .o-tab-navs-wrap { overflow: auto; flex: 1; position: relative; } .o-tab-navs-scrollable { display: flex; position: relative; align-items: center; flex: 1; overflow: hidden; } .o-tab-nav-btn { display: inline-flex; flex-shrink: 0; align-items: center; justify-content: center; cursor: pointer; font-size: var(--tab-nav-btn-icon-size); margin: 0 8px; } @media (hover: hover) { .o-tab-nav-btn:hover { color: var(--tab-icon-color-hover); } } .o-tab-nav-btn-disabled, .o-tab-nav-btn-disabled:hover { color: var(--tab-icon-color-disabled); cursor: not-allowed; } .o-tab-navs-container { min-width: 0; } .o-tab-nav-list { display: inline-block; white-space: nowrap; } .o-tab-nav { display: inline-flex; flex-shrink: 0; align-items: center; cursor: pointer; border: 1px solid var(--tab-nav-bd-color); border-bottom-width: 0; background-color: var(--tab-nav-bg-color); position: relative; margin-right: var(--tab-nav-gap); padding: var(--tab-nav-padding); z-index: 1; color: var(--tab-icon-color); } .o-tab-nav:last-child { margin-right: 0; } @media (hover: hover) { .o-tab-nav:hover { color: var(--tab-nav-color-hover); border-color: var(--tab-nav-bd-color-hover); background-color: var(--tab-nav-bg-color-hover); } } .o-tab-solid .o-tab-nav { margin-right: var(--tab-solid-nav-gap); padding: var(--tab-solid-nav-padding); } .o-tab-nav .o-icon { font-size: var(--tab-nav-icon-size); margin-right: 8px; } .o-tab-nav-active { font-weight: 500; } .o-tab-nav-active, .o-tab-nav-active:hover { color: var(--tab-nav-color-active); border-color: var(--tab-nav-bd-color-active); background-color: var(--tab-nav-bg-color-active); } .o-tab-nav-disabled, .o-tab-nav-disabled:hover { cursor: not-allowed; color: var(--tab-nav-color-disabled); border-color: var(--tab-nav-bd-color-disabled); background-color: var(--tab-nav-bg-color-disabled); } .o-tab-nav-closable { position: relative; padding-right: 12px; } .o-tab-text .o-tab-nav-closable { padding-right: 0; } .o-tab-text .o-tab-nav { border: none; } .o-tab-head-prefix { flex-shrink: 0; } .o-tab-head-suffix { flex-shrink: 0; } .o-tab-nav-anchor { position: absolute; left: 0; bottom: 0; width: 0; z-index: 2; transition: all var(--o-easing-standard-in) var(--o-duration-m1); display: flex; justify-content: center; } .o-tab-nav-anchor-line { width: 100%; height: var(--tab-nav-anchor-height); background-color: var(--tab-nav-anchor-color); border-radius: var(--tab-nav-anchor-height); } .o-tab-nav-close { font-size: var(--tab-nav-close-size); margin-left: 8px; display: inline-flex; align-items: center; justify-content: center; color: var(--tab-icon-color); border-radius: 50%; } @media (hover: hover) { .o-tab-nav-close:hover { color: var(--tab-icon-color-hover); } } .o-tab-nav-close { overflow: hidden; } .o-tab-nav-close svg { transition: all var(--o-duration-m1) var(--o-easing-standard-in); } @media (hover: hover) { .o-tab-nav-close:hover svg { transform: rotate(180deg); } } .o-tab-nav-add { margin-left: 8px; flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: var(--tab-nav-btn-size); height: var(--tab-nav-btn-size); cursor: pointer; color: var(--tab-icon-color); font-size: var(--tab-nav-btn-icon-size); border-radius: 50%; } @media (hover: hover) { .o-tab-nav-add:hover { color: var(--tab-icon-color-hover); background-color: var(--tab-nav-bg-color-hover); } } .o-tab-body { display: flex; } .o-tab-pane { flex-shrink: 0; width: 100%; display: none; } .o-tab-pane-active { display: block; } @media (min-width: 1201px) and (max-width: 1440px) { .o-tab-large { --tab-nav-text-size: var(--o-font_size-text2); --tab-nav-text-height: var(--o-line_height-text2); --tab-nav-icon-size: var(--o-icon_size_control-m); --tab-nav-gap: 32px; } .o-tab-large.o-tab-text { --tab-nav-padding: 0 0 12px; } .o-tab-medium { --tab-nav-text-size: var(--o-font_size-text1); --tab-nav-text-height: var(--o-line_height-text1); } .o-tab-medium.o-tab-text { --tab-nav-padding: 0 0 8px; } .o-tab-small { --tab-nav-text-size: var(--o-font_size-tip1); --tab-nav-text-height: var(--o-line_height-tip1); --tab-nav-icon-size: var(--o-icon_size_control-s); --tab-nav-gap: 24px; } .o-tab-small.o-tab-text { --tab-nav-padding: 0 0 4px; } } @media (max-width: 1200px) { .o-tab-large { --tab-nav-text-size: var(--o-font_size-tip1); --tab-nav-text-height: var(--o-line_height-tip1); --tab-nav-icon-size: var(--o-icon_size_control-s); --tab-nav-gap: 16px; --tab-nav-anchor-height: 1px; } .o-tab-large.o-tab-text { --tab-nav-padding: 0 0 8px; } .o-tab-medium { --tab-nav-text-size: var(--o-font_size-tip1); --tab-nav-text-height: var(--o-line_height-tip1); --tab-nav-gap: 16px; } .o-tab-medium.o-tab-text { --tab-nav-padding: 0 0 2px; } .o-tab-medium .o-tab-nav-anchor-line { width: 16px; } .o-tab-small { --tab-nav-text-size: var(--o-font_size-tip1); --tab-nav-text-height: var(--o-line_height-tip1); --tab-nav-gap: 12px; } .o-tab-small.o-tab-text { --tab-nav-padding: 0 0 2px; } .o-tab-small .o-tab-nav-anchor-line { width: 16px; } }