Theme: ← Übersicht Tokens

Bild-Zoom (Lightbox)

Klickbares Bild öffnet ein Vollbild-Overlay (Backdrop, Escape/Klick schließt, Scroll-Lock) — ohne JS bleibt es ein normales Bild

Components v1.0.0 Inhalt WebsiteAppDesktop component.image-zoom

Nutzt: ui.image ui.icon

Beispiele

Bild mit Zoom (klicken → Vollbild)
Getrennte Vorschau/Vollbild-Datei
Unsichere Adresse → Platzhalter

Eigenschaften

PropTypDefaultBuilder-Label
src *string—Bild-Adresse
alt *string—Alternativtext
captionstring""Bildunterschrift (auch im Overlay)
ratiostring: auto | 16:9 | 4:3 | 1:1"auto"Seitenverhältnis der Vorschau
zoomSrcstring""Großformat-Adresse (leer = src)

* Pflicht-Prop

Events & Slots

Events: ⚡ open⚡ close — im Surface per on: {<event>: {action, params}} verdrahtbar.

Stellschrauben (Komponenten-Tokens)

Ebene 3 — aus dem CSS generiert (Registry). Umverdrahtbar per Hüllen-Komposition, ohne Markup-Eingriff; künftige Regler-Quelle des Component Builders.

TokenDefault
--image-zoom-max-width92vw
--image-zoom-max-height85vh
--image-zoom-backdropvar(--color-surface-backdrop)

Genutzte Design-Tokens

color.action.secondarycolor.surface.backdropcolor.surface.overlaycolor.surface.sunkencolor.text.defaultcolor.text.inversecolor.text.mutedelevation.overlayelevation.raisedfont.family.defaultlayer.modalradius.controlradius.fullradius.surfacesize.10size.2size.24size.32size.4size.6size.8text.sm

LLM-Notizen

component.image-zoom

Klickbares Bild mit Vollbild-Overlay (Lightbox). Vorschau ist ui.image; das Overlay schließt über ✕, Backdrop, Bild-Klick und Escape, mit Scroll-Lock. Ohne JS bleibt es ein normales Bild.

Wann nutzen

  • Galerie-/Detailbilder, Screenshots in Doku, Produktfotos ohne eigene Galerie. Für mehrere Bilder mit Wechsel component.product-gallery.

Wichtige Props

  • src/alt (Pflicht), caption (erscheint auch im Overlay), ratio der Vorschau.
  • zoomSrc: getrennte Großformat-Datei (leer = src).
  • Stellschrauben: --image-zoom-max-width/-height, --image-zoom-backdrop.

Beispiel-Node


{
  "definition": "component.image-zoom",
  "props": { "src": "/storage/foto.jpg", "alt": "Messehalle", "caption": "Stand 4b", "ratio": "16:9" }
}