Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Can';无法在Android中使用:活动或:悬停效果_Android_Css_Mobile_Hover - Fatal编程技术网

Can';无法在Android中使用:活动或:悬停效果

Can';无法在Android中使用:活动或:悬停效果,android,css,mobile,hover,Android,Css,Mobile,Hover,在Android默认浏览器中,我根本无法让:active或:hover工作。我知道:hover和:active不建议在手机上使用,但考虑到除了默认的Android浏览器之外,它们在任何地方都能正常工作,我想我还是试试。这段代码在iOS和Windows Phone上运行良好,但在Android上不行,我不知道为什么 CSS: HTML: 点击这里! 这就出现了! JS Fiddle:我想出来了。出于某种原因,只有当用户旋转手机时,Android才会触发:hover事件。我不知道为什么会这样,但

在Android默认浏览器中,我根本无法让
:active
:hover
工作。我知道
:hover
:active
不建议在手机上使用,但考虑到除了默认的Android浏览器之外,它们在任何地方都能正常工作,我想我还是试试。这段代码在iOS和Windows Phone上运行良好,但在Android上不行,我不知道为什么

CSS:

HTML:


点击这里!
这就出现了!

JS Fiddle:

我想出来了。出于某种原因,只有当用户旋转手机时,Android才会触发
:hover
事件。我不知道为什么会这样,但确实如此

所以,我就是这样修复的:

if (navigator.userAgent.toLowerCase().indexOf("android") > -1) {
    $(document).ready(function() {
        $("nav").children("a").click(function(e) {
            e.preventDefault();
            $(this).next("ul").css("transform","rotate(90deg)");
            $(this).next("ul").css("transform","rotate(0deg)");
        });
    });
};
基本上,我旋转我想出现在悬停上的东西,然后立即将其旋转回来。它使
:悬停
按预期工作。这对我来说毫无意义,但确实有效


如果有人对实现这一点有任何疑问,请告诉我。

在移动平台上通常单击或滑动鼠标时,悬停状态有什么意义?在不使用JavaScript的情况下拉菜单。我是纯CSS解决方案的粉丝,我已经在这个菜单上工作了很长时间。这是如此接近完美,这是非常令人沮丧。
<section id="clickBox" aria-haspopup="true">
    Click here!
</section>
<section id="hiddenBox">
    This appears!
</section>
if (navigator.userAgent.toLowerCase().indexOf("android") > -1) {
    $(document).ready(function() {
        $("nav").children("a").click(function(e) {
            e.preventDefault();
            $(this).next("ul").css("transform","rotate(90deg)");
            $(this).next("ul").css("transform","rotate(0deg)");
        });
    });
};