【问题标题】:Remove focus on Boostrap 5 toggle button after click单击后删除对 Bootstrap 5 切换按钮的关注
【发布时间】:2022-03-01 04:31:12
【问题描述】:

我正在尝试使用 Bootstrap 5 切换按钮(使用大纲样式以获得更明显的视觉强调)。然而,UX 体验并不是我所希望的。 (见https://getbootstrap.com/docs/5.0/forms/checks-radios/#outlined-styles

切换本身效果很好,它的焦点(或者我应该说的点击焦点之后)就是问题所在。当按钮处于未选中状态时,视觉线索很突出,因为按钮被勾勒出来。当按钮处于选中状态时,视觉线索再次突出,因为按钮已被填充。当按钮从未选中状态转变为选中状态时,变化是显而易见的,因为它从轮廓转变为填充。

问题在于取消选中时。当按钮从选中状态转变为未选中状态时,按钮将保持填充状态,直到 a) 鼠标在设备上使用光标移动,或 b) 页面上的另一个位置在触摸设备上被触摸。用户显然认为他们没有取消选中该按钮,而实际上该按钮已被取消选中,然后继续尝试取消选中该按钮。

在处理按钮组中的多个复选框时,问题更加明显。 (见https://getbootstrap.com/docs/5.0/components/button-group/#checkbox-and-radio-button-groups

我尝试使用 javascript 在复选框的 click 事件上调用 blur,尽管这种方法的成功程度有限,但它在触摸设备上没有任何作用,因为设备的虚拟指针仍然悬停在按钮上.我还尝试在页面上的不同元素上调用focus,结果相同。

有人有什么建议吗?

【问题讨论】:

  • 我也看到了这个 .. 很可能是一个实际的错误 - 你能把它添加到这里的项目中吗:github.com/twbs/bootstrap/issues
  • “错误”位于@mixin button-outline-variant 中的mixins/_buttons.scss ...它以相同的样式定义了.btn-check:checked + &.btn-check:active + &

标签: javascript html user-experience togglebutton bootstrap-5


【解决方案1】:

在这里提交了错误修复:https://github.com/twbs/bootstrap/issues/34664

【讨论】:

    猜你喜欢
    • 2015-04-14
    • 1970-01-01
    • 1970-01-01
    • 2020-04-26
    • 2017-12-24
    • 2021-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多