tuix-modal
Ein zentrierter Dialog über abgedunkelter Seite, mit Slots für Titel, Body und Aktionen.
Das Modal legt sich über den Viewport und zentriert eine Karte aus
tuix-paper. Es bleibt versteckt, bis visible gesetzt
ist.
Geschlossen wird es über das Icon in der Kopfzeile oder über einen der beiden Aktions-Buttons. Diese sind in der Demo verdrahtet, denn von selbst schliesst sich das Modal nur über sein eigenes Icon.
Scrollbarer Body
Mit scrollable scrollt ein langer Body innerhalb der Karte, statt sie über den
Viewport hinaus wachsen zu lassen.
API
Properties
| Property | Attribut | Typ | Standard | Beschreibung |
|---|---|---|---|---|
visible | visible | boolean | false | Zeigt das Modal. Gespiegelt, CSS kann also [visible] ansprechen |
scrollable | scrollable | boolean | false | Lässt den Body scrollen, statt die Karte wachsen zu lassen |
dark | dark | boolean | false | Dunkle Palette |
Events
| Event | Detail | Wann |
|---|---|---|
on-close | Keine | Das Schliessen-Icon wird geklickt |
Die Komponente setzt visible = false selbst, bevor sie feuert; ein
kontrollierendes Elternteil muss das in seinem eigenen Zustand nachziehen, sonst
läuft das nächste Öffnen ins Leere.
Slots
| Slot | Inhalt |
|---|---|
title | Die Kopfzeile, neben dem Schliessen-Icon |
body | Der Inhalt |
actions | Die Fusszeile. Nur gepolstert: sie ordnet den Inhalt nicht an |
Hinweise
- Das Host-Element ist
position: fixed, setzt aber keinenz-index: es stapelt sich nach Dokumentreihenfolge, ein weiter unten stehendes positioniertes Element kann sich also darüberlegen. Die Anwendung vergibt einen; die Demo oben nutzt genau deswegenz-index: 40, und tuix-toast bringt99mit. darkerreicht die Karte und das Schliess-Icon, die das Modal selbst rendert, aber nicht Titel, Body und Actions, die hineingeslottet werden: die bringen ihr eigenesdarkmit.- Der
actions-Slot bringt nur Innenabstand mit und sonst nichts; zwei direkt hineingeslottete Buttons stehen also so, wie der Fluss der Seite sie setzt. Ein eigenesdivdarum herum bekommt das Zeilen-Layout, so wie im Beispiel oben. - Der abgedunkelte Hintergrund gehört zum Host und schliesst das Modal nicht; die Anwendung ergänzt das, wenn das Design es verlangt.
- Nichts fängt den Fokus ein und nichts blockiert das Scrollen der Seite; wo das zählt, kümmert sich die Anwendung darum, solange das Modal offen ist.
- Die Karte ist auf 96% des Viewports begrenzt und wird unter 640px vollbreit.