概览`:focus-visible` 能区分键盘与鼠标触发的焦点,使键盘用户获得明确的可视反馈而不影响鼠标体验。配合可点击区域治理与状态样式可显著提升可访问性。基础样式button:focus-visible, a:focus-visible, input:focus-visible { outline: 3px solid oklch(65% 0.2 250); outline-offset: 2px; } /* 鼠标点击不显示粗焦点 */ button:focus:not(:focus-visible) { outline: none; } 可点击区域与状态.btn { min-width: 44px; /* 最小点击尺寸,满足移动端可用性 */ min-height: 44px; padding: 0.5rem 0.75rem; } .btn[aria-disabled="true"], .btn:disabled { opacity: .6; cursor: not-allowed; } .btn:active { transform: translateY(1px); } 组合选择器.field:focus-within { border-color: oklch(70% 0.12 250); } .field input:focus-visible { box-shadow: 0 0 0 3px oklch(85% 0.15 250 / .5); } 治理要点为键盘用户提供清晰焦点;鼠标用户保留简洁视觉。按钮与链接保证最小可点击尺寸;禁用态与按压态明确。与设计令牌统一色彩与尺寸,保持一致性。配合 `prefers-reduced-motion` 减少视觉干扰。验证与指标浏览器:Chrome 120+、Safari 17+、Firefox 120+键盘导航路径可见;移动端点击区域达标,误触率降低

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部
1.807502s