我已经为使用“rev”内联标签的 shadowbox 实现了一个标题解决方案。
在 shadowbox.js 添加...
...get("sb-caption").innerHTML=obj.link.rev||"";...
...<div id="sb-caption"></div>...
在 shadowbox.css 中,将以下内容添加到文件底部...
#sb-info,#sb-info-inner{height:56px;line-height:20px;}
#sb-caption {clear:both;font-size:90%;height:auto;line-height:12px;color:#fff;}
在您的页面标记中添加 rev 属性(是的,它是一个有效的属性,如 rel!)到链接...标题文本进入 rev 属性...
<a href="myimage.jpg" rel="shadowbox" title="My Image" rev="Your caption goes here...">My Image</a>
就是这样……享受吧!
在这里解释更多:http: //shadowbox.1309102.n2.nabble.com/Captions-td2643307.html
这是一件很容易实现的事情。
但是,我创建了自己的 CSS ......
#sb-caption{text-align:right;line-height:22px;color:#333;position:absolute;bottom:35px;right:35px;background:rgba(255,255,255,0.3);text-shadow: 1px 1px 1px #fff;display:block; padding:10px 20px 10px 50px;z-index:10;}
这一切都很好,但是,我发现了一个问题。
当图像没有 rev 时,#sb-caption div 无论如何都会出现,作为一个半透明的白色块,大小为 20x70 像素(与填充相同)我知道我的填充设置是导致问题。
我想知道是否有人可以帮助我解决问题。如果未指定 rev="",则告诉 shadowbox 不显示#sb-caption 的东西。
任何人都可以想出一个解决这个问题。
可能是这些方面的东西?
<script type="text/javascript">
Shadowbox.init({
});
var Shadowbox = window.parent.Shadowbox;
if (getElementById('sb-caption').innerHTML == '')
getElementById('sb-caption').style.display = 'none';
</script>
......但是,这不起作用。