:root{--focus:#1a73e8}
@media (prefers-color-scheme:dark){:root{--focus:#8ab4f8}}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
浅色主题下焦点环很清楚,系统切到暗色后同一圈蓝色描边贴在深灰背景上几乎消失,键盘用户按 Tab 只能靠文字位置猜焦点在哪。这类现象通常不是突然出现的,往前翻半天日志能看到苗头。
追下去是这么回事:焦点样式只按浅色背景配了一次色,暗色主题复用了同一个变量,蓝和深灰的对比度掉到 1.5 比一左右。描边又只有两像素,缩放下更容易看丢。
围绕「暗色焦点对比」排查时,命令行跑一遍比在面板里点十次有用,面板会替你做掉不少隐式操作。监控和日志的时间要对上,时区不一致会多绕很大一圈。
处理上按这个顺序:把焦点描边颜色做成变量,暗色主题单独给一版高亮值,别共用同一个色号;描边宽度加到三像素,再补一圈同色外阴影,深色背景上更醒目;用取色工具量焦点色与背景色的对比,至少要到 3 比一。
确认没问题再收工,系统切到暗色后逐项 Tab,焦点环在深灰卡片和纯黑背景上都清晰可辨。
