From a2d911f7e395f3f21afdc79b9f6e8241084e6c10 Mon Sep 17 00:00:00 2001 From: Marco Morath Date: Mon, 10 Aug 2026 09:54:26 +0200 Subject: [PATCH] =?UTF-8?q?Optimierung=20Feldbreite=20Gebinde=20und=20Zeil?= =?UTF-8?q?enabst=C3=A4nde=20Erfassungsmaske?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 5 +++++ web/html/app.css | 23 ++++++++++++----------- web/html/sw.js | 2 +- 3 files changed, 18 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index c94ed41..cf830ab 100644 --- a/README.md +++ b/README.md @@ -1314,6 +1314,11 @@ Warengruppe mit den zuletzt verwendeten Werten – **trägt den Artikel aber noc nicht ein.** Der Fokus springt ins Gebinde-Feld, damit noch Änderungen möglich sind. Erst „Hinzufügen" oder Enter übernimmt. +Der Zeilenabstand der Eingabemaske kommt aus einer einzigen Regel +(`.add-row > * + *`), nicht aus `margin-bottom` an jeder Zeile. Beim Umbau der +Namenszeile – sie steckt seit der Vorschlagsliste in einem `.name-wrap` – war +eine solche Einzelregel wirkungslos geworden, ohne dass es auffiel. + ### Markt direkt beim Eintragen Unter den Detailfeldern steht eine Marktauswahl. Ohne sie müsste jeder Eintrag diff --git a/web/html/app.css b/web/html/app.css index ea68fd4..5a05948 100644 --- a/web/html/app.css +++ b/web/html/app.css @@ -344,9 +344,6 @@ button.danger { /* --- Artikel hinzufügen --- */ .add-row { margin-top: .5rem; } -.add-row > input { margin-bottom: .5rem; } -.add-row .qty { flex: 0 0 5.5rem; } -.add-row .unit { flex: 0 0 6rem; } /* --- Markt- und Gruppenabschnitte --- */ .market { @@ -1039,21 +1036,27 @@ input[type="search"] { /* --- Eingabezeile: Name, Detailfelder, Schaltflächen untereinander --- */ -.add-row > input#add-name { margin-bottom: .5rem; } +/* Gleicher Abstand zwischen allen Zeilen der Eingabemaske. + Über den direkten Kindern statt über einzelne margin-bottom-Regeln: + Bei letzteren wurde beim Umbau der Namenszeile - sie steckt seit der + Vorschlagsliste in einem .name-wrap - eine Regel wirkungslos, ohne + dass es auffiel. */ +.add-row > * + * { margin-top: .5rem; } .add-fields { display: flex; flex-wrap: wrap; gap: .5rem; - margin-bottom: .5rem; } /* Menge schmal, Einheit schmal, Eigenschaft nimmt den Rest. Bei sehr schmalen Geräten bricht die Eigenschaft in die nächste Zeile. */ -.add-fields .count { flex: 0 1 4rem; min-width: 3.2rem; text-align: center; } -.add-fields .qty { flex: 0 1 5rem; min-width: 4rem; } -.add-fields .unit { flex: 0 1 5.5rem; min-width: 4rem; } -.add-fields .variant { flex: 1 1 8rem; min-width: 0; } +/* Breiten so bemessen, dass die Platzhaltertexte vollständig lesbar + bleiben - ein abgeschnittenes "Gebind" sagt nicht, was gemeint ist. */ +.add-fields .count { flex: 0 1 4.2rem; min-width: 3.4rem; text-align: center; } +.add-fields .qty { flex: 0 1 6.6rem; min-width: 6.2rem; } +.add-fields .unit { flex: 0 1 6rem; min-width: 5rem; } +.add-fields .variant { flex: 1 1 8rem; min-width: 6rem; } .add-actions { display: flex; @@ -1559,8 +1562,6 @@ body.modal-open .app-footer { display: none; } /* --- Marktauswahl in der Eingabezeile --- */ -.add-market { margin-bottom: .5rem; } - select.market-select { width: 100%; padding: .65rem .5rem; diff --git a/web/html/sw.js b/web/html/sw.js index 7148066..520cdca 100644 --- a/web/html/sw.js +++ b/web/html/sw.js @@ -5,7 +5,7 @@ // Bei jeder Änderung an den Dateien unten hochzählen. Der Wert entscheidet, // wann alte Zwischenspeicher verworfen werden. -const VERSION = "v28"; +const VERSION = "v29"; const SHELL_CACHE = `einkaufsapp-shell-${VERSION}`; const SHELL = [