Files
short-drama-agent-front/design-qa.md
T
GouJ b4e1e6873c fix: 优化移动端全屏侧栏
移动端侧栏改为全屏固定导航,关闭后释放全部正文宽度,并统一使用菜单图标入口。
2026-09-08 18:14:15 +08:00

62 lines
3.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Design QA
- Source visual truth: `/workspace/scratch/6e52996114b8/upload/f7dbeb9e-a47c-4e09-9b5c-c5f885b0d708.png`
- Source pixel dimensions: `543 × 978`.
- Browser-rendered open-state comparison: `/workspace/scratch/mobile-sidebar-open-comparison-20260908.jpg`
- Browser-rendered closed-state comparison: `/workspace/scratch/mobile-sidebar-closed-comparison-20260908.jpg`
- Comparison screenshot dimensions: `1363 × 936`.
- Implementation CSS viewport: `543 × 936`, device scale factor `1`.
- Density normalization: source and implementation are both displayed at `543px` CSS width; the source's bottom `42px` is outside the comparison viewport and contains no sidebar structure needed for this review.
- State: dark-theme project list, with the mobile navigation captured both open and closed.
## Full-view comparison evidence
The source shows a permanently visible `48px` navigation rail that reduces the project-content width. The revised closed state removes that rail entirely: browser geometry reports the main region at `543px`, equal to the `543px` iframe viewport. The top-left control is now a menu icon and the project list uses the full available width.
The revised open state shows the same navigation as a `543 × 936` fixed full-screen layer. Brand, navigation items and the bottom backend entry remain vertically separated, while an explicit close icon is available in the navigation header.
## Focused region comparison evidence
A separate crop was not needed because both states are rendered at 1:1 CSS width in the full-view comparison and the header controls, navigation item, content boundary and footer action remain readable.
## Required fidelity surfaces
- Fonts and typography: existing font family, sizes, weights and truncation behavior are preserved. The drawer uses the same brand and menu typography as the desktop sidebar.
- Spacing and layout rhythm: the closed state removes the previous `48px` content offset. The open state uses the full viewport and preserves the existing header, menu and footer spacing.
- Colors and visual tokens: the drawer continues to use `--app-subtle`, existing selected-menu colors and the current dark-theme tokens.
- Image quality and asset fidelity: no raster assets were added or altered. Menu and close actions use the project's existing Lucide icon package.
- Copy and content: brand, “我的剧本” and “后端连接” labels are unchanged.
## Findings
- No actionable P0/P1/P2 visual or responsive issues remain.
- The disconnected local backend produces the expected in-page `502` status in the closed-state project list; it does not affect the navigation layout or interaction.
## Primary interactions tested
- Opened the full-screen navigation from the new menu button.
- Closed the navigation from its internal close button.
- Confirmed the hidden navigation is removed from the accessibility tree with `aria-hidden` and `inert`.
- Confirmed the closed-state main content width equals the mobile viewport width.
- Confirmed desktop behavior remains covered by the existing layout component tests.
## Console errors checked
No application-origin console errors were reported. The cloud browser logged only its own extension metadata messages; these are outside the application.
## Comparison history
- Iteration 1: replaced the persistent mobile rail with a fixed full-screen navigation and added the menu/close icon pair.
- Iteration 2: verified the open state at `543 × 936`, then closed it through the internal action and verified the content region expanded to the full `543px` viewport width.
## Implementation checklist
- [x] Hide the mobile navigation without reserving horizontal space.
- [x] Open navigation as a full-screen fixed layer.
- [x] Replace the top toggle glyph with a menu icon.
- [x] Provide an internal close control while the top bar is covered.
- [x] Preserve automatic close on mobile route changes, settings open and Escape.
- [x] Preserve desktop collapse/expand behavior.
final result: passed