如何在悬停时将Image放在其父div之外

时间:2014-07-09 13:28:24

标签: html css hover

我有一个可滚动的div,其中包含一些img个元素。我为图片添加了widthheight的悬停效果。它运行正常,但图像卡在#scroller div中。我希望当鼠标悬停在图像上时,图像会从滚动条div中移出。我怎样才能做到这一点 ?

CSS:

#scroller {
    width:100%;
    border:1px solid black;
    white-space:nowrap;
    height:130px;
    display:inline-block;
    overflow-x:scroll;
    overflow-y:hidden;
}
img {
    width:128px;
    height:128px;
}
img:hover {
    width : 192px;
    height:192px;
}

HTML:

<div id="scroller">
    <img/>
    <img/>
    <img/>
    <img/> ...and some more images
</div>

我没有尝试任何事情,因为我不知道。

4 个答案:

答案 0 :(得分:1)

如果您打算仅使用CSS,一种方法可能是将图像的位置在悬停时更改为绝对值。

请看这个例子:http://jsfiddle.net/Vn8M6/3/

#scroller {
    width:100%;
    height:100%;
    border:1px solid black;
    white-space:nowrap;
    height:130px;
    display:inline-block;
    overflow-x:scroll;
    overflow-y:hidden;
}

img {
    width:128px;
    height:128px;
    transition: ease-in-out 0s;  
    -webkit-backface-visibility: hidden;
    -webkit-transform: translateX(0);
     z-index:1;
    background-color:grey;
}

img:nth-child(2) {
    background-color:yellow;
     z-index:2;
}

img:nth-child(3) {
    background-color:red;
    z-index:3;
}

img:nth-child(4) {
    background-color:blue;
     z-index:4;
}

img:hover {
    width : 192px;
    height:192px;
    position:absolute;
    top:0;    
}

否则你可以使用javascript来获得更好的效果。

答案 1 :(得分:0)

这不会起作用,因为你定义了:

overflow-x:scroll; overflow-y:hidden;

删除这些或使用样式属性设置图像&#34;绝对&#34;并用&#34;右,上,左,下&#34;正确的位置!

格尔茨

答案 2 :(得分:0)

您需要将CSS更改为悬停时允许图像超出父级边界。

#scroller:hover {
    overflow-x:scroll;
    overflow-visible;
}

答案 3 :(得分:0)

你可以尝试 -

 #scroller:hover {
    overflow-x:scroll;
    overflow-y:visible;
    height:100%;
 } 

<强> JSFIDDLE