Hoverbox预览中的标题

时间:2012-11-05 18:38:31

标签: html css hover preview caption

我正在网站上使用Hoverbox图库(http://host.sonspring.com/hoverbox/),我想在每个图片预览中添加一个标题(悬停在放大的图片下)。我一直在尝试,但我只能在缩略图中做到这一点。我在某个地方看到,使用一个用于图像的另一个用于标题的人会这样做,但我被卡住了。有人可以帮帮我吗?

HTML:

<ul class="hoverbox">
    <li>
    <a href="#"><img src="img/gallery/image1.jpg" alt="description" style="height:75px;        
width:59px;"/><img src="img/gallery/image1.jpg" alt="description" class="preview" />   
Caption 1</a>
(...)

CSS:

.hoverbox
{
cursor: default;
list-style: none;
}

.hoverbox a
{
cursor: default;
}

.hoverbox a .preview
{
display: none;
}

.hoverbox a:hover .preview
{
display: block;
position: absolute;
top: -33px;
left: -45px;
z-index: 1;
}

.hoverbox img
{
background: #fff;
border-color: #aaa #ccc #ddd #bbb;
border-style: solid;
border-width: 1px;
color: inherit;
padding: 2px;
vertical-align: top;
width: 100px;
height: 75px;
}

.hoverbox li
{
background: #eee;
border-color: #ddd #bbb #aaa #ccc;
border-style: solid;
border-width: 1px;
color: inherit;
display: inline;
float: left;
margin: 3px;
padding: 5px;
position: relative;
}

.hoverbox .preview
{
border-color: #000;
width: 200px;
height: 150px;
}

提前致谢, 若昂

1 个答案:

答案 0 :(得分:1)

嗯,根据您的代码判断,我猜猜标题总是显示在原始图像旁边...

所以,对于悬停效果,我建议你为标题制作一个单独的标签。 例如

<a href="#"><img src="img/gallery/image1.jpg" alt="description" style="height:75px;        
width:59px;"/><img src="img/gallery/image1.jpg" alt="description" class="preview" />   
<span class="preview">Caption 1<span></a>

另请注意,我已将预览类添加到新标记中。这也将隐藏标题,直到有悬停。 但是,现在这个位置有点偏。所以,需要更多的CSS代码。

ul.hoverbox a:hover span.preview
{
display: block;
position: absolute;
top: 40px;
left: -45px;
z-index: 1;
}

这里我调整了top语句,因此标题位于图像下方。但这可能仅适用于具有固定高度的预览图像。

另一种尝试是使用 <li><img.../> <div class="preview"><img .../><span>Caption 1</span></div></li>所以整个框都会显示预览图片和标题。 那么您可能需要使用.preview span{display:block;margin:0 auto;}等格式化span-tag。

我希望这至少部分回答你的问题或帮助你^^