fix(list): keep the sticky bars above the row checkboxes

The pagination bar and the table header sat at or below the checkbox z-index, and at equal values the later DOM element wins - the cards come after both, so checkboxes of rows scrolling underneath were painted over them. Layers are now explicit: check 2, table header 3, pagination 4, content header 12.
This commit is contained in:
r-zakarya
2026-08-01 20:05:51 +01:00
parent c9068a6732
commit fd03c1da25
+8 -2
View File
@@ -2781,7 +2781,9 @@ body[data-editor-position="center"]:has(#settingsPanel.is-open)::before {
background: var(--bg-elev); background: var(--bg-elev);
user-select: none; user-select: none;
position: sticky; top: calc(var(--hdr-h, 0px) + var(--pag-h, 0px)); position: sticky; top: calc(var(--hdr-h, 0px) + var(--pag-h, 0px));
z-index: 1; /* Above .entry-check (2), below .pagination (4) — the row checkboxes were
painted over this header for the same reason as in card view. */
z-index: 3;
} }
.entry-table th.is-sortable { cursor: pointer; } .entry-table th.is-sortable { cursor: pointer; }
.entry-table th.is-sortable:hover { color: var(--text-dim); } .entry-table th.is-sortable:hover { color: var(--text-dim); }
@@ -3073,7 +3075,11 @@ input[type="password"]::-ms-clear {
.pagination { .pagination {
position: sticky; position: sticky;
top: var(--hdr-h, 0px); top: var(--hdr-h, 0px);
z-index: 2; /* Sticky layers, bottom to top: .entry-check 2 · table header 3 ·
pagination 4 · .content-header 12. At EQUAL z-index the later element in
the DOM wins, and the cards come after this bar — which is why the
checkboxes of the rows scrolling underneath used to cover it. */
z-index: 4;
background: var(--bg); background: var(--bg);
display: flex; align-items: center; gap: 6px; display: flex; align-items: center; gap: 6px;
padding: 14px 12px 10px; padding: 14px 12px 10px;