【问题标题】:How can I use the HTML data attribute in CSS as a property? [duplicate]如何将 CSS 中的 HTML 数据属性用作属性? [复制]
【发布时间】:2015-12-14 08:34:20
【问题描述】:

如何使用attr() 选择数据属性并根据值设置各种 CSS 属性?例如,我有这个 jsfiddle http://jsfiddle.net/rh1vfmso/ - 我通过 data-width 设置宽度,然后尝试通过 width: attr(data-width); 设置它

当我将内容设置为属性时它可以工作,但没有别的。如何根据 HTML 属性中设置的内容设置宽度?

<style type='text/css'>
input[type='checkbox']:checked ~ .size:before {
  content: attr(data-width);
  display: block;
  height: 30px;
  background-color: red;
  width: attr(data-width);
  /*width: 100px;*/
}
</style>

<div>    
  <input type='checkbox' id='resize'>
  <label for='resize'>Resize</label>
  <div class="size" data-width=100px></div>
</div>

【问题讨论】:

    标签: html css


    【解决方案1】:

    支持取决于给定浏览器的实现。如果它不起作用,那么它目前不受支持。

    根据MDN,对content 以外的属性的支持是实验性的:

    attr() 函数可以与任何 CSS 属性一起使用,但对 content 以外的属性的支持是实验性的。

    【讨论】:

    • d'oh 我应该检查一下兼容性图表。谢谢! (再过几分钟无法接受答案)
    • 更像是不存在的大声笑。看看我刚刚标记的欺骗。
    • @BoltClock 不错。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-19
    • 2011-07-08
    相关资源
    最近更新 更多