文章目录

项目排期表横向滚到预算一列,左边的项目名已经消失;用户读到“12万元”,却不知道它属于“松柏官网改版”还是“云杉移动端”。把很多列同时固定似乎能解决问题,但在小一点的窗口里,固定区又占满了屏幕,真正的数据只剩一条窄缝。

固定列要保留的是行身份,不是把所有重要字段都留在原地。设计前先计算工作区宽度,再分配身份列、可滚动数据与必要操作区。用界面布局与组件协作把相同项目放进多种宽度的画板,能更早发现“在大屏上合理、缩窄后不可用”的安排。

宽项目表格横向滚动时左侧身份列保持可见,中间数据列继续移动

先算能看见多少列,再决定固定多少

假设桌面浏览器内容宽1440像素,左侧导航240像素,主内容左右边距各24像素,表格可用宽度就是1440-240-48=1152像素。这只是当前界面的设计算例,不是通用后台尺寸。项目名称、负责人、阶段、截止日期、预算、最近更新等列是否放得下,应以1152为预算,而不是继续按整张1440画板排版。

如果项目身份区宽240,末尾再固定120宽的操作区,可滚动窗口还剩792。工作区缩到720时,同样的固定区就占去一半,数据窗口只剩360。此时需要重新安排,而不只是把中间每列都挤窄:可以将操作收进项目详情,减少固定内容,或者为当前任务提供更精简的列集合。

项目身份通常由名称或短编号承担,负责人和阶段虽然重要,却未必都需要固定。判断方法很直接:用户读任意一个远端数据单元格时,最低限度需要哪些信息才能知道它属于谁?只固定这组信息,把“经常看”与“识别所必需”区分开。

给不同类型的列不同的宽度策略

名称列可以增长或适度换行,状态列应能容纳完整标签,日期列要留出选定格式,金额列不能把单位挤没。所有列平均分配看起来整齐,却可能让“阶段”浪费空间,让项目名和预算同时难读。先用真实长名称、大金额、空值和最长状态检查,再定默认宽度。

字段最先保护的信息空间不够时的处理
项目当前行属于哪个项目保留识别片段,完整名称可查看
负责人可区分的姓名或团队不要只剩无法辨认的头像
阶段完整状态名称调整标签间距,不把文案裁得只剩首字
截止日期明确日期及必要时间范围采用一致的短格式,详情补足
预算数值、币种与单位保持可读,不用省略号截去金额
最近更新更新时间的语义可降为次要列或详情信息

允许用户调整列宽时,要有合理最小宽度,避免把列拖到只剩边框;也要允许恢复默认值。Cloudscape 的表格 API 说明将默认宽度、最小宽度与用户调整后的持久化分别处理。设计交付同样要区分这三件事,不要只给一个拖拽手柄,就假设所有宽度规则自动成立。

列宽调整不应与排序抢同一个动作。表头文字或排序按钮负责排序,边缘手柄负责调整,两者在视觉与操作区域上需要可区分。触屏上过窄的拖拽区难以使用时,可改用列设置中的选项;键盘用户也应有可操作的替代,不应只有精确拖动这一条路径。

固定区与滚动区之间要有可解释的边界

横向滚动后,固定项目列应保持不透明的背景,避免后面的金额和文字从下面透出来。分隔线或轻微阴影可以表示层级,但不能浓到像一条新的数据列。滚回起点时,还要核对边界提示是否与真实位置一致,不让用户误以为左边仍有内容可看。

表头和数据区使用同一列宽,固定列各行高度也必须与滚动区一一对应。长项目名换成两行后,如果固定区单独长高,而右侧数据仍按单行高度排列,用户会读错整行。这比文字省略更严重,因为界面仍然看起来整齐,却改变了数据的归属。

从技术语义看,视觉固定不能替代行列标题关系。W3C 的表格指南要求正确表达标题与数据关联。实现如果为了冻结效果复制了视觉片段,还要避免辅助技术把同一项目读两遍;这项问题需要在实际页面验证,单张设计图看不出。

窄屏需要另一套取舍,不是更多固定列

如果任务确实要求横向比较多个字段,表格内部的横向滚动可以保留。让页面标题、筛选和说明正常适应窄屏,把横向范围限制在表格容器内。W3C 的重排说明为必要二维布局提供相应条件,但这不是整张页面都可以横向溢出的理由。

在更小的工作区里,可以只固定较短的项目编号,在同一行提供名称详情;如果短编号没有业务识别价值,则不能仅为节省空间替换名称。另一种方式是默认保留项目、阶段和截止日期,预算与更新记录放入展开详情,让窄屏用户完成当前最重要的判断。

卡片视图适合逐项处理,却不一定适合跨行比较预算,因此不要一看到手机就把表格自动改成卡片。先确定任务是“比较三个项目的预算”,还是“查看这个项目详情”,再决定保留表格或切换呈现。两种视图并存时,选择范围和当前筛选也要有清楚的延续关系。

横向滚动的入口要能被发现:部分露出的下一列、可见滚动条或简短提示都可以结合实际界面使用。不要只依赖桌面鼠标滚轮,也不要让固定区在触摸拖动时拦截所有手势。验收时从表格左端移到最右端,再检查是否能回到原项目与原操作。

列设置可以记住,但不能让用户永远困在旧布局

经常使用的后台可以保留列宽、可见列与顺序,但要明确保存到哪里:当前浏览器、当前用户,还是团队共享视图。不要让一个人临时隐藏列,意外改变所有同事的默认工作区。Cloudscape 的表格视图模式将列显示、顺序和固定状态纳入偏好设置,这些属性适合一起设计恢复规则。

用户把列拖得很宽后换到小屏,旧偏好可能已经不合适。可以保留可读的边界限制并提供“恢复默认”,必要时提示当前列布局已按窗口调整。不要直接删除所有偏好,也不要机械复原一个超出当前空间的固定区,让用户找不到任何可用的数据。

产品新增或移除字段时,列设置还要处理变化:新字段按约定位置加入,失效字段不留下空白幽灵列,必需身份列不会因为旧偏好而消失。恢复默认重置的是布局偏好,不应顺带清空用户正在使用的筛选条件,更不应该执行任何数据操作。

用同一组项目检查滚动前后是否认得出行

在 Pixso 中建立“松柏官网改版、云杉移动端、青禾数据看板”的项目表,分别准备起始位置、向右滚动和窄工作区状态。在每张画板上标记同一个项目,比较它与中间数据单元格是否始终处于同一行。

Pixso 画布中项目表格的起始、横向滚动和窄工作区三种列宽状态
固定项目身份列,给中间数据保留空间;窄工作区重新分配,而不是机械压缩。

然后故意拉宽项目列、缩窄负责人列,再打开列设置恢复默认。检查固定区有没有覆盖滚动内容,金额单位有没有消失,长名称换行后有没有错行。界面原型负责说明状态与取舍,真实的滚动、拖拽、键盘操作和偏好保存仍要在实现中按同一组项目验收。

评审结束时,应能清楚回答三个问题:为什么固定这一列,最窄工作区还有多少空间查看数据,用户把布局调乱后怎样恢复。把这三个答案落实,宽表格才能在横向滚动中保持可理解,而不是依靠用户记住每一行原来叫什么。