CSS:如何仅在支持悬停的设备上允许悬停状态?

Jan*_*ler 3 css hover touch

我正在寻找一种方法来防止触摸设备“模拟”悬停事件。原因是你不能像在桌面上用光标悬停在触摸设备上,这有时会干扰用户体验。

因为我没有在网上找到任何解决方案,所以我想在这里发布我自己的解决方案。我希望这会帮助某人:)

Jan*_*ler 7

我实现了只悬停在具有两个媒体查询的真正悬停状态的设备上。

@media (hover: hover), (-ms-high-contrast:none) {
  div:hover {
    background: red;
  }
}
Run Code Online (Sandbox Code Playgroud)
<div>Hover me!</div>
Run Code Online (Sandbox Code Playgroud)