html - CSS 通过数据图像属性设置背景图像

标签 html css url background-image attr

我有一些具有这种模式的元素:

<div data-image="{imageurl}" ...></div>

我想将此元素 background-image 设置为 data-image。我测试这个 CSS 代码:

div[data-image] {
    border: 2px solid black;
    background-image: attr(data-image url);
}

边框显示正确但背景没有任何反应 如何仅使用 css(而不是 js 或 jq)修复此代码?

最佳答案

data- 属性(或一般的 attr() 方法)的一个很好的替代方法是使用自定义属性 ( MDN , csswg , css-tricks ).

由于它们的值不限于字符串,我们可以传递任何允许作为自定义属性值的类型!

此外,您还可以通过样式表交换在运行时更新这些属性。

.kitten {
  width: 525px;
  height: 252px;
  background-image: var(--bg-image);
}
<div  class="kitten"
      style="--bg-image: url('http://placekitten.com/525/252');">
</div>

关于html - CSS 通过数据图像属性设置背景图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44153391/

相关文章:

html - 将类分配给 HTML 中的单个 td 元素

javascript - 选择选项后如何使单选按钮显示为选中状态(CSS)

css - 分页列布局

javascript - 如何使用 require Js 和 Backbone 加载动态 View css 文件

javascript - 如何在CSS中显示有限的文本

jquery - 如何让图片越过导航栏?

html - 对齐容器 div

java - Android 图像未从图像 URL 显示到 ImageView

html - HTTP 空间请求中的 URLencoding

php - 尝试使用 Php-MySQL 从数据库检索视频 URL 并将其显示在浏览器上