2

您好,我正在尝试在 img 上创建悬停效果。

HTML

<div>
    <img src="http://placehold.it/350x150"/>
    <div class="link-cont"><a href="#">click here to see more info</a></div>

</div>

css

div {
    width: 350px;
position: relative;    
}
.link-cont {
    background: red;
    position: absolute;
    bottom: 0;
    height: 100px; 
    opacity: 0;
    transition: all 0.4s;
}
div:hover  .link-cont {
    opacity: 1; 
    bottom:-100px;
}

当用户将鼠标悬停在它上面时,我需要这样的东西 图片

但我得到了这样的东西

当前的

有人可以帮助我实现我想要做的事情..

jsFid--> http://jsfiddle.net/Nnd7w/

4

4 回答 4

3

试试这个 - 让我知道它是否适合你..

小提琴

只需进行一些更改 - 可以进行一些清理。

     div {
     position: relative;
     top: 50px;
     background-color: blue;
     width: 350px;
     height: 150px;
     margin: auto;
 }
 .link-cont {
     background: red;
     position: relative;
     left: -50px;
     top: -200px;
     width: 450px;
     height: 250px;
     opacity: 0;
     transition: all 0.4s;
     z-index: -1
 }
 div a {
     position: relative;
     top: 210px;
     left: 50px;
     opacity: 0;
 }
 div:hover .link-cont {
     opacity: 1;
 }
a {
    text-decoration: none;
    color: #fff;
}
 div:hover a {
     opacity: 1;
 }
于 2013-06-23T06:25:18.397 回答
3

你想要这样,检查DEMO http://jsfiddle.net/yeyene/Nnd7w/17/

div {
    width: 350px;
    font-size:12px;
    position: relative;    
}
div img{
    padding:0 10px;    
}
.link-cont {
    background: red;
    position: absolute;
    bottom: 0;
    width: 370px;
    height: 210px; 
    opacity: 0;
    transition: all 0.4s;
    z-index: -1
}
div:hover  .link-cont {
    opacity: 1; 
    bottom:-40px;
}
.link-cont a{    
    opacity: 0;  
}
div:hover  .link-cont a{
    position: relative; 
    opacity: 1; 
    bottom:-175px;
    left:10px;
    background:#fff;
    color:red;
    text-decoration:none;
    padding:0 10px;
}
于 2013-06-23T06:32:35.237 回答
2

对你的 CSS 做了一些修改

div {
    width: 370px;
    position: relative;
}
.link-cont {
    background: red;
    position: absolute;
    top: 0;
    width: 370px;
    height: 200px;
    opacity: 0;
    transition: all 0.4s;
    z-index: -1
}
div:hover .link-cont {
    opacity: 1;
}
div:hover img {
    margin-left: 10px;
    margin-top: 10px;
}
.link {
    display: block;
    margin-top: 170px;
    margin-left: 50px;
}

我没有使用底部属性,而是更改了不透明度。我还为锚标记分配了一个类,以使其显示在图像下方。此外,您可以看到我为图像留出了一些边距以使其居中并更改了链接计数 div 的宽度和高度。

小提琴

于 2013-06-23T06:23:27.060 回答
1

我刚改成bottom:-100px;top: 160px;工作正常!

小提琴

编辑:更多选项,因为我不明白:

Fiddle,以及我认为你想要的那个:Fiddle(那个很乱,但只有当你真正将鼠标悬停在图像上时才会激活悬停。)

于 2013-06-23T06:08:46.340 回答