I have researched the Interaction Media Queries feature, and it seems like it can solve the problem. I would be able to use something like this:
@media (hover: none) {
/* behaviour for touch browsers */
}
根据CanIUse,除了IE11和Firefox外,我需要支持的所有浏览器都可以使用它。
因此,我想知道是否可以反过来做 - 由于主要的触摸设备都支持它,那么是否可以将其否定:
@media not (hover: none) {
/* behaviour for desktop browsers */
}
然而,这似乎根本没有起作用。
我尝试做的伪代码示例:
.myelement {
/* some styling */
/* note: no hover state here */
}
@media(this device supports hover) {
.myelement:hover {
/* more styling */
}
}
那么,有没有办法让这个工作以预期的方式运行,还是我走错了方向?
pointer:fine
检测到我的鼠标,也无法接受hover:hover
。但这个提示解决了我的问题... - Thomas Urbanhover
来实现悬停效果。不确定您是否正在寻找此实现方式,但希望将来有人会发现这很有用! - Hasintha Abeykoon(hover:hover)
而不是(hover:none)
!https://www.ctrl.blog/entry/css-media-hover-samsung.html - Daniel