CSS3 动画导航是网站设计中常用的导航效果,它可以增强页面的交互性和视觉效果,让用户更加方便地使用网站。下面我们来学习一下如何实现CSS3 动画导航。
/* 导航样式 */ nav{ height: 80px; width: 100%; background-color: #f44336; position: fixed; top: 0; z-index: 1; overflow: hidden; display: flex; justify-content: space-between; align-items: center; padding: 0 20px; } /* 导航标签样式 */ nav a{ text-decoration: none; font-size: 18px; color: #fff; margin: 0 10px; position: relative; } /* 鼠标悬停时导航标签样式 */ nav a:hover{ color: #333; cursor: pointer; } /* 选中导航标签时样式 */ .active{ color: #333; font-weight: bold; } /* 下划线样式 */ nav a:after{ content: ""; position: absolute; bottom: -6px; left: 0; width: 100%; height: 2px; background-color: #fff; transform: scaleX(0); transition: transform 0.3s ease; } /* 鼠标悬停时下划线样式 */ nav a:hover:after{ transform: scaleX(1); } /* 选中导航标签时下划线样式 */ .active:after{ transform: scaleX(1); }
以上代码中,nav
元素定义了导航条的样式,包括高度、背景颜色、定位、层数、溢出和对齐方式等。导航标签则使用a
元素,设置了文本装饰、字体大小、颜色、边距、定位和状态等样式。
为了实现下划线动画效果,我们使用了:after
伪元素,其作用是在a
元素内容之后插入新内容。通过设置position: absolute
、bottom: -6px
和left: 0
,将下划线放置在导航标签文本的下方。为了实现动画效果,我们使用了CSS3的transform
属性,将下划线的宽度从0
变为100%。同时,通过transition
属性,将下划线的变化过程设置为0.3秒的缓动动画。
最后,我们在对应的导航标签添加.active
类,可以实现选中导航标签时下划线的连续效果。
通过上述代码的实现,我们可以轻易地创建一个简单的CSS3动画导航条,并提高网站的交互性和视觉效果,为用户提供更好的访问体验。