Fix iOS bottom sheet — use visibility+transform instead of display:none
Some checks are pending
NordaBiz Tests / Unit & Integration Tests (push) Waiting to run
NordaBiz Tests / E2E Tests (Playwright) (push) Blocked by required conditions
NordaBiz Tests / Smoke Tests (Production) (push) Blocked by required conditions
NordaBiz Tests / Send Failure Notification (push) Blocked by required conditions

iOS Safari doesn't recalculate height properly with display:none→block.
Switch to display:block!important + visibility:hidden + translateY(100%)
+ pointer-events:none for hidden state. This ensures iOS renders the
full sheet height before showing it. Also remove overflow:hidden from
base .user-menu that was clipping content.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Maciej Pienczyn 2026-03-25 15:35:39 +01:00
parent abd2a8a95c
commit 362f092d5b

View File

@ -939,7 +939,6 @@
box-shadow: var(--shadow-lg);
min-width: 220px;
z-index: 200;
overflow: hidden;
}
.user-menu.show {
@ -958,23 +957,32 @@
.user-menu-overlay.show { display: block; }
.user-menu {
display: block !important;
position: fixed;
top: auto;
bottom: 0;
left: 0;
right: 0;
width: 100%;
min-width: 100%;
max-height: 80vh;
overflow-y: auto;
-webkit-overflow-scrolling: touch;
border-radius: 16px 16px 0 0;
border: none;
box-shadow: 0 -4px 20px rgba(0,0,0,0.15);
z-index: 9999;
padding-bottom: env(safe-area-inset-bottom, 16px);
visibility: hidden;
transform: translateY(100%);
transition: transform 0.25s ease-out;
transition: transform 0.25s ease-out, visibility 0s 0.25s;
pointer-events: none;
}
.user-menu.show {
display: block;
visibility: visible;
transform: translateY(0);
transition: transform 0.25s ease-out, visibility 0s 0s;
pointer-events: auto;
}
.user-menu-handle {
display: block;