有一个HTML按钮,有三种背景 - 普通状态、悬停状态和点击状态。当然,在非触摸设备上它可以正常工作。如果在触摸设备上点击按钮,则:hover状态也会被触发并保持,直到触摸到另一个元素。
是否有可能在元素被点击后以编程方式删除:hover状态或防止其在触摸设备上激活?
抱歉,不接受检测mouseover和mouseout事件并添加人工类的建议。
一种可能的解决方案是提前向html元素添加“no-touch”类,并在仅检测到触摸设备时将其删除。在这种情况下,CSS选择器“html.no-touch button:hover”将不会匹配触摸设备。
您是否知道更优雅的解决方案可以建议吗?
:hover
而正常工作?也就是说,由于我认为其他两种状态应该可以正常工作,因此不使用:hover
似乎是个问题。 - Gordon Seidoh Worley:hover
,因为你实际上无法悬停在一个元素上。 - Gordon Seidoh Worley