【发布时间】:2017-06-10 13:58:36
【问题描述】:
所以我有一个使用标准 Bootstrap 3 类和结构的导航栏,最近我想看看你是否可以在悬停时打开下拉菜单。
我搜索了一下,找到了这个sn-p:
.dropdown:hover .dropdown-menu{
display: block;
}
这会在悬停时打开菜单,非常棒(无需切换.dropdown-toggle
我的问题是我的.dropdown-toggle 有一个focus 状态,只有在将焦点赋予元素时才会发生这种情况,所以当我悬停并且菜单打开时,我的悬停状态永远不会应用,因为我不需要再点击顶部菜单项。
所以问题是:当:hover 处于活动状态时,有没有办法强制:focus 状态?
我尝试过这样做:
.dropdown:hover #home .dropdown-toggle:focus{
background: #00aaff;
border: #00aaff 1px solid;
}
所以基本上在悬停时添加样式到焦点,但我认为我真正需要做的是在 :hover 上添加 :focus 类,所以这更像是 JavaScript 的事情吗?
【问题讨论】:
-
你试过删除
:focus,所以你有.dropdown:hover #home .dropdown-toggle {吗? -
你不能通过纯CSS强制
:focus;您必须通过 JavaScript,通过element.focus()方法来执行此操作。 -
很高兴知道它为我指明了正确的方向。
标签: javascript html css twitter-bootstrap twitter-bootstrap-3