【问题标题】:How to make transition work while using the CSS background-clip property如何在使用 CSS background-clip 属性时进行转换
【发布时间】:2021-06-24 23:12:00
【问题描述】:

所以我有一个渐变段落,我正在使用背景剪辑:文本,但是,我希望它在出现时淡入。当我尝试在不透明度上设置过渡时,它不会像预期的那样淡入,而是立即出现。我希望不透明度从 0 过渡到 1。

let counter = 0;

document.addEventListener('click', () => {
  counter = counter + 1;
  document.querySelector(`#line-${counter}`).style.opacity = 1;
});
.text-container {
  color: #5ca17c;
  transition: 1s;
  background: -webkit-linear-gradient(#f0ff1f, #0eff86);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.text {
  opacity: 0
 }
<div class="text-container">
  <ul>
    <li class="text" id="line-1">line 1</li>
    <li class="text" id="line-2">line 2</li>
    <li class="text" id="line-3">line 3</li>
  </ul>
</div>

当我删除 background-clip 属性时,一切正常。我将如何使用background-clip: text 进行这项工作?我需要渐变跨越整个列表而不是逐行。

【问题讨论】:

  • 一个有点令人困惑的问题.. 您需要在单击时平滑地显示项目文本吗?
  • 是的,抱歉。我希望不透明度从 0 顺利过渡到 1。如果我删除背景剪辑,它会按预期工作。
  • 您还没有添加 CSS transition 属性,那么您为什么希望它转换?
  • transition: 1s 在 .text-container 类下。

标签: javascript html css css-transitions


【解决方案1】:

当你给 .text 一个转换时它会起作用

代码如下:

let counter = 0;

document.addEventListener('click', () => {
  counter = counter + 1;
  document.querySelector(`#line-${counter}`).style.opacity = 1;
});
.text-container {
  color: #5ca17c;
  background: -webkit-linear-gradient(#f0ff1f, #0eff86);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.text {
  opacity: 0;
  transition: all 1s;
 }
<div class="text-container">
  <ul>
    <li class="text" id="line-1">line 1</li>
    <li class="text" id="line-2">line 2</li>
    <li class="text" id="line-3">line 3</li>
  </ul>
</div>

【讨论】:

  • 仍然不能完全正常工作——项目符号点正确淡入,但对我来说不是文本。
  • 文本没有正确淡入是什么意思?
  • 它只是在 1s 之后瞬间出现,而不是像项目符号那样淡入。运行代码sn-p,点击查看。
  • 我真的不知道你想要什么。我仔细查看了sn-p,没有发现任何问题。我完全按照你的描述做了。如果您不喜欢它,那么只需在 google 上编写 css 过渡 即可。这并不难做到。如果您仍然没有找到解决方案,请正确描述您的问题。从opacity: 0;opacity: 1; 的转换实际上是一个淡入淡出。
猜你喜欢
  • 1970-01-01
  • 2020-09-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-07
  • 2018-12-14
  • 2013-08-15
  • 1970-01-01
相关资源
最近更新 更多