Impressum als Klick-Overlay statt inline im Footer #4
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
Der aktuelle
shared/impressum.jsrendert das Impressum direkt in den Footer (oder Body) der Seite — beidata-variant="full"(z.B. ichbinotto.de, lexsiebels.de, mai-otto.de, smartin3.de, martinsiebels.de) bedeutet das: vollständiger § 5 TMG-Block mit Adresse, immer sichtbar. Sieht auf gestalteten Onepagern wie ichbinotto.de unschön aus — bricht den Look, lenkt vom Inhalt ab.m: "das zentrale Impressum (zB für ichbinotto.de) sieht nicht gut aus - können wir das verbessern? Vielleicht auch nur auf Knopfdruck, nicht direkt anzeigen?"
Lösung
shared/impressum.jsso umbauen, dass es immer nur einen kleinen Trigger (Link/Button "Impressum") in den Footer rendert. Klick darauf öffnet ein Overlay/Modal mit dem vollen Inhalt. ESC und Klick-außerhalb schließen es wieder.Verhalten
footer, alternativbody). Text: "Impressum". Stil erbt Farben vom Container, opacity ~0.6.full-Block (oder demminimal-Einzeiler — dann ist der Klick allerdings overkill, siehe unten)Variant-Logik
data-variant="full": Trigger-Link → Overlay mit dem vollen Block. Das ist der Hauptfall.data-variant="minimal": Hier reicht ein Einzeiler ("Ein Projekt von msbls.de"). Optionen:API / Backward-Compat
#impressum→footer .container→footer→body) für den Trigger weiterhin gültig.Scope
shared/impressum.jsumbauen../build.shtesten, ein Beispiel-Site (ichbinotto.de) im Browser prüfen — Trigger sichtbar, Overlay öffnet, ESC/Klick-außen schließt, mobile/desktop OK.full(z.B. ichbinotto.de) und einer mitminimal(z.B. heygoldi.de) — beide weiter wie erwartet.Nicht im Scope
Priorität
p2 — Kosmetik / UX, kein blocker.
Files
shared/impressum.js(Hauptarbeit)Done —
shared/impressum.jsumgebaut.Verhalten:
data-variant="full": kleiner "Impressum"-Trigger im Footer (opacity 0.6, erbt Farben), Klick öffnet zentriertes Overlay mit semi-transparentem Backdrop und schmaler Karte. Inhalt: voller § 5 TMG-Block. Schließen via ×-Button, ESC oder Backdrop-Klick. Kurzes Fade-in (transition opacity + transform).data-variant="minimal": unverändert inline (Einzeiler).role="dialog",aria-modal="true", Fokus springt auf Close-Button beim Öffnen, zurück zum Trigger beim Schließen. Kein Fokus-Trap (wie spezifiziert).QA:
node -c shared/impressum.js→ Syntax OK./build.sh→ 59 sites built,build/shared/impressum.jsenthält neuen Codepython3 -m http.servergetestet —ichbinotto.de/index.htmlundheygoldi.de/index.htmlwerden korrekt ausgeliefert,impressum.jslädtBranch:
mai/hermes/issue-4-impressum-als— gepusht, wartet auf Merge nach main durch head.Commit: https://mgit.msbls.de/m/onepager/commit/098a7ad
Sites mit
data-variant="full"(greift Overlay-Verhalten):Update — m's Feedback eingearbeitet:
Fixes (Commit
59833b5):<a>-Link mit exakt der gleichen CSS-Hülle wie die inline-minimal-Variante (text-align:center; font-size:0.75rem; opacity:0.6; padding:12px 0; line-height:1.7). Kein Footer-Layout-Shift mehr — Höhe/Breite des Footers sind identisch zu vorher (Button-Default-Padding war der Übeltäter).--bg-card,--text,--accent,--border,--radius,--font-primaryvom Host (shared/css/variables.css). Sites ohne Variablen bekommen neutrale Dark-Fallbacks. Auf ichbinotto.de & Co. matcht die Karte jetzt das Site-Theme.max-width: min(420px, calc(100vw - 32px))+box-sizing:border-box+overflow-wrap:break-word— Karte sprengt nie den Viewport, auch nicht auf 320px-Mobile oder bei langen E-Mail-Adressen.overflow-Werts beim Schließen.Branch
mai/hermes/issue-4-impressum-alsist gepusht. Commit: https://mgit.msbls.de/m/onepager/commit/59833b5