【发布时间】:2011-11-24 19:37:36
【问题描述】:
在桌面浏览器 (JSFiddle) 中查看以下测试:
a {
background: gray;
display: block;
margin: 100px;
padding: 100px;
}
a span {
opacity: 0;
-webkit-transition: 0.5s;
visibility: hidden;
}
a:hover span {
opacity: 1;
-webkit-transition: 0.5s;
visibility: visible;
}
<a href="#">a <span>span</span></a>
将鼠标悬停在锚元素上,span 元素会像它应该的那样淡入。
现在通过 iOS 设备进行查看。 结果:什么都不做。
事实:
- 如果没有转换属性,它可以工作。
- 如果不存在 opacity 或 visibility 属性,它会起作用。
- 没有为 opacity 或 visibility 属性触发 webkitTransitionEnd 事件。
有什么解决办法吗?
【问题讨论】:
-
您是否考虑过 iOS 设备上的指针丢失问题?没有悬停。
-
其实有。测试(没有可见性属性):jsfiddle.net/jrpSJ/1
-
@ott 虽然不是真正的悬停,但单击假定并触发 iOS 设备上的 css:hover。
-
嗨@Dan,你能为这个声明提供参考吗?我一直想知道在 iOS 上使用 CSS:hover。那么安卓呢?谢谢!
标签: css ios mobile safari css-transitions