【发布时间】:2018-01-19 00:33:04
【问题描述】:
我正在尝试在个人资料图片悬停时创建动画。
基本上,父 div 具有圆角,因此图像看起来像一个圆圈。悬停时,边框从 0px 增加到 7px。问题是位于子 div 内的图像正在缩小,因为我已将其宽度设置为 100%。
我无法为图像设置固定宽度,因为无论图像大小,都必须填充 div。
有没有办法解决这个问题?
.element {
position: absolute;
border-radius: 50%;
overflow: hidden;
border: 0px solid rgba(255, 255, 255, 0.4);
}
.element:hover {
transition: all 0.4s;
box-shadow: 12px 12px 25px 0px rgba(0, 0, 0, 0.20);
border: 7px solid rgba(255, 255, 255, 0.4);
}
.element img {
width: 100%;
}
<div class="element">
<a href="action"><img src="//myapp.s3-eu-west-1.amazonaws.com/image" alt="alt" /></a>
</div>
【问题讨论】:
-
下次你应该提供一个可行的例子jsbin.com/soqubawuqa/edit?html,css,output你确定它越来越小了吗?看起来只是创建了一个边框
-
您可以将边框设置为 7px,初始颜色为透明色
-
box-sizing:border-box也是? -
致 Paulie:
box-sizing:border-box;对父 div 无效。 To Temani:其实我的边框已经有点透明了。但我什至看不到任何透明度,因为下面的图像缩小了。因为我的背景是白色的,所以边框是 100% 白色 -
所以设置一个 7px 完全透明 边框 prehover 然后只需更改颜色...如建议的那样。问题解决了!
border: 7px solid rgba(255, 255, 255, 0);
标签: css