【问题标题】:How to dynamically alter the CSS of a pseudo element with JQuery?如何使用 JQuery 动态更改伪元素的 CSS?
【发布时间】:2016-04-18 10:07:28
【问题描述】:

我有一个伪元素,我想更改 top: 的:

.content:after {
  top: 30px; //this will change
}

变化量是可变的,用 JQuery 检索:

var $position = $(this).offset().top;

我知道您不能使用.css() 来更改伪元素 CSS,并且首选方法是切换现有类。但这不会适用,因为我班上的规则是动态的。

我对如何解决这个问题有点困惑。有人有什么建议吗?

【问题讨论】:

标签: jquery css


【解决方案1】:

:after 相当于在被选元素的末尾添加一个子元素。因此,如果可能的话,您可以将样式移动到一个新的子元素,您可以使用 JQuery 更改该子元素。所以你的 html 看起来像:

<div class="content">
    ... other content ...
    <div class="content-after"></div>
</div>

css:

.content > .content-after {
  top: 30px; 
}

【讨论】:

  • 是的,我认为这是唯一的方法。我避免了它,因为我 .content:after 允许我很好地将 filter: drop-shadow 扩展到伪元素
猜你喜欢
  • 1970-01-01
  • 2016-08-12
  • 1970-01-01
  • 1970-01-01
  • 2018-03-29
  • 1970-01-01
  • 1970-01-01
  • 2012-05-07
  • 1970-01-01
相关资源
最近更新 更多