我使用html和css但不熟悉css定位。这是一个完整的想法。假设当我悬停在链接中时我有一个图像链接我需要显示一个div,我将呈现该项目的一些信息。我知道应该通过绝对定位来完成。但这不适合我。让我展示一下设计:
http://beta.citystir.com/wp-content/uploads/2011/02/sadf.jpg
到目前为止,我的工作可以在这里看到:http://beta.citystir.com/static/
这是Html。我已经显示了一个项目的代码。 Hover_preview将是悬停时应显示的整个div。我现在不介意悬停效果,因为我将通过javascript进行操作。只帮助我如何正确显示div。
<ul id="featured_classifields">
<div id="fcf_wraper">
<li>
<a href="#"><img src="images/temp/featured-thumb.png" title="" alt="" width="135" height="90" /></a>
<div class="hover_preview">
<div class="hover_preview_main">
</div>
<div class="hover_preview_arrow"></div>
</div>
</li>
<li>
</div>
</ul>
的CSS:
ul#featured_classifields{
margin: 0 30px;
height:95px;
overflow:hidden;
position:relative;
}
#fcf_wraper{
width:1600px;
height:90px;
}
ul#featured_classifields li{
float:left;
width:135px;
height:90px;
background:#ddd;
display:block;
margin: 8px 8px 5px 0;
position:relative;
}
.hover_preview{
position:absolute;
z-index: 5;
bottom:100%;
}
.hover_preview_main{
background: #000;
width:400px;
height: 300px;
}
.hover_preview_arrow{
}
代码的一些细节: ul保持完整的滑块。比所有li都用div包装#fcf_wraper它的宽度等于我将通过javascript确定的所有li,但是现在我只是放了一个值。为了不显示包装器的额外部分,我将溢出设置为隐藏。问题是当我将溢出设置为隐藏时,div“hover_preview”也被隐藏了:(
希望得到你的帮助。谢谢!
答案 0 :(得分:0)
做这样的事情:
$("#fcf_wraper img").hover(
function () {
$("div.hover_preview").css({
position: "absolute",
left: $(this).offset().left + "px",
top: $(this).offset().top - $("div.hover_preview").outerHeight() + "px",
display: "block"
});
},
function () {
$("div.hover_preview").hide();
});