先给结论:不要为每个页面单独写一套验收标准,而应把组件拆成“结构、状态、环境”三个维度,用一组最小样例覆盖差异,再决定是修组件还是修页面。下面用一个假设情境说明构造方法。
假设某扁平化网页设计项目里有一个主按钮组件,出现在首页横幅、表单提交区和列表操作区。三处都引用了同一份样式,但视觉表现不同:横幅里按钮显得更宽,表单里按钮文字偏上,列表里按钮圆角似乎更大。此时有两种做法:一是逐页调整,二是先构造验收样例定位差异来源。逐页调整的代价是改动分散、回归困难;构造样例的代价是先花时间拆解维度,但后续判断更快。选择条件是:如果差异只出现在一两个页面且不影响交互,逐页修可以接受;如果差异跨多个页面、涉及交互状态,就必须先构造样例。
要构造验收样例,先区分差异来自哪里。可用的证据类型有三类:
这三类原因对应的验收样例不同。结构差异要固定容器条件;状态差异要枚举状态;环境差异要固定变量和字体。如果只看到“表现不同”就改样式,很可能把正确页面的表现也改坏。
以下步骤可以直接用于扁平化网页设计项目的组件验收。假设你负责一个按钮组件,需要判断差异是否属于组件本身。
这个动作的结果会直接影响下一步:如果差异来自容器,就改页面容器或给组件加隔离边界;如果差异来自组件内部,就修组件本身,而不是逐页打补丁。
在扁平化网页设计里,常见取舍是“统一改组件”还是“保留页面差异”。选择条件可以这样判断:
假设一个短例子:某列表页按钮比基准宽 8 像素。构造样例后发现,差异只在列表容器出现,原因是容器设置了额外内边距。此时改容器比改组件更安全,因为组件在其他页面表现正常。这个判断依赖样例提供的证据,而不是靠目测猜测。
样例本身不是截图集合,而是一份可复现的判断依据。建议每个样例记录:组件名称、容器类型、状态、根字号或字体条件、预期表现、实际表现。这样当同一组件再次出现差异时,可以快速判断是已知条件还是新问题。对于扁平化网页设计项目,组件越扁平、样式越依赖变量,越需要把环境条件写进样例,否则同一份代码在不同页面仍会表现不同。
最后,验收样例的目标不是消除所有差异,而是让每个差异都有明确归属:属于组件、属于页面,还是属于环境。归属清楚之后,改哪里、改完影响什么,就不再靠猜。