UNPKG

@telekom/scale-components

Version:

Scale is the digital design system for Telekom products and experiences.

132 lines (122 loc) 3.33 kB
/** * @license * Scale https://github.com/telekom/scale * * Copyright (c) 2021 Egor Kirpichev and contributors, Deutsche Telekom AG * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ :host { outline: none; --font: var(--telekom-text-style-ui-bold); --color: var(--telekom-color-text-and-icon-standard); --color-hover: var(--telekom-color-text-and-icon-primary-hovered); --color-active: var(--telekom-color-text-and-icon-primary-pressed); --color-selected: var(--telekom-color-text-and-icon-primary-standard); --focus-outline: var(--telekom-line-weight-highlight) solid var(--telekom-color-functional-focus-standard); --spacing-right-slotted: var(--telekom-spacing-composition-space-04); --color-disabled: var(--telekom-color-text-and-icon-disabled); --radius: var(--telekom-radius-standard); --font-size-large: var(--telekom-typography-font-size-callout); } .tab-header { color: var(--color); cursor: pointer; display: inline-flex; outline: none; position: relative; box-sizing: border-box; align-items: center; height: var(--tab-height); font: var(--font); border-radius: var(--tab-radius); padding-right: var(--tab-spacing-horizontal); padding-left: var(--tab-spacing-horizontal); padding-top: var(--tab-spacing-vertical); padding-bottom: var(--tab-spacing-vertical); } .tab-header--disabled { cursor: auto; color: var(--color-disabled); } .tab-header--disabled:after { cursor: auto; background-color: var(--telekom-color-ui-border-disabled) !important; } .tab-header--disabled:active { color: var(--color-disabled); } .tab-header--disabled:hover { color: var(--color-disabled) !important; } .tab-header--disabled:hover:after { background-color: var(--telekom-color-ui-border-disabled) !important; } .tab-header:after { left: 0; right: 0; width: 100%; bottom: 0; content: ''; display: block; position: absolute; height: var(--tab-border-size); background-color: var(--tab-border-color); } .tab-header:before { left: 0; right: 0; width: 100%; bottom: 0; height: 0; content: ''; display: block; position: absolute; border-top: 1px solid transparent; } .tab-header:hover { color: var(--color-hover); } .tab-header:hover:after { background-color: var(--color-hover); } .tab-header:active { color: var(--color-active); } .tab-header:active:after { background-color: var(--color-active); } .tab-header:active:after { background-color: var(--color-active); } .tab-header ::slotted(*) { margin-right: var(--spacing-right-slotted); } .tab-header--has-focus { border-radius: var(--tab-radius); outline: var(--focus-outline); z-index: 1; } .tab-header--has-focus.tab-header--selected:after { border-radius: 0 0 3px 3px; width: 98%; margin-left: 1%; } .tab-header--selected { color: var(--color-selected); } .tab-header--selected:after { height: var(--tab-border-size-selected); background-color: var(--color-selected); } .tab-header--selected:before { border-top: var(--tab-border-size-selected) solid transparent; } /* small size */ .tab-header--large { font-size: var(--font-size-large); height: var(--tab-height-large); }