html - attr() 可以读取子元素的属性吗?
问题描述
An<img>
有一个父级 ( <div>
),我希望父级具有属性 ( )img
的背景图像。因此,如果可能的话,我想尝试在 CSS 中为父级读出子级 ( ) 的属性。src
assets/picture.png
img
/*pseudo css*/
div {
background-image:url(attr(img src));
}
<!--html-->
<div>
<img src="assets/picture.png"/>
</div>
解决方案
为此,您必须使用 JavaScript 或 jQuery。这是一个简单的jQuery解决方案:
$("div").css("background-image", `url${$("div img").attr("src")}`);
纯 JavaScript (ES6):
document.querySelector("div").style.backgroundImage = `url${document.querySelector("div img").getAttribute("src")}`;
纯 JavaScript (ES5):
document.querySelector("div").style.backgroundImage = "url" + document.querySelector("div img").getAttribute("src");
推荐阅读
- swift - 来自多个值的唯一数组
- python - 使用 Twisted Web Client 发布具有多个参数的请求
- azure - 使用 Azure AD 的 Springboot+Oauth 客户端凭据授予流程
- html - 我怎样才能使一个 div 进入中心
- c - ffmpeg - 缺少 avformat 标头
- flutter - Flutter Media Query MediaQuery.of(context).size.height 没有给出准确的高度或宽度。从谷歌得到
- r - 在R中将变量条件分配给数据框
- git - 如何复制一个分支和其中的所有数据?
- javascript - React forwardRef - 类型 IntrinsicAttributes 上不存在属性
- reactjs - 如何模拟 React componentWillUnmount 中使用的构造函数