archive

专栏 · 第 3

356 · 第 3

13 分钟阅读

往下按 Tab 零违规,往上按 16 条:吸顶头部吞掉的键盘焦点

同样六个页面,用 Tab 往下走测出 WCAG 2.4.11 违规 0 条,用 Shift+Tab 往上走测出 16 条。原因在于浏览器把焦点目标滚进视口时,对齐方式取决于你从哪个方向来。一行 CSS 把 16 条降到 0 条的实测记录。测的方向一换,结果就跟着换,这不是偶然误差,而是对齐规则本身。

无障碍 WCAG 键盘
14 分钟阅读

一年没动过的文章,Last-Modified 却写着昨天:部署会抹掉缓存校验值

给去年写的文章发了个 curl,Last-Modified 显示的却是昨天的部署时间。拆开 ETag 一看,就是文件修改时间和大小拼成的十六进制。同一份源码重新构建出的 1,346 个 HTML 完全字节一致,可一次部署就让整站的条件请求全部落空,本该拿到的 304 再也换不回来。文中给出实测过程与几种可行的缓解方案。

SEO 爬虫抓取 HTTP缓存
13 分钟阅读

声明标题的七个位置里,只有六个是我写的

一篇文章的标题会在 title、h1、og:title、headline、RSS 等六处被声明,1,296 篇全部一致。真正出问题的是第七处:指向文章的 18,296 条内部链接里,锚文本与目标标题完全一致的只有 0.7%,根源是包住整张卡片的那一个 a 标签。本文给出七个渠道的实测数据与可照做的修复路径。

SEO 无障碍 锚文本
10 分钟阅读

46,382条内部链接里,有24,948条撞在301上

本来是为测量链接文本的无障碍指标写的脚本,结果挖出一个URL缺陷。对构建产物中1,334个HTML页面的内部链接做全量扫描,超过一半的24,948条指向不带尾部斜杠的地址,也就是要走一次301跳转。本文记录成因、四个阶段的修复,以及把它清到零的过程。

SEO 内部链接 重定向
13 分钟阅读

把列表页从链接图里拿掉,296篇就再也走不到了:抓取深度实测

每篇文章都挂着中位数8条内链,我以为内链已经够了。对1,330个构建产物页做广度优先遍历后,1,288篇文章中有1,276篇位于深度2。可是一旦把四个语言的列表页从链接图里拿掉,296篇从首页再也走不到。相关文章模块再多,也替代不了四个语言列表页这个入口。从首页出发时,四个列表页才是通往深度2的门。

SEO 内链 可抓取性
跳到页脚