我正在尝试使用css将大纲覆盖在我的图像上但是大纲没有显示出来。如果我用背景颜色替换轮廓它可以正常工作,但它不能实现我想要的框架效果。我也尝试使用边框,但增加了div的大小,所以它也不起作用。我需要叠加div为100%高度和宽度,因为图像大小是动态的。
<figure class="visual-thumbnail" style="overflow:hidden;position:relative;">
<div class="img-info"></div>
<a href="http://innovationinhr.com/apploi/?p=351" class="thumbnail">
<img width="326" height="434" src="http://innovationinhr.com/apploi/wp-content/uploads/2013/07/unknown-326x434.jpeg" class="attachment-visual-thumbnail wp-post-image" alt="Sharif">
</a>
</figure>
figure{ display:block;overflow: hidden;
position: relative;width:326px;height:435px;}
.img-info {
outline: solid black 25px;
background-color: black;
left: 0;
top: 0;
opacity: 0;
position: absolute;
filter: alpha(opacity = 0);
width: 100%;
z-index: 1000;
height: 100%;
}
.visual-thumbnail:hover .img-info{
opacity:.5;
}
轮廓不会出现的任何原因?
答案 0 :(得分:0)
轮廓是不可见的,因为轮廓出现在元素的外部。在这种情况下,由于元素(div
)与父(figure
)一样大,因此它会出现在figure
之外。但figure
有overflow:hidden
。
解决方案:从图中删除overflow:hidden
。或者将div
置于其轮廓落在figure
内的位置。
答案 1 :(得分:0)
正如李先生所指出的那样,主要问题在于你的数字是overflow:hidden
。 This fiddle显示了您想要工作的基本想法。
另外注意,z-index仅影响同一上下文中的元素。 Here是一篇非常好的文章。所以我认为你真正尝试做的是把另一个div放在图像下面并让它在悬停时显示边框。为了做到这一点,必须在相同的上下文中绘制它们,这意味着它们都需要具有position
属性。这是一个工作的小提琴:http://jsfiddle.net/P4nEK/6/