Tangled,聘请一位前端无障碍专家
摘要
作者批评 Tangled 新版 Svelte 前端 UI 使用 12px 字号且以像素为单位定义字体,导致严重的可访问性问题,呼吁 Tangled 聘请前端无障碍专家。
<p>对 <a href="https://lobste.rs/s/ukj8mm/federated_code_forge" rel="ugc">https://lobste.rs/s/ukj8mm/federated_code_forge</a> 的回应</p>
<p><a href="https://lobste.rs/s/ymqjuj/tangled_hire_front_end_accessibility">评论</a></p>
查看缓存全文
缓存时间:
2026/10/31 17:26
# Tangled,请雇一位前端无障碍专家
来源:https://dbushell.com/2026/11/01/tangled-accessibility/
非 AI,由人编写 | 2026年11月1日 星期日
不是我,这只是一个受苦用户的善意建议。
除了 [Codeberg](https://codeberg.org/) 之外,我认为 [Tangled](https://tangled.org/) 可以算是真正的 GitHub 替代品。我们迫切需要告别 GitHub。(https://dbushell.com/2026/04/29/github-is-sinking/)如今很难推荐任何技术产品。我曾经大力推荐 Proton,结果适得其反(https://dbushell.com/notes/2026-10-30T07:29Z/)。就我所见,Tangled 目前的言行似乎都是正确的。我对他们的[风险投资融资](https://tangled.org/blog/seed/)有所顾虑(参见 [Deno 的衰落](https://dbushell.com/notes/2026-10-10T10:30Z/)),但悲观没有意义。
Tangled 最近关于[联邦代码托管平台](https://tangled.org/blog/forge/)的博文引起了我的兴趣。我[自托管 Forgejo](https://dbushell.com/2025/08/15/self-hosted-forgejo-actions-runner/),一大缺点是其他人无法轻松参与。[Forgejo 联邦](https://forgejo.codeberg.page/faq/#what-about-forge-federation)正在开发中。也许两者可以共存?但这不是我要讨论的内容。
## Tangled 的新界面
在同一篇博文中,Tangled 公布了全新的 UI 设计。
> 我们在新架构(下文有更多介绍)之上用 Svelte 重新设计了 UI。现在一切应该更快、视觉上更一致、更美观!眼尖的你可能还注意到我们用 Timeless Sans 替换了 Inter。联邦代码托管平台(https://tangled.org/blog/forge/#a-fresh-look)—— Anirudh(Tangled CEO)
我在 Bluesky 上打趣道:"眼尖?简直是有鹰眼吧!"(https://bsky.app/profile/did:plc:rgrzo7xept2yb2auooex4rlg/post/3mz5zpy3yus2j)—— 新的字体小得离谱。代码中设置为 `12px`,行高为 `16px`。在这个字号下,Tangled 对我来说几乎无法使用。以前字号也小,但至少可以放大。新的前端设计方式几乎没有给用户自行调整的空间。这不仅仅是主观意见,这里存在真实的无障碍缺陷。
## 字体问题
下面是 Tangled 新 UI 设计的截图。
Tangled 新闻面板,标题为"公告"。面板包含三条内容,每条包括日期、标题和简短描述。Tangled 新闻面板,标题为"公告"。面板包含三条内容,每条包括日期、标题和简短描述。
访问 `tangled.org`(https://tangled.org/timeline)亲自体验新 UI。
12 像素对任何有意义的文本来说都太小了(基本上就是所有文本)。也许你觉得这个字号完全没问题?那对你来说没问题。但对*相当多*的人来说,这不行。你不会找到任何一个无障碍专家对此满意。(低 DPI 显示器甚至可能难以清晰渲染字体。)
WCAG 2.2 无障碍指南(https://www.w3.org/WAI/WCAG22/Understanding/)并未规定最小字体大小。但 [1.4.4 文本缩放](https://www.w3.org/TR/WCAG22/#resize-text)要求文本可以放大到 200% 而"不丢失内容或功能"。
Tangled 在 CSS 中使用像素单位设置字号。这意味着 UI 不会响应浏览器的默认设置。我*强制*设置最小 `16px` 字号,看看发生了什么。
Tangled 新闻面板,字号设为 16px,见下方描述。Tangled 新闻面板,字号设为 16px,见下方描述。
行间距变得过于拥挤。字符开始被裁切。比如看看 "Tangled" 中 "g" 的下伸部分。
而如果我强制放大到 200%,即 `24px`,情况变成这样。
Tangled 新闻面板,字号设为 24px。文本被截断,字符严重裁切。Tangled 新闻面板,字号设为 24px。文本被截断,字符严重裁切。
糟糕的文本是一个失败项。
请记住,WCAG 指南只是底线。没有什么能做到完美的无障碍,但 12px 的字号和基本的前端错误确实令人担忧。一次正式的审计还会揭示其他问题(例如媒体/容器查询如何响应字号变化)。
## 应该做得更好
我发这篇文章不是为了自己找工作的,也不是来提供答案的。我想提醒读者,无障碍问题影响每一个人。严肃的项目应该寻求专业支持。又一个科技初创公司连基础都做不好,实在令人失望。
不过我可以免费提供两条建议:
1. 字号使用相对单位
2. 行高使用无单位数值
坦白说,Tangled 的重新设计让我觉得参与这个过程的没有人真正认真考虑过无障碍(如果有的话)。这听起来可能很刻薄,但根据我的经验,这通常就是现实。无论如何,Tangled 在这个领域必须做得更好。
让我先回答几个可以预料到的假设性评论:
> 这只是 v1 版本,情况会改善的。
我相信会的,也许我的批评会推动改进。问题在于,无障碍考量必须从第一天起就是设计的核心部分,而不是事后修补。
> 这是开源项目,你的合并请求在哪里?
抱歉,一旦一个项目进入了风险投资阶段,"开源"就具有了不同的含义。如果有人想贡献那是他们的选择。我个人不习惯免费为营利性企业贡献专业技能。这种期待对无障碍专家来说尤其成问题(虽然我本人不是无障碍专家)。
> 哈!那你网站上的无障碍问题呢?
这有点尴尬,但感谢提醒!
在产品发布之前聘请无障碍专家要容易得多,但事后改进永远不会太迟。几十年来,我一直在我自己的网站上做无障碍改进。
我喜欢 Tangled,希望它发展顺利。也许有人会爆出一个[奶昔鸭效应](https://en.wikipedia.org/wiki/Milkshake_Duck),或者他们向[法西斯 Linux](https://brennan.day/normalized-fascism-in-open-source-12-million-given-to-dhh/) 捐款,那我就收回我的话。我真的希望不要这样!我希望 Tangled 能够改进,让那些滞留在 GitHub 泥潭中的用户少一些借口继续留在那里。
相似文章
Lobsters Hottest
一篇关于利用 prefers-contrast、prefers-reduced-motion、prefers-color-scheme 等 CSS 媒体查询提升网站可访问性的前端实践文章,介绍如何在不重做设计的前提下响应用户偏好设置。
Lobsters Hottest
本文批判了现代文本用户界面(TUI)对屏幕阅读器用户可访问性差的状况,并挑战了基于终端的应用程序天生具有可访问性的误解。
X AI KOLs Timeline
开源工具 ai-design-check 把「AI 味」界面拆成 70 多条可计数的检查规则(间距网格、字阶、渐变按钮、emoji 图标、'Welcome back' 问候语等),零依赖、不用 AI 或 API key,可在 React/Vue/Svelte/HTML/SwiftUI/Jetpack Compose 上运行,并支持挂进 Claude Code hook 让 agent 自动修复设计问题。
X AI KOLs Following
分享一个用于 AI 生成前端代码的实用提示词模板:优先复用成熟库、统一设计语言(如 shadcn/ui、Lucide 图标、Motion 动画、react-resizable-panels、dnd-kit、Zustand),即使 one-shot 也能产出风格一致的高质量前端界面。
X AI KOLs Timeline
分享使用 Codex 和 Claude Code 通过 vibe coding 方式重构前端 UI 的个人经验,声明非专业设计,仅供技术参考。