值得一看
广告
彩虹云商城
广告

热门广告位

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

答案:通过CSS伪元素::after结合transform和transition实现导航栏下划线动画,1. 使用flex布局构建横向导航;2. 设置a标签相对定位;3. 利用::after创建初始宽度为0的下划线;4. hover时宽度变为100%,配合transition实现滑动效果;5. 通过left和transform控制展开方向,如居中展开需设置left:50%和translateX(-50%)。

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

实现导航栏下划线动画,可以通过 CSS 的伪元素(如 ::after::before)结合 transformtransition 来完成。点击或悬停时,下划线从一侧滑动出现,视觉效果流畅自然。

1. 基本 HTML 结构

假设导航栏由一个无序列表构成:

<nav>
<ul class="nav-list">
<li><a href="#">首页</a></li>
<li><a href="#">关于</a></li>
<li><a href="#">服务</a></li>
<li><a href="#">联系</a></li>
</ul>
</nav>

2. 基础样式设置

先给导航基本样式,隐藏默认列表符号,横向排列:

.nav-list {
list-style: none;
display: flex;
gap: 40px;
padding: 20px;
background: #f8f8f8;
}
.nav-list a {
text-decoration: none;
color: #333;
font-size: 16px;
position: relative;
padding: 10px 0;
}

3. 添加下划线动画效果

使用 ::after 伪元素创建下划线,初始状态隐藏,悬停时滑出:

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

来画数字人直播

来画数字人直播

来画数字人自动化直播,无需请真人主播,即可实现24小时直播,无缝衔接各大直播平台。

来画数字人直播0

查看详情
来画数字人直播

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

这样,鼠标移到链接上时,下划线会从左向右伸展。

4. 进阶:居中向两边展开

如果想让下划线从中部向左右两侧展开,调整伪元素的起点和 transform:

.nav-list a::after {
content: '';
position: absolute;
left: 50%;
bottom: 5px;
width: 0;
height: 2px;
background-color: #007acc;
transition: width 0.3s ease, left 0.3s ease;
transform: translateX(-50%);
}
.nav-list a:hover::after {
width: 100%;
left: 0;
}

利用 transform: translateX(-50%) 将下划线中心对齐,悬停时宽度撑满,视觉上就是从中向两边展开。

基本上就这些。通过控制伪元素的宽、位置和过渡效果,就能做出各种风格的下划线动画,不复杂但容易忽略细节。比如确保父元素是相对定位,伪元素才能准确定位。

相关标签:

css html 伪元素 flex布局 排列 a标签 相对定位 css html 伪元素 transform transition flex

大家都在看:

在css中实现多列新闻列表布局
在css中CSS Grid与框架结合使用
css引入方式外部与内部区别如何选择
在css中如何使用@import引入样式
在css中使用框架减少重复CSS代码
温馨提示: 本文最后更新于2025-10-26 11:27:56,某些文章具有时效性,若有错误或已失效,请在下方留言或联系在线客服
文章版权声明 1 本网站名称: 创客网
2 本站永久网址:https://new.ie310.com
1 本文采用非商业性使用-相同方式共享 4.0 国际许可协议[CC BY-NC-SA]进行授权
2 本站所有内容仅供参考,分享出来是为了可以给大家提供新的思路。
3 互联网转载资源会有一些其他联系方式,请大家不要盲目相信,被骗本站概不负责!
4 本网站只做项目揭秘,无法一对一教学指导,每篇文章内都含项目全套的教程讲解,请仔细阅读。
5 本站分享的所有平台仅供展示,本站不对平台真实性负责,站长建议大家自己根据项目关键词自己选择平台。
6 因为文章发布时间和您阅读文章时间存在时间差,所以有些项目红利期可能已经过了,能不能赚钱需要自己判断。
7 本网站仅做资源分享,不做任何收益保障,创业公司上收费几百上千的项目我免费分享出来的,希望大家可以认真学习。
8 本站所有资料均来自互联网公开分享,并不代表本站立场,如不慎侵犯到您的版权利益,请联系79283999@qq.com删除。

本站资料仅供学习交流使用请勿商业运营,严禁从事违法,侵权等任何非法活动,否则后果自负!
THE END
喜欢就支持一下吧
点赞14赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容