fix(warenkorb-neu, kasse-neu): Scroll nicht wiederherstellen, wenn der Korb leer wurde (Knopf lag unter dem fixierten Kopf); sticky Kaesten unter den 152px-Kopf (top 168px)

This commit is contained in:
Thomas Bartelt
2026-09-27 10:02:47 +02:00
parent 4ef81ceec3
commit d0b79a2820
2 changed files with 14 additions and 5 deletions
@@ -423,8 +423,9 @@
.ck-grid { display: flex; gap: 20px; align-items: flex-start; }
.ck-main { flex: 1 1 auto; min-width: 0; }
/* top = Hoehe des klebenden Theme-Kopfes (.firststicky, 89px) + Luft, sonst schiebt sich der Kasten unters Logo (Tom, 18.09.) */
.ck-side { flex: 0 0 280px; position: sticky; top: 105px; }
/* top = Hoehe des fixierten Theme-Kopfes (#header_sticky.fixed, 152px) + Luft. Der Kopf ist unten
ausgeblendet, faengt dort aber Klicks ab -- darunter darf nichts Klickbares liegen (Tom, 18./27.09.) */
.ck-side { flex: 0 0 280px; position: sticky; top: 168px; }
.ck-sec { border: 1px solid #e3e3e3; border-radius: 8px; padding: 16px 18px; margin-bottom: 14px; background: #fff; }
.ck-h { display: flex; align-items: center; gap: 10px; font-size: 17px; font-weight: 700; margin: 0 0 12px; }
@@ -130,8 +130,9 @@
.wk { container-type: inline-size; }
.wk-grid { display: flex; gap: 20px; align-items: flex-start; }
.wk-list { flex: 1 1 auto; min-width: 0; }
/* top = Hoehe des klebenden Theme-Kopfes (.firststicky, 89px) + Luft, sonst schiebt sich der Kasten unters Logo (Tom, 18.09.) */
.wk-side { flex: 0 0 260px; position: sticky; top: 105px; }
/* top = Hoehe des fixierten Theme-Kopfes (#header_sticky.fixed, 152px) + Luft. Der Kopf ist unten
ausgeblendet, faengt dort aber Klicks ab -- darunter darf nichts Klickbares liegen (Tom, 18./27.09.) */
.wk-side { flex: 0 0 260px; position: sticky; top: 168px; }
.wk-box { background: #fafafa; border: 1px solid #e3e3e3; border-radius: 8px; padding: 16px; }
/* Gewaehrleistungs-Label ueber dem Kasten: volle Breite der Spalte, Hoehe folgt dem Seitenverhaeltnis
(Tom, 18.09.), Klick oeffnet das Label gross in neuem Tab */
@@ -245,7 +246,14 @@ $(document).ready(function() {
}
try {
var y = sessionStorage.getItem('wk_scroll');
if (y !== null) { sessionStorage.removeItem('wk_scroll'); window.scrollTo(0, parseInt(y) || 0); }
if (y !== null) {
sessionStorage.removeItem('wk_scroll');
// Nur wiederherstellen, solange der Korb noch Positionen hat. Wird die letzte entfernt, ist die
// Seite kurz: die alte Scrollposition klemmt dann am Seitenende und schiebt den Knopf
// "Weiter einkaufen" unter den fixierten Theme-Kopf, dessen unterer Rand durchsichtig ist,
// aber Klicks schluckt (Tom, 27.09.).
if ($('#cart_form').length) { window.scrollTo(0, parseInt(y) || 0); } else { window.scrollTo(0, 0); }
}
} catch (e) {}
// Getippte Menge: beim Verlassen des Feldes speichern -- aber erst nach einer kurzen Wartezeit.
// Sonst gewinnt das Auto-Speichern gegen den Klick, der das Feld verlassen hat ("Weiter einkaufen",