我创建了一个带有前一个和下一个按钮的旋转木马,它们始终可见.这些按钮具有悬停状态,它们变为蓝色.在触控设备(如iPad)上,悬停状态是粘性的,因此按下按钮后按钮会保持蓝色.我不希望这样.
我可以为每个按钮添加一个no-hover类ontouchend,并使我的CSS像这样:button:not(.no-hover):hover { background-color:
blue; }但这可能对性能非常不利,并且不能正确处理Chromebook Pixel(同时具有触摸屏和鼠标)等设备.
我可以添加一个touch类documentElement,并使我的CSS像这样:html:not(.touch) button:hover { background-color: blue;
}但这也不适用于同时具有触摸和鼠标的设备.
我更喜欢的是删除悬停状态ontouchend.但这似乎不太可能.聚焦另一个元素不会消除悬停状态.手动点击另一个元素,但我似乎无法在JavaScript中触发它.
我发现的所有解决方案似乎都不完美.有完美的解决方案吗?