J2.08.3multi-column reading path设计研究

多栏布局需明确阅读路径

别名: 多栏阅读路径 · 栏序 vs 行序 · column reading order

概念解释

两栏新闻看起来该先读完左栏再读右栏。源顺序若按行交错——左栏第一段、右栏第一段、左栏第二段——读屏会把两篇文章咬碎穿插着念。卡片网格、对比表的左右栏、杂志式 CSS columns,都有一条应当被走的路径:先栏后栏,或先行后行。这条路径必须写进结构,不能只写在视觉分栏上。

结构决定播报;视觉重排会把一份清单撕成两套。多栏是一种特别容易不声明路径的布局:画面自己「看起来有栏」,树却可能在按行走。

机制

明眼人用栏的几何当脚手架:竖缝一出现,就按栏读完再换栏。辅助技术没有这条几何,只会按节点先后走。作者若按视觉行来写源(每一行从左格到右格),听到的就是「文章 A 一句、文章 B 一句」。作者若按栏写源(左栏全部节点连续,然后右栏),听到的才是两篇完整的东西。

对比栏(「基础版 | 专业版」)更苛刻:人要的路径常常是「先读完一个方案再读另一个」,或「按特性一行一行比」。两种都合法,但必须选一条并让结构执行它。不选的时候,默认往往是 DOM 的行优先,和视觉栏优先对着干,用户无法在脑子里重建「这是两列方案还是一张特性表」。

怎么研究

同一套两栏内容做三种源:栏优先(左栏整块再右栏)、行优先(按视觉行左右交错)、乱序。请读屏用户听完后复述「有几篇文章 / 几个方案」以及各自要点。因变量:能否分离出独立文本、复述错误、是否报告穿插。卡片网格可同样操作:按卡片连续 vs 按行左右交替。

用无样式的源查看也很干净:把 CSS 分栏拿掉,还能否看出「这是两篇」。看不出来,路径就只存在于绘制里。

边界

真正的数据表格有行和列的语义,阅读器提供按单元格移动,不必也不该压成「先左栏后右栏」一条路。单列布局没有栏路径可声明。装饰性的多列(把一组无关徽章排成三列)只要每项独立可懂,路径弱。印刷杂志那套「跨栏标题再回左栏」在屏幕上极难用结构表达,往往应该放弃分栏,改成连续章节。

怎么落地

  • 每一种多栏模板先写下一句话:「人应该按栏读完再换,还是按行左右比。」然后让源顺序执行这句话:独立文章 / 独立方案按栏连续写;特性对比按行写成对。
  • 不要用纯视觉的 CSS columns 去切一篇连续文章,除非你能接受阅读器按源把栏穿插——通常不能。连续文章用连续的结构,栏只留给本来就是并列的块。
  • 验证:关掉样式听整页。独立的栏目应能被复述成独立的故事,对比栏应能被复述成「同一特性的两个值」。若复述变成一句 A 一句 B,源就是按行交错写的。改树,不要加「请从左往右读」的说明书。

延伸

  • 同组J2.08.1 播报顺序由结构顺序决定 · J2.08.2 视觉重排会造成顺序错乱
  • 相邻F2.09 瀑布流布局 · J2.09 语义结构 · J5.01 屏幕阅读器
  • 站内检索multi-column reading path · column order · row versus column source

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/J2.08.3