首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >CSS背景- HTML img上的图像

CSS背景- HTML img上的图像
EN

Stack Overflow用户
提问于 2013-09-09 14:06:41
回答 6查看 38.9K关注 0票数 8

我想知道是否有可能在特定的div中将背景图像放在html的所有img之上(就像一种掩码)。

我试过:

代码语言:javascript
运行
复制
#content img{
    position:relative;
    background-image:url('./images/image-mask-2.png');
    z-index:100;
}
EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2014-01-29 02:52:11

试着用填充物代替宽度和高度

代码语言:javascript
运行
复制
#content img{
    height: 0;
    width: 0;
    padding: 35px 120px; // adjust that depend on your image size
    background-image: url('YOUR_IMAGE_PATH');
    background-repeat: no-repeat;
}
票数 7
EN

Stack Overflow用户

发布于 2013-09-09 14:08:27

对于要覆盖另一图像的背景图像,必须是覆盖所述图像的元素上的背景(例如绝对定位的背景)。

元素本身的背景不能出现在其内容之上。

票数 3
EN

Stack Overflow用户

发布于 2013-09-09 14:08:49

不,<img src=''>中定义的图像是元素的前台内容

background-image是元素的背景。它显示在任何内容的背后。

线索就在名字里。

要使背景图像出现在前台内容的顶部,唯一的方法是使其成为位于主元素顶部的单独元素的背景。

您可以通过使用CSS ::before伪选择器来实现这一点,而无需额外的HTML标记。这将向DOM中主元素旁边的页面添加一个CSS控制的元素。然后可以使用z-index和定位对其进行样式化,这样就可以将其放在主元素的顶部。然后它的background-image将出现在原始元素的主图像的顶部。

但是,并非所有浏览器的::before标记都支持img,因此不推荐这种技术。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18700136

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档