pc端和移动端hover的冲突解决

2,906 阅读1分钟

原本hover样式是鼠标悬浮显示,不悬浮就消失了的,但在移动端,我们点击后才显示hover样式,此后如果我们不做处理,那么hover样式就一直存在…

要解决这个问题,当然首先要判断当前设备是什么设备。 用@media screen and(...)
来设置移动端和pc的样式。但这个来处理hover并不好,因为pc端网页窗口也能缩小到500px,手机的窗口大小也是不定的,有些很大,有些很小,所以通过这种方法,不是太好。

我们可以采用判断设备是否具备hover事件来决定是否显示hover样式。

通过查阅媒体特性可知,any-hover是用来查看设备是否支持hover事件的。

@media(any-hover:hover){
           类名:hover {
              悬浮样式
            }
          }

这样就可以轻松解决冲突问题了