一个前端vue3文字hover效果

效果

组件代码

javascript 复制代码
<template>
  <span class="word-text" :style="[
    { transitionDuration: `${props.speed}ms` }
  ]">
    <slot></slot>
  </span>
</template>
  
<script setup>
const props = defineProps({
  // 动画速率 单位ms
  speed: {
    type: Number,
    default: 1000
  }
});
</script>
  
<style scoped>
.word-text {
  color: #ccc;
  background: linear-gradient(to right, #000, #000) no-repeat right bottom;
  background-size: 0% 2px;
  transition: background-size;
}
.word-text:hover {
  background-position-x: left;
  background-size: 100% 2px;
}
</style>

使用

javascript 复制代码
<template>
  <WordLine>你好我是文字啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊</WordLine>
</template>
  
<script setup>
import WordLine from "./WordLine.vue";
</script>
  
相关推荐
稀饭525 小时前
用changeset来管理你的npm包版本
前端·npm
TeamDev5 小时前
基于 Angular UI 的 C# 桌面应用
前端·后端·angular.js
卡尔特斯5 小时前
CSS 特殊符号 / 英文导致换行问题速查表
css
Komorebi゛6 小时前
【CSS】斜角流光样式
前端·css
Irene19916 小时前
CSS 废弃属性分类总结
前端·css
青莲8436 小时前
Android 事件分发机制 - 事件流向详解
android·前端·面试
musashi6 小时前
用 Electron 写了一个 macOS 版本的 wallpaper(附源码、下载地址)
前端·vue.js·electron
满天星辰6 小时前
Typescript之类型总结大全
前端·typescript
JFChen6 小时前
Web 仔用 Node 像 Java 一样写后端服务
前端
XiaoSong6 小时前
React useState 原理和异步更新
前端·react.js