Sari la conținut

Proiect open-source independent. Domeniul oficial este sistem.digital.

Sistem DigitalCatalog versionatsistem.digital
Meniu

Catalog · Formulare

Buton

Declanșează o acțiune și îi descrie consecința prin text.

AlphaComponentăFormulare

Prezentare

Declanșează o acțiune și îi comunică prin text consecința, nu doar eticheta generică a unei acțiuni.

Când se folosește

  • pentru orice acțiune care nu navighează direct către o altă adresă (trimitere, salvare, ștergere) — pentru navigare pură se preferă un `link`;
  • cu `sd-button--primary` pentru acțiunea principală a ecranului, cel mult una vizibilă simultan.

Când nu se folosește

  • pentru navigare simplă către o altă pagină — acolo `link`-ul (`<a>`) e elementul corect, inclusiv vizual;
  • cu mai mult de un `sd-button--primary` vizibil simultan — ambiguizează acțiunea principală.

Anatomie

Un `<button class="sd-button sd-button--primary|sd-button--secondary" type="button|submit">`, text simplu, fără markup imbricat suplimentar.

Variante

  • `sd-button--primary` — acțiunea principală, contrast maxim
  • `sd-button--secondary` — acțiuni alternative (înapoi, salvează și continuă mai târziu)

Stări

  • implicit
  • :hover
  • :active (doar primary)
  • :disabled / `aria-disabled="true"`
  • :focus-visible

Comportament

Element `<button>` HTML nativ. `aria-disabled="true"` e tratat vizual identic cu `:disabled`, dar rămâne focusabil — util când motivul dezactivării trebuie explicat, spre deosebire de `disabled` nativ, care exclude complet elementul din tab order.

Reguli de conținut

  • textul descrie acțiunea și consecința ei („Trimite cererea”, „Descarcă documentul”), niciodată generic („OK”, „Submit”, „Click aici”) — conform docs/content/content-style-guide.md#microcopy-pentru-actiuni.

Responsabilitățile implementatorului

  • alege `aria-disabled="true"` în loc de `disabled` nativ atunci când persoana are nevoie să înțeleagă de ce butonul e indisponibil momentan (de exemplu în timpul trimiterii).

Cercetare

Istoric

Istoricul modificărilor relevante
VersiuneDatăModificare
0.1.0-alpha.0Publicare inițială în @sistem-digital/components, ca parte a pachetului public inițial de componente de formulare (PR #49).

Structura completă a acestei secțiuni urmează șablonul canonic al paginii unei componente. Accesibilitatea (semantică, tastatură, focus) rămâne documentată separat, conform șablonului de accesibilitate.

Preview și markup canonic

Previzualizarea de mai jos redă exact șirul HTML afișat în exemplul de cod. Nu există o implementare paralelă pentru documentație.

Previzualizare din markup-ul canonic

Instalare și importuri

pnpm add @sistem-digital/tokens @sistem-digital/components
Import CSS
@import '@sistem-digital/components/forms.css';
Markup canonic
<button class="sd-button sd-button--primary" type="button">Continuă</button>

Contract și surse

Schimbarea claselor publice, a markup-ului canonic sau a comportamentului helperelor necesită versionare și instrucțiuni de migrare.

Matricea design–cod

Disponibilitatea reală a acestei componente, calculată din pachetele publicate, conform schemei matricei design–cod. Rândurile Figma, testare cu tastatura și testare cu cititor de ecran rămân „Indisponibil” până la dovezi publicate separat (kit Figma, respectiv auditul manual de accesibilitate).

Matricea design–cod pentru Buton
CanalDisponibilitate
FigmaIndisponibil
HTML/CSSDisponibil
Web ComponentsIndisponibil
ReactIndisponibil
DocumentațieDisponibil
Teste automateDisponibil
Testare cu tastaturaIndisponibil
Testare cu cititor de ecranIndisponibil

A fost utilă această pagină?

Linkul deschide un formular GitHub precompletat. Nu transmitem nimic până când alegi să publici feedback-ul și îți recomandăm să nu incluzi date personale.