kopia lustrzana https://github.com/shoelace-style/shoelace
164 wiersze
10 KiB
Markdown
164 wiersze
10 KiB
Markdown
---
|
|
meta:
|
|
title: More Design Tokens
|
|
description: Additional design tokens can be found here.
|
|
---
|
|
|
|
# More Design Tokens
|
|
|
|
All of the design tokens described herein are considered relatively stable. However, some changes might occur in future versions to address mission critical bugs or improvements. If such changes occur, they _will not_ be considered breaking changes and will be clearly documented in the [changelog](/resources/changelog).
|
|
|
|
Most design tokens are consistent across the light and dark theme. Those that vary will show both values.
|
|
|
|
:::tip
|
|
Currently, the source of design tokens is considered to be [`light.css`](https://github.com/shoelace-style/shoelace/blob/next/src/themes/light.css). The dark theme, [dark.css](https://github.com/shoelace-style/shoelace/blob/next/src/themes/dark.css), mirrors all of the same tokens with dark mode-specific values where appropriate. Work is planned to move all design tokens to a single file, perhaps JSON or YAML, in the near future.
|
|
:::
|
|
|
|
## Focus Rings
|
|
|
|
Focus ring tokens control the appearance of focus rings. Note that form inputs use `--sl-input-focus-ring-*` tokens instead.
|
|
|
|
| Token | Value |
|
|
| ------------------------ | ----------------------------------------------------------------------------------------- |
|
|
| `--sl-focus-ring-color` | `var(--sl-color-primary-600)` (light theme)<br>`var(--sl-color-primary-700)` (dark theme) |
|
|
| `--sl-focus-ring-style` | `solid` |
|
|
| `--sl-focus-ring-width` | `3px` |
|
|
| `--sl-focus-ring` | `var(--sl-focus-ring-style) var(--sl-focus-ring-width) var(--sl-focus-ring-color)` |
|
|
| `--sl-focus-ring-offset` | `1px` |
|
|
|
|
## Buttons
|
|
|
|
Button tokens control the appearance of buttons. In addition, buttons also currently use some form input tokens such as `--sl-input-height-*` and `--sl-input-border-*`. More button tokens may be added in the future to make it easier to style them more independently.
|
|
|
|
| Token | Value |
|
|
| ------------------------------ | ----------------------------- |
|
|
| `--sl-button-font-size-small` | `var(--sl-font-size-x-small)` |
|
|
| `--sl-button-font-size-medium` | `var(--sl-font-size-small)` |
|
|
| `--sl-button-font-size-large` | `var(--sl-font-size-medium)` |
|
|
|
|
## Form Inputs
|
|
|
|
Form input tokens control the appearance of form controls such as [input](/components/input), [select](/components/select), [textarea](/components/textarea), etc.
|
|
|
|
| Token | Value |
|
|
| --------------------------------------- | ---------------------------------- |
|
|
| `--sl-input-height-small` | `1.875rem` (30px @ 16px base) |
|
|
| `--sl-input-height-medium` | `2.5rem` (40px @ 16px base) |
|
|
| `--sl-input-height-large` | `3.125rem` (50px @ 16px base) |
|
|
| `--sl-input-background-color` | `var(--sl-color-neutral-0)` |
|
|
| `--sl-input-background-color-hover` | `var(--sl-input-background-color)` |
|
|
| `--sl-input-background-color-focus` | `var(--sl-input-background-color)` |
|
|
| `--sl-input-background-color-disabled` | `var(--sl-color-neutral-100)` |
|
|
| `--sl-input-border-color` | `var(--sl-color-neutral-300)` |
|
|
| `--sl-input-border-color-hover` | `var(--sl-color-neutral-400)` |
|
|
| `--sl-input-border-color-focus` | `var(--sl-color-primary-500)` |
|
|
| `--sl-input-border-color-disabled` | `var(--sl-color-neutral-300)` |
|
|
| `--sl-input-border-width` | `1px` |
|
|
| `--sl-input-required-content` | `*` |
|
|
| `--sl-input-required-content-offset` | `-2px` |
|
|
| `--sl-input-required-content-color` | `var(--sl-input-label-color)` |
|
|
| `--sl-input-border-radius-small` | `var(--sl-border-radius-medium)` |
|
|
| `--sl-input-border-radius-medium` | `var(--sl-border-radius-medium)` |
|
|
| `--sl-input-border-radius-large` | `var(--sl-border-radius-medium)` |
|
|
| `--sl-input-font-family` | `var(--sl-font-sans)` |
|
|
| `--sl-input-font-weight` | `var(--sl-font-weight-normal)` |
|
|
| `--sl-input-font-size-small` | `var(--sl-font-size-small)` |
|
|
| `--sl-input-font-size-medium` | `var(--sl-font-size-medium)` |
|
|
| `--sl-input-font-size-large` | `var(--sl-font-size-large)` |
|
|
| `--sl-input-letter-spacing` | `var(--sl-letter-spacing-normal)` |
|
|
| `--sl-input-color` | `var(--sl-color-neutral-700)` |
|
|
| `--sl-input-color-hover` | `var(--sl-color-neutral-700)` |
|
|
| `--sl-input-color-focus` | `var(--sl-color-neutral-700)` |
|
|
| `--sl-input-color-disabled` | `var(--sl-color-neutral-900)` |
|
|
| `--sl-input-icon-color` | `var(--sl-color-neutral-500)` |
|
|
| `--sl-input-icon-color-hover` | `var(--sl-color-neutral-600)` |
|
|
| `--sl-input-icon-color-focus` | `var(--sl-color-neutral-600)` |
|
|
| `--sl-input-placeholder-color` | `var(--sl-color-neutral-500)` |
|
|
| `--sl-input-placeholder-color-disabled` | `var(--sl-color-neutral-600)` |
|
|
| `--sl-input-spacing-small` | `var(--sl-spacing-small)` |
|
|
| `--sl-input-spacing-medium` | `var(--sl-spacing-medium)` |
|
|
| `--sl-input-spacing-large` | `var(--sl-spacing-large)` |
|
|
| `--sl-input-focus-ring-color` | `hsl(198.6 88.7% 48.4% / 40%)` |
|
|
| `--sl-input-focus-ring-offset` | `0` |
|
|
|
|
## Filled Form Inputs
|
|
|
|
Filled form input tokens control the appearance of form controls using the `filled` variant.
|
|
|
|
| Token | Value |
|
|
| --------------------------------------------- | ----------------------------- |
|
|
| `--sl-input-filled-background-color` | `var(--sl-color-neutral-100)` |
|
|
| `--sl-input-filled-background-color-hover` | `var(--sl-color-neutral-100)` |
|
|
| `--sl-input-filled-background-color-focus` | `var(--sl-color-neutral-100)` |
|
|
| `--sl-input-filled-background-color-disabled` | `var(--sl-color-neutral-100)` |
|
|
| `--sl-input-filled-color` | `var(--sl-color-neutral-800)` |
|
|
| `--sl-input-filled-color-hover` | `var(--sl-color-neutral-800)` |
|
|
| `--sl-input-filled-color-focus` | `var(--sl-color-neutral-700)` |
|
|
| `--sl-input-filled-color-disabled` | `var(--sl-color-neutral-800)` |
|
|
|
|
## Form Labels
|
|
|
|
Form label tokens control the appearance of labels in form controls.
|
|
|
|
| Token | Value |
|
|
| ----------------------------------- | ---------------------------- |
|
|
| `--sl-input-label-font-size-small` | `var(--sl-font-size-small)` |
|
|
| `--sl-input-label-font-size-medium` | `var(--sl-font-size-medium`) |
|
|
| `--sl-input-label-font-size-large` | `var(--sl-font-size-large)` |
|
|
| `--sl-input-label-color` | `inherit` |
|
|
|
|
## Help Text
|
|
|
|
Help text tokens control the appearance of help text in form controls.
|
|
|
|
| Token | Value |
|
|
| --------------------------------------- | ----------------------------- |
|
|
| `--sl-input-help-text-font-size-small` | `var(--sl-font-size-x-small)` |
|
|
| `--sl-input-help-text-font-size-medium` | `var(--sl-font-size-small)` |
|
|
| `--sl-input-help-text-font-size-large` | `var(--sl-font-size-medium)` |
|
|
| `--sl-input-help-text-color` | `var(--sl-color-neutral-500)` |
|
|
|
|
## Toggles
|
|
|
|
Toggle tokens control the appearance of toggles such as [checkbox](/components/checkbox), [radio](/components/radio), [switch](/components/switch), etc.
|
|
|
|
| Token | Value |
|
|
| ------------------------- | ----------------------------- |
|
|
| `--sl-toggle-size-small` | `0.875rem` (14px @ 16px base) |
|
|
| `--sl-toggle-size-medium` | `1.125rem` (18px @ 16px base) |
|
|
| `--sl-toggle-size-large` | `1.375rem` (22px @ 16px base) |
|
|
|
|
## Overlays
|
|
|
|
Overlay tokens control the appearance of overlays as used in [dialog](/components/dialog), [drawer](/components/drawer), etc.
|
|
|
|
| Token | Value |
|
|
| ------------------------------- | --------------------------- |
|
|
| `--sl-overlay-background-color` | `hsl(240 3.8% 46.1% / 33%)` |
|
|
|
|
## Panels
|
|
|
|
Panel tokens control the appearance of panels such as those used in [dialog](/components/dialog), [drawer](/components/drawer), [menu](/components/menu), etc.
|
|
|
|
| Token | Value |
|
|
| ----------------------------- | ----------------------------- |
|
|
| `--sl-panel-background-color` | `var(--sl-color-neutral-0)` |
|
|
| `--sl-panel-border-color` | `var(--sl-color-neutral-200)` |
|
|
| `--sl-panel-border-width` | `1px` |
|
|
|
|
## Tooltips
|
|
|
|
Tooltip tokens control the appearance of tooltips. This includes the [tooltip](/components/tooltip) component as well as other implementations, such [range tooltips](/components/range).
|
|
|
|
| Token | Value |
|
|
| ------------------------------- | ------------------------------------------------------ |
|
|
| `--sl-tooltip-border-radius` | `var(--sl-border-radius-medium)` |
|
|
| `--sl-tooltip-background-color` | `var(--sl-color-neutral-800)` |
|
|
| `--sl-tooltip-color` | `var(--sl-color-neutral-0)` |
|
|
| `--sl-tooltip-font-family` | `var(--sl-font-sans)` |
|
|
| `--sl-tooltip-font-weight` | `var(--sl-font-weight-normal)` |
|
|
| `--sl-tooltip-font-size` | `var(--sl-font-size-small)` |
|
|
| `--sl-tooltip-line-height` | `var(--sl-line-height-dense)` |
|
|
| `--sl-tooltip-padding` | `var(--sl-spacing-2x-small) var(--sl-spacing-x-small)` |
|
|
| `--sl-tooltip-arrow-size` | `6px` |
|