基本上,我有一个div元素,里面有一个图像,当它悬停在它上面时会显示另一个div,并带有一些可点击的选项。这一切都完美地在PC上可以实际悬停在元素上,但在电话上悬停是不可能的,你必须按下图像才能显示菜单。问题是,如果我点击要显示的菜单的图像,它会自动触发菜单中的选项,而不是仅显示它并需要再次点击选项。
有没有办法用html / css克服这个问题,如果没有,是否有使用js的解决方案?
感谢。
答案 0 :(得分:1)
display:none
window.outerWidth <= 768
在图片上添加点击事件或需要点击以显示选项的div,并在该点击事件上显示选项包装器div :active
和:focus
css事件,例如.parent:focus .optionsWrapper, .parent:active .optionsWrapper{display: block;}
无论如何,您也可以使用display: none
代替opactity:0
解释
opacity:0
只是隐藏元素,但它仍在那里
display:none
表示该元素不存在(简单来说) - 确保您可以通过javascript访问它,但不能通过点击或悬停等用户直接操作