html - 有些按钮有 :focus style applied on click

标签 html css angularjs angular-ui bootstrap-modal

为什么有些按钮在单击时会应用 :focus 样式,而有些则不会?例如,angular-ui modal关闭按钮已应用它,但请尝试 W3Schools button element但事实并非如此。

编辑:我重新打开这个问题。原谅我,我有点忘了这件事,因为我真的认为它已经解决了,直到昨天我真的试过了。所以我做了这样的事情:.btn:focus:not(:active) { outline: none;},但问题是当使用 tab 时它也不会显示焦点 按钮。完全忘记 Bootstrap ,不是它!

:focusbackground-color 属性与默认值不同时,焦点效果似乎在按钮单击时变得可见。也许对于其他一些属性也是如此。

所以 - 如果 background 是默认的,那么你只能在使用 tab 键或手动将其设置为 :focus 时才能看到焦点效果.如果 background 不同,您也可以在点击时看到效果。 Plunker 演示了这一点:https://plnkr.co/edit/2eKrtwl2wZcj3Ty4JJSu?p=preview

也许我自己已经回答了我的问题,也许没有,不知道。

edit2:刚刚看到@musically_ut edit 给出了几乎相同的例子。

更新

与@Error404 讨论后,我可以更准确地澄清问题。 所以问题是 - 为什么默认 buttonoutline 样式在被clicked 时不显示?

请参阅粗体的“点击”,因为它不仅仅在点击时起作用。当使用键盘 tab 键专注于它时,它会起作用,当使用开发人员工具手动设置它时,它会起作用。

到目前为止,大多数答案都认为单击时它会失去焦点或根本没有焦点,但确实如此。您可以更改 buttonbackgroundborder 以及其他一些属性,当您单击它时,您会突然看到轮廓。或者您可以将 outline 本身更改为 :focus 规则中的其他内容,它也会显示。

最佳答案

angular-ui 基于 Bootstrap css 框架,可以管理很多样式的小东西。

W3C 示例只是没有应用任何样式的 html。

关于html - 有些按钮有 :focus style applied on click,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36771069/

相关文章:

html - 响应式设计 Div 间距

jquery - 使用 jquery 添加基于所选值的输入字段

javascript - 单击时如何将图像从一个表的单元格移动到另一张表的单元格

android - CSS Background COVER 属性不适用于手机

javascript - 使用 angularJs 重定向到其他项目

javascript - 如何单击内容可编辑 div,然后单击跨度保留焦点

javascript - 展开一个 div 以在点击时显示溢出

jquery - 修改 jQuery 插件

css - Angular Js Bootstrap 轮播

angularjs - 如何在测试自定义 AngularJS 提供程序时注入(inject) $window?