仅在悬停在物体上时显示图标/按钮的最佳方法是什么?

Tif*_*oun 2 html javascript css jquery

我有这样的封面图片

在此输入图像描述

当用户将鼠标悬停在我的图片上时,我想:

  • 在左上角显示一个相机图标,然后
  • 当鼠标移开时隐藏它.

我试过了

CSS

<style type="text/css">

    #cover-img:hover{
        opacity: .9;
    }

    #nav-upload-icon{
        top: 10px;
        left: 10px;
        color: red;
        z-index: 1000;
    }

</style>
Run Code Online (Sandbox Code Playgroud)

HTML

<img id="cover-img" src="/material/img/profile-menu.png" height="130px">
<i id="nav-upload-icon" class="md md-camera hidden"></i>
Run Code Online (Sandbox Code Playgroud)

JS

$("#cover-img").hover(function() {
   $("#nav-upload-icon").removeClass( "hidden" );
});
Run Code Online (Sandbox Code Playgroud)

我无法让它表现出我期望看到的.实现类似的东西的最佳方法是什么?

的jsfiddle

epa*_*llo 6

如果这是实际的html代码,没有理由使用JavaScript,你可以使用悬停的下一个兄弟选择器.

#cover-img:hover + #nav-upload-icon,  
#nav-upload-icon:hover {
    visibility: visible;
}

#nav-upload-icon { 
    visibility : hidden; 
}
Run Code Online (Sandbox Code Playgroud)

  • 因为元素上有隐藏的类,它设置显示而不是可见性.删除该课程. (2认同)