前端知库

为什么可点击的元素应该优先使用 button?

从键盘、语义和辅助技术理解原生 HTML 的价值。

参考答案

button 自带按钮语义、焦点行为和键盘激活支持。用 div 模拟按钮,需要自行补充角色、焦点、Enter 与空格键行为等,容易遗漏。

导航到另一个地址用 <a href="…">;触发当前页面操作用 <button type="button">。图标按钮应有可访问名称,例如 aria-label。

同时保证可见的焦点样式、合理的触控面积和足够的颜色对比度。原生语义是基础,ARIA 用于补充无法通过原生 HTML 表达的信息。