当一个尺寸改变时,将相对位置的图像保持在底部

时间:2013-07-24 06:55:50

标签: html css css-position

我在div中有一些图像,当我将mose移到它们上面时会变大。我的问题是,如果其中一个变大,其他图像就会停留在div的顶部并向上移动。

我尝试将图像的底部属性设置为0,但这不起作用,因为它们是相对的。如果我将他们的位置设置为绝对位置并将它们带到正确的位置,那么当它们变大时它们会重叠。

我还尝试将父div的vertical-align设置为bottom但这也不起作用。

我的HTML:

<div id="picmen">
    <img src="/images/b1.png" />
    <img src="/images/b2.png" />
    <img src="/images/b3.png" />
    <img src="/images/b4.png" />
    <img src="/images/b5.png" />
    <img src="/images/b6.png" />
    <img src="/images/b7.png" />
</div>

我的CSS:

#picmen {
    position: absolute;
    right: 0px;
    bottom: 0px;
    vertical-align: bottom;
}

#picmen img {
    float: right;
    margin: 3px 1px 3px 1px;
    height: 50px;
    width: 50px;
    transition-duration: 0.5s;
}

#picmen img:hover {
    transition-duration: 0.5s; 
    width: 60px;
    height: 60px;
}

2 个答案:

答案 0 :(得分:1)

为什么不使用缩放效果而不是在悬停上手动输入图像大小 这样的事情。

WORKING FIDDLE

#picmen img:hover {
    transition-duration: 0.5s; 
    transform: scale(1.2);
    -ms-transform: scale(1.2); /* IE 9 */
    -webkit-transform: scale(1.2); /* Safari and Chrome */
}    

您还可以在悬停时更改边距以避免重叠     保证金:3px 4px 3px 4px;

2nd FIDDLE

答案 1 :(得分:0)

我认为你必须玩#picmen height

#picmen {
position: absolute;
right: 0px;
bottom: 0px;
vertical-align: bottom;
height:63px}

另一方面,所有非鼠标悬停img应该具有最高值

#picmen img {
position:relative;
float: right;
margin: 3px 1px 3px 1px;
height: 50px;
width: 50px;
transition-duration: 0.5s;
top:6px}

有一个例子jsfiddle,我只是用按钮取代了img,但它应该是相同的