1 回答

TA贡献1821条经验 获得超5个赞
我认为在这种情况下,JavaScript和一些CSS对你来说会是一个更好的选择。根据图像的加载方式,您最好的选择仍然是解析或过滤它,并添加一个类(或一些HTML)。
以以下代码段为例。它查找名称中包含的所有图像,如果找到任何图像,则循环访问它们,将它们与类一起包装在 中。communityphoto_
<div>
.community-image
然后使用一些CSS,您可以使用::after
伪类来放置一些任意文本。如果需要,您也可以将此文本添加为 JavaScript 中的 a 或某些内容。另请注意,您不能只执行 take,因为标签是 void 元素(也称为自闭合),在任何情况下都不会获取任何内容,因此这就是为什么我将其包装在元素中并在那里应用它的原因。<span>
::after
img
img
var communityImages = document.querySelectorAll('img[src*="communityphoto_"]');
if( communityImages.length > 0 ){
communityImages.forEach(function(image){
image.outerHTML = '<div class="community-image">'+ image.outerHTML +'</div>';
});
}
.community-image {
display: inline-block;
position: relative;
}
.community-image:after {
content: "Photo submitted by the community, submit yours to our email";
position: absolute;
top: 5px;
left: 5px;
background: rgba(0,0,0,.2);
font-size: 11px;
padding: 3px 6px;
}
<div>
<img src="https://xhynk.com/placeholder/300/100/communityphoto_1/"/>
<img src="https://xhynk.com/placeholder/300/100/communityphoto_2/"/>
<img src="https://xhynk.com/placeholder/300/100/something/" />
<img src="https://xhynk.com/placeholder/300/100/communityphoto_3/"/>
<img src="https://xhynk.com/placeholder/300/100/communityphoto_4/"/>
<img src="https://xhynk.com/placeholder/300/100/another/"/>
</div>
- 1 回答
- 0 关注
- 81 浏览
添加回答
举报