Div
包含者和p
元素与另一个Div
重叠,其中包含需要响应:hover
CSS事件的图片,该事件仅导致{{1}的一小部分容器能够感知鼠标悬停在它上面。
Div
也因某些原因无效。答案 0 :(得分:4)
正如@colandus所说,将position: relative
和z-index
添加到img
确实可以解决问题。
然而,在我看来,你似乎已经过度复杂化了一些事情。为什么位置相对于p
?那是造成问题的那个......
如果你使用一些更简单的html / css,你要做的是默认行为。像这样:
HTML ,删除了一些div:
<div class="insp">
<h3>Thomas Edison</h3>
<img src="http://www.placehold.it/250x150">
<p>Lorem Ipsum is s...</p>
</div>
以及从position: relative
移除p
的 css :
.insp {
border: 2px solid black;
margin: 10px 0px;
padding:10px;
}
.insp h3 {
margin-top:0px;
background-color:#FFDE5C;
}
.insp img {
float:left;
border: 5px solid #FFDE5C;
height:150px;
margin: 0 20px 20px 0;
}
.insp img:hover {
border: 5px solid #ffffff;
}
.insp p {
margin: 40px 40px 40px 80px;
}
正如您所见(http://jsfiddle.net/7fvcD/4/),它看起来完全相同,并且不再有悬停问题。
答案 1 :(得分:3)
将图片设为position: relative
,然后z-index
即可。
答案 2 :(得分:1)
添加以下CSS:
.insp-image img {
position: relative;
z-index:1000;
}
不需要更改标记;)
答案 3 :(得分:0)
尝试这种方法:将<div>
与<img>
放在<p>
标记内,并为img div设置一些边距。