Responsive Design: Mobile-Darstellung der Webapp #6
Loading…
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
Auf dem Handy ist die Darstellung der App teilweise unbrauchbar.
Beobachtete Symptome
Vermutete Ursachen (zu verifizieren)
position: fixed/stickyElemente ohne Mobile-Breakpointmin-height/max-heightauf Containerviewport-Meta-Tag oder fehlende Media QueriesTODO
webapp/app/templates/auf Responsive-Tauglichkeit prüfenPriorität
Mittel — Desktop funktioniert, Mobile-UX ist aber für mobile Nutzer*innen ein Blocker.
Fix-Ansatz (lokal in
webapp/app/templates/index.html)Identifizierte Ursachen
.main-container { height: calc(100vh - 70px) }ging von 70px Header aus. Auf Mobile wrappt der Header (h1 + Subtitle + Bundesland-Select + Mode-Toggle) in mehrere Zeilen → Header wird 150–220px hoch → Container überläuft den Viewport unten..list-panelaufmax-height: 50vh, ohne dem Detail-Panel ein vernünftiges Verhalten zu geben. Beim Tap auf einen Antrag updatete der Inhalt unsichtbar weit unten — wirkte wie „hängengeblieben".100dvh→ iOS Safari Address-Bar machte das Layout zusätzlich kaputt.detail-panel { overflow-y: auto }) sind fummelig.Änderungen
min-height: 100vh(+100dvh-Fallback für iOS). Header behält natürliche Höhe, Main-Container füllt mitflex: 1den Rest — keine hartcodierte Header-Höhe mehr..main-container:height: calc(100vh - 70px)→flex: 1; min-height: 0.@media max-width: 900px) komplett überarbeitet:.list-panelohnemax-height, dafür.list-content { max-height: 50vh }→ die Liste scrollt intern, der Rest der Seite scrollt natürlich.detail-panel { overflow: visible; flex: none }→ kein nested scroll, das ganze Dokument scrollt@media max-width: 600pxfür Smartphones: Subtitle ausgeblendet, Matrix-Tabelle kompakter,matrix-grideinspaltig,score-bigkleiner, etc..btn-back-mobile), scrollt zurück zur Liste.showDetail()viamatchMedia('(max-width: 900px)')— Antrag wird beim Tap automatisch sichtbar.Noch offen
quellen.htmlnicht angefasst — ist Fluss-Layout, sollte ok sein