fix(fe): enforce single-screen viewport principle for ApprovalQueue
PRINCIPLE: First load must fit within single viewport (no scroll required, excluding dashboard summary section). CHANGES: 1. ReviewWorkbenchLayout.vue - Changed: height: calc(100vh - 220px) → height: 100% - Reason: calc() was hardcoded to fixed pixels, not respecting parent flex layout - Added: min-height: 0 (critical for flex overflow behavior) 2. ApprovalQueue.vue (.content) - Added: height: 100% + min-height: 0 3. ApprovalQueue.vue (.detail-panel) - Removed: max-height: 700px (was hard limit, causing overflow) - Added: height: 100% + min-height: 0 RESULT: Page now fits single viewport without scroll. Individual panels (list, detail) maintain internal scroll as needed. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -6,7 +6,7 @@
|
||||
</div>
|
||||
</template>
|
||||
<style scoped>
|
||||
.ks-review-workbench { display: grid; grid-template-columns: minmax(18rem, 28rem) minmax(24rem, 1fr) minmax(18rem, 24rem); gap: var(--ks-space-3); align-items: start; }
|
||||
.ks-review-workbench > * { height: calc(100vh - 220px); max-height: calc(100vh - 220px); padding: var(--ks-space-3); overflow-y: auto; }
|
||||
.ks-review-workbench { display: grid; grid-template-columns: minmax(18rem, 28rem) minmax(24rem, 1fr) minmax(18rem, 24rem); gap: var(--ks-space-3); align-items: start; height: 100%; min-height: 0; }
|
||||
.ks-review-workbench > * { height: 100%; min-height: 0; padding: var(--ks-space-3); overflow-y: auto; }
|
||||
@media (max-width: 1200px) { .ks-review-workbench { grid-template-columns: 1fr; } }
|
||||
</style>
|
||||
|
||||
Reference in New Issue
Block a user