使用 CSS : 伪元素:after、过渡动画transition实现过渡效果(鼠标悬浮或点击 标签时,底部边框从左到右过渡)

首先,给 <span> 标签添加一个父元素,定义属性类名:nav-wrapper ,父级设置相对定位。然后,使用 ::after 伪元素来创建一个与底部边框相同宽度的元素,初始时宽度为 0,通过过渡动画transitio n逐渐增加宽度,从而实现从左到右的过渡效果。

html 复制代码
 <div class="nav-wrapper">

     <span class="nav" :class="$route.fullPath === '/companyProducts' ? 'active' : ''">公司产品</span>

</div>
javascript 复制代码
.nav-wrapper {
  position: relative;
}

.nav::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 2px;
  background-color: red;
  transition: width 0.3s ease;
}

.nav:hover::after,
.nav:focus::after {
  width: 100%;
}

//当前路由样式
.active {
        color: #cd1e19;
        font-weight: 700;

      }
相关推荐
豹哥学前端7 分钟前
事件循环(Event Loop)深度解析:让你彻底搞懂 JS 的执行顺序
前端·javascript·面试
前端不开发20 分钟前
用一个 Bookmarklet(书签脚本),给任意网页挂一个可拖拽悬浮窗
前端·javascript
接着奏乐接着舞35 分钟前
【无标题】
开发语言·前端·javascript
biubiubiu_LYQ36 分钟前
萌新小白基础篇之CSS定位布局(干货满满)!
css
Ian在掘金36 分钟前
SSE 还是 WebSocket?从 AI 流式输出聊到实时通信选型
前端·人工智能
雨雨雨雨雨别下啦37 分钟前
心理健康AI助手 - 项目总结
前端·javascript·vue.js·人工智能·信息可视化
PILIPALAPENG38 分钟前
第4周 Day 3:多 Agent 协作——让 Agent 们"组队干活"
前端·人工智能·python
小江的记录本1 小时前
【Java基础】核心关键字:final、static、volatile、synchronized、transient(附《思维导图》+《面试高频考点清单》)
java·前端·数据结构·后端·ai·面试·ai编程
风之舞_yjf1 小时前
Vue基础(32)_TodoList案例
前端·javascript·vue.js