Dialog

A dialog egy rugalmasan használható komponens, amely a felület felett lebegve jelenik meg. A dialogok egy műveletre, kérdésre vagy üzenetre irányítják a felhasználó figyelmét.

Fejlesztői dokumentáció Felépítés

Container: A komponens teljes befoglaló eleme.

Title: A dialog címe.

Sub-title: A dialog alcíme. (opcionális)

Content: A dialog tartalma.

Actions: A dialoggal kapcsolatos akciók, amelyek Link vagy Button komponensek lehetnek.

Close button: A dialog bezárására szolgáló gomb. (opcionális)

Overlay: A dialog mögötti tartalmat lesötétítő háttér.

Opciók Modális és nem modális mód

A dialogot modális és nem modális módban használhatjuk.

Modális módban nem lehet interaktálni a felület többi tartalmával. Ezt egy félig áttetsző overlay vizuálisan is megerősíti.

Méretek

A dialog két méretben - small és large - használható. A small méretet mobilfelületeken, illetve 600px-nél keskenyebb felbontásokon használjuk. A large méretet 600px feletti kijelzőkön használjuk.

Megjelenítés

A dialog trayként, floating ablakként és full-screen módban jelenhet meg.

A tray és a full-screen dialog mindig modal, azaz nem lehet interaktálni a felület többi részével. A floating dialog modal és non-modal is lehet.

Bezárhatóság

A Close button alapértelmezetten be van kapcsolva a komponensen. Ha a dialog csak a benne található akciókkal zárható be, a Close button kikapcsolható.

Működés Interakciós állapotok

A komponens a és a benne található interaktív elemek a design system sztenderd interakciós állapotainak logikáját követi.

Dialog bezárása

Ha a Close button be van kapcsolva, a dialog a gomb aktiválásával, az Esc billentyűvel, illetve modális módban a dialogon kívülre kattintással zárható be.

Minimális és maximális szélesség

A small méret minimális szélessége 20rem, maximális szélessége 37,5rem.

A large méret minimális szélessége 37,5rem, maximális szélessége nincs.

Pozíció

A tray dialog a felület alján, középre igazítva jelenik meg.

A floating dialogot a felület sarkába, közepére vagy közvetlenül a trigger mellé is pozicionálhatjuk.

Custom pozíció a trigger mellett.
Szöveg túlcsordulása

A hosszú szövegek több sorba törnek.

Szövegírási útmutató

A dialognak egyszerűnek és fókuszáltnak kell lennie, nem tartalmazhat nagy mennyiségű információt vagy komplex műveleteket. Ha a tartalom túl hosszú vagy a művelet nem oldható meg egyetlen dialoggal, érdemes más megoldást választani.

Cím

A dialog címe egy egyszerű állítás vagy kérdés legyen (Süti tájékoztató; Eszköz eltávolítása; Menti a módosításokat?; Engedélyezi a helymeghatározást?).

Törekedjünk az egyértelműségre. Kerüljük a félreérthető vagy túl általános címeket (Biztos benne?; Figyelmeztetés!; Fontos információ).

A címekre vonatkozó szövegírási útmutató a Nyelvtan és fogalmazás oldalon található.

Szöveges tartalom

A dialog szöveges tartalma ne megismételje, hanem pontosítsa vagy kiegészítse a címsort, illetve elmagyarázza az akció következményét.

Címek és akciók összhangja

Az akciónak mindig reagálnia kell a dialog címére. Ha kérdésként fogalmaztuk meg a címet, az akciónak erre kell válaszolnia.

Az akciókra vonatkozó szövegírási útmutatók a Button és a Link komponenseknél találhatók.

Használati megfontolások Dialog, popover és tray

A dialog azonnali interakciót igényel a felhasználótól, és gyakran blokkolja a felület többi tartalmát.

A popover egy adott felületi elemmel kapcsolatban kínál kontextuális információkat vagy műveleteket, és nem blokkolja a felület többi tartalmát.

A tray egy panel, amely a képernyő széléről csúszik be, és további információkat vagy műveleteket kínál, anélkül, hogy diszruptálná a felületet.

Mindhárom komponens különböző célt szolgál. Annak megfelelően kell őket használni, hogy mennyire szeretnénk megszakítani a felhasználó munkafolyamatát.

Egy lépésből álló műveletek

A dialogokat csak egyszerű, egy lépésből álló műveleteknél használjuk. Ha egy folyamat több lépésből áll, inkább új oldalon nyissuk meg.

Rövid tartalmak

A hosszú, komplex tartalmakat érdemes dialog helyett új oldalra rakni.

Egyszerre csak egy dialog

Egyszerre csak egy dialog lehet nyitva, ne rakjuk őket egymásra.

Figyelmeztetések

Dialogokkal szándékosan megakaszthatjuk a felhasználót azon a ponton, ahol még következmények nélkül visszaléphet egy akciótól. (Például a képernyő bezárása előtt felhívhatjuk a felhasználó figyelmét arra, hogy mentés nélkül az eddig megadott adatai, beállításai elvesznek.)

A dialogok két lehetőséget biztosítanak: a felhasználó folytathatja a műveletet vagy visszatérhet az előző képernyőre.

Visszaigazolások

Dialogokkal a műveletek sikerességéről vagy sikertelenségéről is tájékoztathatjuk a felhasználókat. Gyakran csak az a céljuk, hogy a felhasználók tudomásul vegyék őket.

Beállítások és egyszerű műveletek

A dialogokat egyszerűbb beállítások elvégzésére, dátumok vagy egyéb adatok megadására is használhatjuk.

Akciós dialogok

Dialogokkal műveleteket vagy választási lehetőségeket is megjeleníthetünk. A felhasználó választása azonnal beállításra kerül.

Tetszőleges tartalom

A dialog rugalmasan használható komponens. Alapértelmezetten szövegeket tartalmaz, de bármilyen más komponenssel is személyre szabható.

Akadálymentesség Kontrasztarányok

A komponens a design system kontrasztcélokkal generált szemantikus színeit használja, ezért megfelel az akadálymentesítési követelményeknek. A tokenizálás miatt ez színsémától és sötét vagy világos módtól függetlenül igaz.

A kontraszt minimumokat a design system legsötétetebb – sötét módban a legvilágosabb – hátterén generáljuk, emiatt ez az arány minden más használható háttéren ennél csak jobb lehet.

Ha a komponenst nem tokenizált háttérszínen használjuk, manuálisan ellenőrizni kell a kontrasztot!

Színhasználat

A komponens állapotai és kiegészítő elemei nem kizárólag színnel közlik az információt. Így a színtévesztő vagy színvak, illetve a monokróm kijelzőt használó felhasználók is megkapják a szükséges információkat.

Billentyűzettel való használat

A dialog megnyitása után a fókusz a Close buttonra kerül. (Ha nincs bekapcsolva a Close button, a dialog címére kerül a fókusz.) Ha van Close button, a dialog Esc billentyűvel is bezárható.

A dialog modal módban magába zárja a fókuszt. Amíg nyitva van, csak a dialog interaktív elemei fókuszálhatóak. Az utolsó fókuszálható elem utána a fókusz visszakerül az első elemre.

Bezárás után a fókusz arra az elemre kerül vissza, amely megnyitotta a dialogot. Ha ez az elem nem áll rendelkezésre, manuálisan kell a megfelelő elemre helyezni a fókuszt.

Implementáció

Megnyitáskor a fókusz az első interaktív elemre kerül. (Kivéve, ha az autoFocuse értéke false.) A dialog aria-modal=“true” értékkel rendelkezik.

A Tab billentyű a fókuszálható elemek (űrlapelemek, gombok, stb.) között mozog. A felhasználó Tabbal nem mozoghat a dialogon kívül lévő elemekhez.

Az Esc billentyű és a dialogon kívüli kattintás bezárja a dialogot. A háttér nem görgethető, amíg a dialog nyitva van, és az overlay be van kapcsolva (position: fixed).

Bezáráskor a fókusznak vissza kell térnie a dialogot triggerelő elemre.

High contrast mód

A komponens befoglalója 1px-es átlátszó keretet tartalmaz, amellyel high contrast és egyéb forced color módokban elkülönül a felület többi elemétől.