MDUIDocs
llms.txt-Link kopierenllms-full.txt-Link kopierenDiese Seite als Markdown anzeigenDiese Seite mit ChatGPT besprechenDie gesamte Projektdokumentation mit ChatGPT besprechen
Voreingestellte Farbe
Benutzerdefinierte Farbe
Farbe aus Hintergrundbild extrahieren
Bitte wählen Sie ein Hintergrundbild aus
Erste Schritte
KI-gestützte Entwicklung
Stile
Dunkelmodus Dynamic Color Typografie Design Tokens
Integration mit Frameworks
Komponenten
Funktionen
Pakete

Design Tokens

I Design Tokens rappresentano un approccio ormai diffuso per gestire i sistemi di design.

Trasformano valori riutilizzabili come colori, caratteri e spaziatura in variabili che possono essere utilizzate in modo coerente in tutto un sistema di design.

mdui utilizza Proprietà CSS personalizzate globali per implementare i Design Tokens, mantenendo gli stili coerenti in tutti i componenti. Modificando queste Proprietà, puoi regolare globalmente gli stili di tutti i componenti mdui. Per i tuoi stili, dai la priorità all'utilizzo di queste Proprietà CSS personalizzate per mantenere la coerenza con gli stili dei componenti mdui. Ciò garantisce anche che i tuoi stili si aggiornino in modo sincrono quando si modificano gli schemi cromatici dinamici.

Colore

mdui fornisce Proprietà CSS personalizzate sia per la Modalità chiara che per quella scura. In Modalità chiara, la proprietà è denominata --mdui-color-{name}-light e in Modalità scura è --mdui-color-{name}-dark.

Inoltre, mdui fornisce Proprietà CSS personalizzate denominate --mdui-color-{name}. Questa Proprietà fa riferimento a --mdui-color-{name}-light in Modalità chiara e a --mdui-color-{name}-dark in Modalità scura, consentendo il cambio automatico del colore in base alla modalità corrente.

Per modificare colori specifici, regola sia --mdui-color-{name}-light che --mdui-color-{name}-dark. Quando leggi le proprietà CSS personalizzate, usa la proprietà --mdui-color-{name}.

Queste Proprietà CSS personalizzate memorizzano tre valori di canale RGB separati da virgole. Ecco un esempio di come utilizzare le proprietà CSS personalizzate del colore:

/* Modifica il valore del colore primario */
:root {
  --mdui-color-primary-light: 103, 80, 164;
  --mdui-color-primary-dark: 208, 188, 255;
}

/* Imposta il colore di sfondo dell'elemento foo su primario */
.foo {
  background-color: rgb(var(--mdui-color-primary));
}

/* Imposta il colore di sfondo dell'elemento bar su primario con opacità 0.8 */
.bar {
  background-color: rgba(var(--mdui-color-primary), 0.8);
}

Per generare un nuovo Schema Cromatico, usa la funzione setColorScheme. Questa funzione genera uno Schema Cromatico completo in base al colore fornito.

Nome Colore Proprietà CSS Personalizzata Predefinito Esempio
Primary --mdui-color-primary-light 103, 80, 164
--mdui-color-primary-dark 208, 188, 255
--mdui-color-primary
Primary container --mdui-color-primary-container-light 234, 221, 255
--mdui-color-primary-container-dark 79, 55, 139
--mdui-color-primary-container
On primary --mdui-color-on-primary-light 255, 255, 255
--mdui-color-on-primary-dark 55, 30, 115
--mdui-color-on-primary
On primary container --mdui-color-on-primary-container-light 33, 0, 94
--mdui-color-on-primary-container-dark 234, 221, 255
--mdui-color-on-primary-container
Inverse primary --mdui-color-inverse-primary-light 208, 188, 255
--mdui-color-inverse-primary-dark 103, 80, 164
--mdui-color-inverse-primary
Secondary --mdui-color-secondary-light 98, 91, 113
--mdui-color-secondary-dark 204, 194, 220
--mdui-color-secondary
Secondary container --mdui-color-secondary-container-light 232, 222, 248
--mdui-color-secondary-container-dark 74, 68, 88
--mdui-color-secondary-container
On secondary --mdui-color-on-secondary-light 255, 255, 255
--mdui-color-on-secondary-dark 51, 45, 65
--mdui-color-on-secondary
On secondary container --mdui-color-on-secondary-container-light 30, 25, 43
--mdui-color-on-secondary-container-dark 232, 222, 248
--mdui-color-on-secondary-container
Tertiary --mdui-color-tertiary-light 125, 82, 96
--mdui-color-tertiary-dark 239, 184, 200
--mdui-color-tertiary
Tertiary container --mdui-color-tertiary-container-light 255, 216, 228
--mdui-color-tertiary-container-dark 99, 59, 72
--mdui-color-tertiary-container
On tertiary --mdui-color-on-tertiary-light 255, 255, 255
--mdui-color-on-tertiary-dark 73, 37, 50
--mdui-color-on-tertiary
On tertiary container --mdui-color-on-tertiary-container-light 55, 11, 30
--mdui-color-on-tertiary-container-dark 255, 216, 228
--mdui-color-on-tertiary-container
Surface --mdui-color-surface-light 254, 247, 255
--mdui-color-surface-dark 20, 18, 24
--mdui-color-surface
Surface dim --mdui-color-surface-dim-light 222, 216, 225
--mdui-color-surface-dim-dark 20, 18, 24
--mdui-color-surface-dim
Surface bright --mdui-color-surface-bright-light 254, 247, 255
--mdui-color-surface-bright-dark 59, 56, 62
--mdui-color-surface-bright
Surface container lowest --mdui-color-surface-container-lowest-light 255, 255, 255
--mdui-color-surface-container-lowest-dark 15, 13, 19
--mdui-color-surface-container-lowest
Surface container low --mdui-color-surface-container-low-light 247, 242, 250
--mdui-color-surface-container-low-dark 29, 27, 32
--mdui-color-surface-container-low
Surface container --mdui-color-surface-container-light 243, 237, 247
--mdui-color-surface-container-dark 33, 31, 38
--mdui-color-surface-container
Surface container high --mdui-color-surface-container-high-light 236, 230, 240
--mdui-color-surface-container-high-dark 43, 41, 48
--mdui-color-surface-container-high
Surface container highest --mdui-color-surface-container-highest-light 230, 224, 233
--mdui-color-surface-container-highest-dark 54, 52, 59
--mdui-color-surface-container-highest
Surface variant --mdui-color-surface-variant-light 231, 224, 236
--mdui-color-surface-variant-dark 73, 69, 79
--mdui-color-surface-variant
On surface --mdui-color-on-surface-light 28, 27, 31
--mdui-color-on-surface-dark 230, 225, 229
--mdui-color-on-surface
On surface variant --mdui-color-on-surface-variant-light 73, 69, 78
--mdui-color-on-surface-variant-dark 202, 196, 208
--mdui-color-on-surface-variant
Inverse surface --mdui-color-inverse-surface-light 49, 48, 51
--mdui-color-inverse-surface-dark 230, 225, 229
--mdui-color-inverse-surface
Inverse on surface --mdui-color-inverse-on-surface-light 244, 239, 244
--mdui-color-inverse-on-surface-dark 49, 48, 51
--mdui-color-inverse-on-surface
Background --mdui-color-background-light 254, 247, 255
--mdui-color-background-dark 20, 18, 24
--mdui-color-background
On background --mdui-color-on-background-light 28, 27, 31
--mdui-color-on-background-dark 230, 225, 229
--mdui-color-on-background
Error --mdui-color-error-light 179, 38, 30
--mdui-color-error-dark 242, 184, 181
--mdui-color-error
Error container --mdui-color-error-container-light 249, 222, 220
--mdui-color-error-container-dark 140, 29, 24
--mdui-color-error-container
On error --mdui-color-on-error-light 255, 255, 255
--mdui-color-on-error-dark 96, 20, 16
--mdui-color-on-error
On error container --mdui-color-on-error-container-light 65, 14, 11
--mdui-color-on-error-container-dark 249, 222, 220
--mdui-color-on-error-container
Outline --mdui-color-outline-light 121, 116, 126
--mdui-color-outline-dark 147, 143, 153
--mdui-color-outline
Outline variant --mdui-color-outline-variant-light 196, 199, 197
--mdui-color-outline-variant-dark 68, 71, 70
--mdui-color-outline-variant
Shadow --mdui-color-shadow-light 0, 0, 0
--mdui-color-shadow-dark 0, 0, 0
--mdui-color-shadow
Surface tint --mdui-color-surface-tint-color-light 103, 80, 164
--mdui-color-surface-tint-color-dark 208, 188, 255
--mdui-color-surface-tint-color
Scrim --mdui-color-scrim-light 0, 0, 0
--mdui-color-scrim-dark 0, 0, 0
--mdui-color-scrim

Raggio d'angolo

mdui fornisce 7 dimensioni di raggio d'angolo. Queste Proprietà CSS personalizzate consentono di regolare il raggio d'angolo:

/* Modifica la dimensione del raggio d'angolo extra-piccolo */
:root {
  --mdui-shape-corner-extra-small: 0.3rem;
}

/* Imposta il raggio d'angolo dell'elemento foo su extra-piccolo */
.foo {
  border-radius: var(--mdui-shape-corner-extra-small);
}
Proprietà CSS Personalizzata Predefinito Esempio
--mdui-shape-corner-none 0
--mdui-shape-corner-extra-small 0.25rem
--mdui-shape-corner-small 0.5rem
--mdui-shape-corner-medium 0.75rem
--mdui-shape-corner-large 1rem
--mdui-shape-corner-extra-large 1.75rem
--mdui-shape-corner-full 1000rem

Tipografia

mdui fornisce 15 stili tipografici. Ogni stile include Proprietà per l'altezza della linea, la dimensione del carattere, la spaziatura delle lettere e il peso del carattere.

Ecco un esempio di come utilizzare queste Proprietà:

/* Modifica lo stile del testo Body large */
:root {
  --mdui-typescale-body-large-line-height: 1.6rem;
  --mdui-typescale-body-large-size: 1.2rem;
  --mdui-typescale-body-large-tracking: 0.01rem;
  --mdui-typescale-body-large-weight: 400;
}

/* Imposta lo stile del testo dell'elemento foo su Body large */
.foo {
  line-height: var(--mdui-typescale-body-large-line-height);
  font-size: var(--mdui-typescale-body-large-size);
  letter-spacing: var(--mdui-typescale-body-large-tracking);
  font-weight: var(--mdui-typescale-body-large-weight);
}
Proprietà CSS Personalizzata Predefinito Esempio
--mdui-typescale-display-large-line-height 4rem
Display large
--mdui-typescale-display-large-size 3.5625rem
--mdui-typescale-display-large-tracking 0
--mdui-typescale-display-large-weight 400
--mdui-typescale-display-medium-line-height 3.25rem
Display medium
--mdui-typescale-display-medium-size 2.8125rem
--mdui-typescale-display-medium-tracking 0
--mdui-typescale-display-medium-weight 400
--mdui-typescale-display-small-line-height 2.75rem
Display small
--mdui-typescale-display-small-size 2.25rem
--mdui-typescale-display-small-tracking 0
--mdui-typescale-display-small-weight 400
--mdui-typescale-headline-large-line-height 2.5rem
Headline large
--mdui-typescale-headline-large-size 2rem
--mdui-typescale-headline-large-tracking 0
--mdui-typescale-headline-large-weight 400
--mdui-typescale-headline-medium-line-height 2.25rem
Headline medium
--mdui-typescale-headline-medium-size 1.75rem
--mdui-typescale-headline-medium-tracking 0
--mdui-typescale-headline-medium-weight 400
--mdui-typescale-headline-small-line-height 2rem
Headline small
--mdui-typescale-headline-small-size 1.5rem
--mdui-typescale-headline-small-tracking 0
--mdui-typescale-headline-small-weight 400
--mdui-typescale-title-large-line-height 1.75rem
Title large
--mdui-typescale-title-large-size 1.375rem
--mdui-typescale-title-large-tracking 0
--mdui-typescale-title-large-weight 400
--mdui-typescale-title-medium-line-height 1.5rem
Title medium
--mdui-typescale-title-medium-size 1rem
--mdui-typescale-title-medium-tracking 0.009375rem
--mdui-typescale-title-medium-weight 500
--mdui-typescale-title-small-line-height 1.25rem
Title small
--mdui-typescale-title-small-size 0.875rem
--mdui-typescale-title-small-tracking 0.00625rem
--mdui-typescale-title-small-weight 500
--mdui-typescale-label-large-line-height 1.25rem
Label large
--mdui-typescale-label-large-size 0.875rem
--mdui-typescale-label-large-tracking 0.00625rem
--mdui-typescale-label-large-weight 500
--mdui-typescale-label-medium-line-height 1rem
Label medium
--mdui-typescale-label-medium-size 0.75rem
--mdui-typescale-label-medium-tracking 0.03125rem
--mdui-typescale-label-medium-weight 500
--mdui-typescale-label-small-line-height 0.375rem
Label small
--mdui-typescale-label-small-size 0.6875rem
--mdui-typescale-label-small-tracking 0.03125rem
--mdui-typescale-label-small-weight 500
--mdui-typescale-body-large-line-height 1.5rem
Body large
--mdui-typescale-body-large-size 1rem
--mdui-typescale-body-large-tracking 0.009375rem
--mdui-typescale-body-large-weight 400
--mdui-typescale-body-medium-line-height 1.25rem
Body medium
--mdui-typescale-body-medium-size 0.875rem
--mdui-typescale-body-medium-tracking 0.015625rem
--mdui-typescale-body-medium-weight 400
--mdui-typescale-body-small-line-height 1rem
Body small
--mdui-typescale-body-small-size 0.75rem
--mdui-typescale-body-small-tracking 0.025rem
--mdui-typescale-body-small-weight 400

Opacità del Livello di Stato

I componenti mdui, come <mdui-button>, utilizzano uno strato overlay semi-trasparente durante gli stati di interazione come hover, focus, pressione e trascinamento. L'opacità di questo strato può essere regolata modificando le seguenti Proprietà CSS personalizzate:

/* Modifica l'opacità del livello di stato */
:root {
  --mdui-state-layer-hover: 0.08;
  --mdui-state-layer-focus: 0.12;
  --mdui-state-layer-pressed: 0.12;
  --mdui-state-layer-dragged: 0.16;
}
Proprietà CSS Personalizzata Predefinito Esempio
--mdui-state-layer-hover 0.08
--mdui-state-layer-focus 0.12
--mdui-state-layer-pressed 0.12
--mdui-state-layer-dragged 0.16

Elevazione

I componenti mdui utilizzano l'elevazione per creare profondità con le ombre. Puoi regolare queste ombre modificando le proprietà CSS personalizzate:

/* Modifica l'elevazione di livello1 */
:root {
  --mdui-elevation-level1:
    0 0.5px 1.5px 0 rgba(var(--mdui-color-shadow), 19%),
    0 0 1px 0 rgba(var(--mdui-color-shadow), 3.9%);
}

/* Imposta l'elevazione dell'elemento foo su livello1 */
.foo {
  box-shadow: var(--mdui-elevation-level1);
}
Proprietà CSS Personalizzata Predefinito Esempio
--mdui-elevation-level0 none
--mdui-elevation-level1 0 0.5px 1.5px 0 rgba(var(--mdui-color-shadow), 19%), 0 0 1px 0 rgba(var(--mdui-color-shadow), 3.9%)
--mdui-elevation-level2 0 0.85px 3px 0 rgba(var(--mdui-color-shadow), 19%), 0 0.25px 1px 0 rgba(var(--mdui-color-shadow), 3.9%)
--mdui-elevation-level3 0 1.25px 5px 0 rgba(var(--mdui-color-shadow), 19%), 0 0.3333px 1.5px 0 rgba(var(--mdui-color-shadow), 3.9%)
--mdui-elevation-level4 0 1.85px 6.25px 0 rgba(var(--mdui-color-shadow), 19%), 0 0.5px 1.75px 0 rgba(var(--mdui-color-shadow), 3.9%)
--mdui-elevation-level5 0 2.75px 9px 0 rgba(var(--mdui-color-shadow), 19%), 0 0.25px 3px 0 rgba(var(--mdui-color-shadow), 3.9%)

Animazione

I componenti mdui incorporano animazioni, con curve di easing e durate personalizzabili. Queste Proprietà possono essere modificate utilizzando le proprietà CSS personalizzate:

/* Modifica la curva di easing standard e la durata short1 */
:root {
  --mdui-motion-easing-standard: cubic-bezier(0.2, 0, 0, 1);
  --mdui-motion-duration-short1: 40ms;
}

/* Applica la curva di easing standard e la durata short1 all'effetto di transizione dell'elemento foo */
.foo {
  transition: all var(--mdui-motion-duration-short1)
    var(--mdui-motion-easing-standard);
}
Tipo Proprietà CSS Personalizzata Predefinito
Curva di Easing --mdui-motion-easing-linear cubic-bezier(0, 0, 1, 1)
--mdui-motion-easing-standard cubic-bezier(0.2, 0, 0, 1)
--mdui-motion-easing-standard-accelerate cubic-bezier(0.3, 0, 1, 1)
--mdui-motion-easing-standard-decelerate cubic-bezier(0, 0, 0, 1)
--mdui-motion-easing-emphasized var(--mdui-motion-easing-standard)
--mdui-motion-easing-emphasized-accelerate cubic-bezier(0.3, 0, 0.8, 0.15)
--mdui-motion-easing-emphasized-decelerate cubic-bezier(0.05, 0.7, 0.1, 1)
Durata --mdui-motion-duration-short1 50ms
--mdui-motion-duration-short2 100ms
--mdui-motion-duration-short3 150ms
--mdui-motion-duration-short4 200ms
--mdui-motion-duration-medium1 250ms
--mdui-motion-duration-medium2 300ms
--mdui-motion-duration-medium3 350ms
--mdui-motion-duration-medium4 400ms
--mdui-motion-duration-long1 450ms
--mdui-motion-duration-long2 500ms
--mdui-motion-duration-long3 550ms
--mdui-motion-duration-long4 600ms
--mdui-motion-duration-extra-long1 700ms
--mdui-motion-duration-extra-long2 800ms
--mdui-motion-duration-extra-long3 900ms
--mdui-motion-duration-extra-long4 1000ms

Breakpoint

I componenti mdui adattano il loro layout in base a vari breakpoint, che vengono forniti tramite Proprietà CSS personalizzate. Ecco un esempio di come modificare un breakpoint:

/* Modifica il valore del breakpoint per sm */
:root {
  --mdui-breakpoint-sm: 560px;
}

Tieni presente che le proprietà CSS personalizzate non possono essere utilizzate nelle media query CSS. Ad esempio, il seguente utilizzo non è corretto:

/* Utilizzo errato. Le proprietà CSS personalizzate non possono essere utilizzate nelle media query */
@media (min-width: var(--mdui-breakpoint-sm)) {
}

Per determinare i breakpoint in JavaScript, utilizza la funzione breakpoint.

Proprietà CSS Personalizzata Predefinito
--mdui-breakpoint-xs 0px
--mdui-breakpoint-sm 600px
--mdui-breakpoint-md 840px
--mdui-breakpoint-lg 1080px
--mdui-breakpoint-xl 1440px
--mdui-breakpoint-xxl 1920px
Auf dieser Seite