
本例中,button 的 hocus:border_always 样式在通过 tab 获取焦点时无法生效。背后的原因是,默认情况下,hocus 变体仅包含 :focus 和 :hover 状态,而对 outline-none 等焦点辅助状态的支持并不完善。
解决方案:
为了解决这个问题,需要:
立即学习“前端免费学习笔记(深入)”;
- 更新 .border_always 实用工具类,包括 outline-none 来禁用原生浏览器焦点轮廓:
@layer utilities {
.border_always {
@apply border-2 border-solid border-red-500 outline-none;
}
}- 扩展 hocus 变体以包括 focus-visible 状态,该状态涵盖了通过键盘、指针或语音控件获取焦点的情况:
addVariant('hocus', ['&:focus', '&:hover', '&:focus-visible'])更新代码后,hocus:border_always 样式将在通过任何方法获取焦点时生效。










