【发布时间】:2016-07-14 22:30:31
【问题描述】:
假设我有这个 html 结构:
<div className="big-square">
<div className="small-button">button</div>
</div>
我需要在.big-square:hover 上显示按钮。这很简单,但触控设备呢?如果我将简单地使用.big-square:hover css 规则,那么如果用户不小心点击了按钮的位置,那么按钮就会出现并立即被点击。我想避免这种情况。我尝试使用 misc 转换延迟,但这不起作用。
这里举个例子,便于理解和回答:
https://jsfiddle.net/hznjb8ur/
为了简单起见,Jquery 在那里。在这种情况下,我想避免使用 jquery 甚至 js,因为我在一个页面上有几十上百个这样的元素,所以我宁愿用简单的 css 技巧来解决这个问题。
【问题讨论】:
-
我试过 :hover 并且它也适用于触摸设备上的点击事件
-
可以使用媒体查询
-
让触摸设备与
:hover一起工作很奇怪。从交互的角度来看,触控设备与指针设备完全不同。恐怕你走错路了。我会尝试找出更好的设计,而不是破解解决方法。
标签: javascript html css