如何在悬停时减慢文本播放速度?

Blu*_*bug 1 html css pseudo-element css-transitions

我正在尝试制作一个按钮,其中文本仅在悬停时出现在另一个文本之前。我做到了这一点,但不能拖延。

看看“让我们”这个词出现的速度有多快。需要放慢速度。

.btn {
  width: 100px;
  height: 100px;
  border: none;
  background-color: mediumseagreen;
  transition: width 0.5s ease;
}

.btn:hover {
  width: 200px;
}

.btn:hover::before {
  content: "Let's ";
}
Run Code Online (Sandbox Code Playgroud)
<button class="btn">
Go
</button>
Run Code Online (Sandbox Code Playgroud)

我尝试使用此答案在悬停 - 转换上切换链接文本,但它实际上正在替换原始文本,不是吗?

Tem*_*fif 6

您可以使文本最初呈现并创建宽度过渡,例如:

.btn {
  width: 100px;
  height: 100px;
  border: none;
  background-color: mediumseagreen;
  transition: width 0.5s ease;
}

.btn:hover {
  width: 200px;
}

.btn::before {
  display:inline-block;
  vertical-align:text-bottom;
  content: "Let's ";
  max-width:0px;
  white-space:nowrap;
  overflow:hidden;
  transition:1s;
}
.btn:hover::before {
  max-width:50px;
}
Run Code Online (Sandbox Code Playgroud)
<button class="btn">
Go
</button>
Run Code Online (Sandbox Code Playgroud)


Bhu*_*wan 5

尝试transition-delayopacity

.btn {
  width: 100px;
  height: 100px;
  border: none;
  background-color: mediumseagreen;
  transition: width 0.5s ease;
}

.btn:hover {
  width: 200px;
}

.btn::before {
  opacity: 0;
  content: "Let's ";
  transition: all .3s linear 0s;
  position: absolute;
  transform: translateX(-110%);
}

.btn:hover::before {
  transition: all .5s linear .3s;
  opacity: 1;
}
Run Code Online (Sandbox Code Playgroud)
<button class="btn">Go</button>
Run Code Online (Sandbox Code Playgroud)