假设有一个具有多种样式等的复杂网站。该网站上也有许多图像可以定位、内联、块或其他。
我想做的是在每张图片上方放一个小叠加图标!
第一次尝试是position:absolute
span
在正文末尾为每个图像创建一个图像图标并将其移动到图像上。问题:如果网站上的某些内容移动、隐藏或显示,则图像可能也会移动,但图标叠加层会保留,因此图标将不再位于图像上方。
因此,我想使用jQuery.wrap
将每个图像包装在一个 div 中,position:relaitve
然后我将图标叠加层也放在该 div 中并将其放置在 div 内。因此,如果div
+image
移动,图标也会移动。
问题是 div 必须以某种方式对上下文、网站结构和 dom 没有影响,这样它才不会破坏网站的布局。我怎样才能创建这样一个“中性”的 div?
我的代码的简化版本:
$("img:visible").each(function(i, v){
var img = $(this);
var position = img.offset();
$('<span class="icon" />')
.css({
'top': position['top'] + 5,
left': position['left'] + 5
})
.appendTo(document.documentElement)
}
//css
.icon {
position: absolute;
display: block;
z-index: 50000;
width: 16px;
height: 16px;
}