Deprecated: imwpcache\f884414bce24ee67f\f73723ec7b1919fa5::__construct(): Implicitly marking parameter $YECBGYFECGEAFWHA as nullable is deprecated, the explicit nullable type must be used instead in /www/wwwroot/www.chuangxiangniao.com/wp-content/plugins/imwpcache-dist/build/f884414bce24ee67ff73723ec7b1919fa5.php on line 2

Deprecated: imwpcache\f884414bce24ee67f\f73723ec7b1919fa5::__construct(): Implicitly marking parameter $BBWFDDBHHYHDXXAB as nullable is deprecated, the explicit nullable type must be used instead in /www/wwwroot/www.chuangxiangniao.com/wp-content/plugins/imwpcache-dist/build/f884414bce24ee67ff73723ec7b1919fa5.php on line 2
如何用css实现水平导航栏下划线动画_创想鸟

如何用css实现水平导航栏下划线动画

答案:通过CSS伪元素和过渡实现下划线动画。使用::after创建下划线,初始宽度为0,hover时扩展至100%,配合transition实现平滑伸展;居中展开则通过left:50%到left:0并结合width变化或transform:scaleX实现。

如何用css实现水平导航栏下划线动画

实现水平导航栏下划线动画,关键是使用CSS的::after或::before伪元素配合过渡(transition)或动画(animation)效果。当用户将鼠标悬停在菜单项上时,显示一条从左到右(或居中展开)的下划线,并带有平滑动画。

1. 基本HTML结构

一个简单的水平导航栏结构:

2. CSS基础样式

先设置导航项的基本样式,使其横向排列,并移除默认下划线:

.navbar {  display: flex;  gap: 30px;  padding: 20px;  background-color: #f8f8f8;}.nav-link {  text-decoration: none;  color: #333;  position: relative;  font-size: 16px;}

3. 添加下划线动画效果

使用::after伪元素创建下划线,并通过transform和transition实现动画。

立即学习“前端免费学习笔记(深入)”;

稿定抠图 稿定抠图

AI自动消除图片背景

稿定抠图 76 查看详情 稿定抠图

.nav-link::after {  content: '';  position: absolute;  left: 0;  bottom: -5px;  width: 0;  height: 2px;  background-color: #007bff;  transition: width 0.3s ease;}.nav-link:hover::after {  width: 100%;}

说明:初始状态下下划线宽度为0,悬停时扩展到100%,产生“伸展”动画效果。

4. 可选:更炫的居中展开动画

如果想让下划线从中间向两边展开,可以这样设置:

.nav-link::after {  content: '';  position: absolute;  left: 50%;  bottom: -5px;  width: 0;  height: 2px;  background-color: #007bff;  transition: width 0.3s ease, left 0.3s ease;}.nav-link:hover::after {  width: 100%;  left: 0;}

原理:开始时left: 50%且width: 0,悬停后变为left: 0并width: 100%,视觉上就是从中向两边展开。

提示:可结合transform: scaleX()实现更流畅的性能表现,例如:

.nav-link::after {  transform: scaleX(0);  transform-origin: center;  transition: transform 0.3s ease;}.nav-link:hover::after {  transform: scaleX(1);}

基本上就这些,不复杂但容易忽略细节。

以上就是如何用css实现水平导航栏下划线动画的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1028366.html

赞 (0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
deepseek官网网页版入口_deepseek在线体验指南
上一篇 2025年12月2日 02:15:49
筑业软件打印异常处理
下一篇 2025年12月2日 02:15:51

相关推荐

发表回复

登录后才能评论
关注微信