制作导航栏图标菜单

在网站导航链接前添加图标,可以显著提升导航的视觉辨识度和用户体验。使用 fa-fw(固定宽度)类名可以使所有图标在水平方向对齐,让导航菜单更加整齐美观。

<nav class="navbar"> <ul class="nav-list"> <li><a href="/"><i class="fa-solid fa-house fa-fw"></i> 首页</a></li> <li><a href="/about"><i class="fa-solid fa-circle-info fa-fw"></i> 关于</a></li> <li><a href="/services"><i class="fa-solid fa-gear fa-fw"></i> 服务</a></li> <li><a href="/contact"><i class="fa-solid fa-envelope fa-fw"></i> 联系我们</a></li> </ul> </nav>

提示:结合 Bootstrap 等 CSS 框架使用效果更佳,可配合导航栏的 active 状态高亮当前页面。

社交分享按钮组

使用 FontAwesome 品牌图标制作社交媒体分享按钮,为每个平台搭配品牌主色,让分享按钮更加醒目。

<div class="share-buttons"> <a href="#" class="btn btn-dark"> <i class="fa-brands fa-github"></i> GitHub </a> <a href="#" class="btn btn-primary"> <i class="fa-brands fa-weixin"></i> 微信 </a> <a href="#" class="btn btn-info text-white"> <i class="fa-brands fa-weibo"></i> 微博 </a> <a href="#" class="btn btn-danger"> <i class="fa-brands fa-x-twitter"></i> Twitter </a> </div>

提示:品牌图标使用 fa-brands 前缀,仅免费版就包含 200+ 品牌图标。

星级评分组件

结合 JavaScript 和 FontAwesome 图标,实现交互式的星级评分组件。Solid 风格表示已选,Regular 风格表示未选。

<div class="star-rating" data-rating="3"> <i class="fa-solid fa-star" data-value="1" style="color:gold;cursor:pointer;"></i> <i class="fa-solid fa-star" data-value="2" style="color:gold;cursor:pointer;"></i> <i class="fa-solid fa-star" data-value="3" style="color:gold;cursor:pointer;"></i> <i class="fa-regular fa-star" data-value="4" style="cursor:pointer;"></i> <i class="fa-regular fa-star" data-value="5" style="cursor:pointer;"></i> </div> <script> document.querySelectorAll('.star-rating i').forEach(function(star) { star.addEventListener('click', function() { var val = this.dataset.value; var siblings = this.parentElement.querySelectorAll('i'); siblings.forEach(function(s) { s.className = s.dataset.value <= val ? 'fa-solid fa-star' : 'fa-regular fa-star'; if (s.dataset.value <= val) s.style.color = 'gold'; else s.style.color = ''; }); }); }); </script>

加载动画与过渡效果

利用 FontAwesome 内置的动画类名,可以为按钮、加载指示器等元素添加生动的动态效果。

<!-- 按钮加载状态 --> <button class="btn btn-primary" disabled> <i class="fa-solid fa-spinner fa-spin"></i> 加载中... </button> <!-- 页面加载指示器 --> <div class="text-center py-5"> <i class="fa-solid fa-circle-notch fa-spin fa-3x" style="color:#528dd7;"></i> <p class="mt-2">正在加载数据,请稍候...</p> </div> <!-- 不同动画效果展示 --> <div class="d-flex gap-3"> <i class="fa-solid fa-heart fa-beat" style="color:red"></i> <i class="fa-solid fa-bell fa-shake"></i> <i class="fa-solid fa-sun fa-fade"></i> <i class="fa-solid fa-flag fa-flip"></i> </div>

动画类名:fa-spin(旋转)、fa-pulse(脉冲)、fa-beat(跳动)、fa-fade(淡入淡出)、fa-beat-fade(跳动淡出)、fa-flip(翻转)、fa-shake(抖动)。

表单输入图标增强

在表单输入框内嵌入图标,可以直观地提示用户输入内容的类型,提升表单的可用性和美观度。

<div class="input-group mb-3"> <span class="input-group-text"> <i class="fa-solid fa-envelope"></i> </span> <input type="email" class="form-control" placeholder="请输入邮箱地址"> </div> <div class="input-group mb-3"> <span class="input-group-text"> <i class="fa-solid fa-lock"></i> </span> <input type="password" class="form-control" placeholder="请输入密码"> </div> <div class="input-group mb-3"> <span class="input-group-text"> <i class="fa-solid fa-user"></i> </span> <input type="text" class="form-control" placeholder="请输入用户名"> </div> <!-- 验证状态图标 --> <div class="mb-3"> <input type="text" class="form-control is-valid" placeholder="验证通过"> <i class="fa-solid fa-check-circle text-success"></i> </div>

响应式图标布局

结合 CSS Grid 或 Flexbox,FontAwesome 图标可以轻松实现响应式布局适配不同屏幕尺寸。

<div class="icon-grid" style="display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1rem;"> <div class="icon-item text-center p-3 border rounded"> <i class="fa-solid fa-house fa-2x"></i> <p class="mt-2 small">首页</p> </div> <div class="icon-item text-center p-3 border rounded"> <i class="fa-solid fa-user fa-2x"></i> <p class="mt-2 small">用户</p> </div> <div class="icon-item text-center p-3 border rounded"> <i class="fa-solid fa-gear fa-2x"></i> <p class="mt-2 small">设置</p> </div> <div class="icon-item text-center p-3 border rounded"> <i class="fa-solid fa-bell fa-2x"></i> <p class="mt-2 small">通知</p> </div> <div class="icon-item text-center p-3 border rounded"> <i class="fa-solid fa-envelope fa-2x"></i> <p class="mt-2 small">邮件</p> </div> <div class="icon-item text-center p-3 border rounded"> <i class="fa-solid fa-chart-bar fa-2x"></i> <p class="mt-2 small">统计</p> </div> </div>

响应式布局的优势:桌面端显示多列网格,平板和手机端自动减少列数,图标始终居中显示。

分享此页:

相关阅读