diff --git a/AGENT.md b/AGENT.md index 4e028f6..47c51af 100644 --- a/AGENT.md +++ b/AGENT.md @@ -849,6 +849,22 @@ factor_exposure - 同步接口(如 `POST /api/signals`)**没有**作业号与阶段时,如实说明「同步请求、无阶段、 不可取消」,**禁止**合成假作业号或假进度喂给反馈组件。 +## 27.3 宽表:两端固定 + 按需提示,绝不"右侧被切掉" + +用户原话:「experiments 页面右侧内容溢出了」。实测原因不是整页溢出,而是**卡片内的横向滚动**: +在 macOS 上覆盖式滚动条不滚动就不显示,于是看起来就是内容被切掉、也没有滚动条可拉。因此宽表: + +- 列数 ≥ 9 或列宽会随数据增长的表(实验列表 `.tbl--wide`、对比表 `.tbl--pin-first`、 + 月度收益表 `.tbl--monthly`)必须**固定首列**;操作列在右端时用 `.tbl--wide` 固定右端, + 保证任何窗口宽度下「看的是哪一行」和「能点哪里」都在视野内; +- 固定列必须有不透明底色(卡片是渐变,取近似纯色)并覆盖 `:hover` / `.row-active`, + 否则中间列会从下面透出来、整行高亮在两端断开; +- 列宽按**实测单行内容宽度**定(用 CDP 量 `scrollWidth` 与单元格内容宽度),不要凭感觉写, + 并且**不要在 JSX 里写行内 `width`**——它会盖掉 CSS(曾让「操作」列多占 88px,整表放不下); +- 「可横向滚动」提示只在实测 `scrollWidth > clientWidth` 时出现(`useTableScrollHint`), + 窗口够宽时不显示废话; +- 门禁:`python3 scripts/verify_ui_alignment.py`(160 项)必须 0 失败,含 375px 与 1500px 两档。 + --- # 28. AI Agent 约束