fix(w05): 落账席那枚印章不再压住旁边的结论 —— 徽章按圈的内径收

用户:「评审放行与落账确认,中间这个有条件推荐这个 svg 挡住旁边的字了」。

在浏览器里量的账:徽章那一坨 .seal-core 139px 宽,而印章圈定死 112px —— 溢出 26px;
右边那句一句话结论从 603px 起,正好被压住。病根是徽章按自己的字宽撑开、又带着
white-space:nowrap 缩不了,而圈是定死的圆(place-items:center 只让它对称地溢出去)。

两条一起治:核心不许超过圈的内径(max-width:calc(100% - 16px));圈里那一枚字号收小、
去掉字距、允许折行(以后有更长的等级名就两行,圆里两行照样是圆)。
改完再量:核心 94px、圈内还余 9px、「有条件推荐」一行放得下、结论那段完全露出来。

验收法记一笔:视觉的账在**真 DOM** 上量 —— 离线渲一份真件挂本地服务,
浏览器里 getBoundingClientRect 前后各取一次,不在脑子里推。包内 +1 测(变异验证过)。
2.24.0 已装库。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LKMZDwMbyKzjw6Hembwvet
This commit is contained in:
xcs
2026-09-01 03:06:42 +08:00
co-authored by Claude Fable 5
parent 4174c5f194
commit 3b9c559a47
4 changed files with 33 additions and 1 deletions
@@ -489,6 +489,20 @@ describe('报告模版:编辑面与只读面各就各位', () => {
expect(viewHtml('landing-confirm')).not.toContain('data-edit-add=');
});
/*
* **印章里的徽章不许溢出圈外**(2026-09-01 用户:「有条件推荐这个 svg 挡住旁边的字了」)。
* 浏览器里量的账:徽章那一坨 139px 宽,而印章圈定死 112px —— 溢出 26px,
* 右边那句一句话结论从 603px 起,正好被压住;病根是徽章按自己的字宽撑开、
* 又带着 white-space:nowrap 缩不了。两条一起治,改完再量:核心 94px、圈内还余 9px、
* 「有条件推荐」一行放得下(以后有更长的等级名就折行,圆里两行照样是圆)。
*/
it('落账席的印章:徽章按圈的内径收,不许再溢出去压住那句结论', () => {
const html = viewHtml('landing-confirm');
expect(html).toContain('.seal-core{max-width:calc(100% - 16px)');
/* 缩不了才会溢出 —— 圈里这一枚必须允许折行 */
expect(html).toMatch(/\.seal \.rec\.rec-lg\{[^}]*white-space:normal/);
});
it('每个可编辑格子的 data-col 都在对应台账对象的声明里(input-supplement 一屏四张表,四张台账对象的声明并起来看;difference-review 一张表)', () => {
const cases: Array<[string, Array<[string, string]>]> = [
['input-supplement', [['parts', 'profile'], ['parts', 'parameter']]],