实战导航栏布局
把前面的知识串起来,做一个经典顶部导航:左边 logo,中间菜单,右边按钮。整条导航用 flex 横排,logo 与按钮组固定,菜单用 flex:1 居中撑开。
几个细节值得注意:
- 导航高度固定,配合
align-items: center让所有子项垂直居中,不需要算行高。 - 菜单项之间的间距用
gap(容器属性)代替逐个写 margin,更干净。 - 悬停效果放在
a:hover上,配合过渡(下一课程内容)会更顺滑。 - 窄屏下想让菜单收起,只需在媒体查询里改 flex-direction,这就是 Flex + 响应式的基本套路。
本节要点导航结构 = logo + 弹性菜单 + 操作区;中间
flex:1 撑开、space-between 也可实现两端分布;子项间距优先用 gap。CSS
<style> .nav { display: flex; align-items: center; /* 垂直居中 */ gap: 20px; /* 子项间距 */ height: 56px; padding: 0 20px; background: #1f2937; color: #fff; } .logo { font-weight: bold; } .menu { flex: 1; /* 占据中间全部空间 */ display: flex; justify-content: center; gap: 24px; } .menu a { color: #cbd5e1; text-decoration: none; } .menu a:hover { color: #fff; } .login { background: #4a9eff; padding: 6px 16px; color: #fff; } </style> <nav class="nav"> <span class="logo">前端Wiki</span> <div class="menu"> <a href="#">HTML</a><a href="#">CSS</a><a href="#">JS</a> </div> <a class="login">登录</a> </nav>
📚 推荐阅读
来自万象云档的免费在线书籍,点击封面直接阅读




