Bootstrap 5 导航栏
导航栏
导航栏一般放在页面的顶部:
基础导航栏
使用 Bootstrap,导航栏可以扩展或折叠,具体取决于屏幕大小。
我们可以使用 .navbar
类来创建一个标准的导航栏,后面紧跟: .navbar-expand-xxl|xl|lg|md|sm
类来创建响应式的导航栏 (大屏幕水平铺开,小屏幕垂直堆叠)。
导航栏上的选项可以使用 <ul>
元素 (或 <div>
) 并添加 class="navbar-nav"
类。 然后在 <li>
元素上添加 .nav-item
类,<a>
元素上使用 .nav-link
类:
实例
<!-- 在小屏幕上变为垂直的灰色水平导航栏 -->
<nav class="navbar navbar-expand-sm bg-light">
<div class="container-fluid">
<!-- Links -->
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link" href="#">链接 1</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">链接 2</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">链接 3</a>
</li>
</ul>
</div>
</nav>
亲自试一试 »
垂直导航栏
通过删除 .navbar-expand-*
类来创建垂直导航栏:
居中对齐的导航栏
通过添加 .justify-content-center
类来创建居中对齐的导航栏:
不同颜色导航栏
可以使用以下类来创建不同颜色导航栏 (.bg-primary
,
.bg-success
, .bg-info
, .bg-warning
, .bg-danger
, .bg-secondary
, .bg-dark
和 .bg-light
)
提示: 对于暗色背景 .navbar-dark
需要设置文本颜色为浅色的,对于浅色背景 .navbar-light
需要设置文本颜色为深色的。
实例
<!-- 灰色配黑色文字 -->
<nav class="navbar navbar-expand-sm bg-light navbar-light">
<div class="container-fluid">
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link active" href="#">Active</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">链接</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">链接</a>
</li>
<li class="nav-item">
<a class="nav-link disabled" href="#">Disabled</a>
</li>
</ul>
</div>
</nav>
<!-- 黑底白字 -->
<nav class="navbar navbar-expand-sm bg-dark navbar-dark">...</nav>
<!-- 蓝色背景,白色文字 -->
<nav class="navbar navbar-expand-sm bg-primary navbar-dark">...</nav>
亲自试一试 »
激活和禁用状态: 可以在 <a>
元素上添加 .active
类来高亮显示选中的选项。 .disabled
类用于设置该链接是不可点击的。
品牌 / Logo
.navbar-brand
类用于高亮显示品牌/Logo:
实例
<nav class="navbar navbar-expand-sm bg-dark navbar-dark">
<div class="container-fluid">
<a class="navbar-brand" href="#">Logo</a>
</div>
</nav>
亲自试一试 »
可以使用 .navbar-brand
类来设置图片自适应导航栏。
实例
<nav class="navbar navbar-expand-sm bg-dark navbar-dark">
<div class="container-fluid">
<a class="navbar-brand" href="#">
<img src="logo.png" alt="Avatar Logo" style="width:40px;" class="rounded-pill">
</a>
</div>
</nav>
亲自试一试 »
导航栏文本
使用 .navbar-text
类来设置导航栏上非链接文本,可以保证水平对齐,颜色与内边距一样。
实例
<nav class="navbar navbar-expand-sm bg-dark navbar-dark">
<div class="container-fluid">
<span class="navbar-text">Navbar text</span>
</div>
</nav>
亲自试一试 »
折叠导航栏
通常,小屏幕上我们都会折叠导航栏,通过点击来显示导航选项。
要创建折叠导航栏,可以在按钮上添加 class="navbar-toggler",
data-bs-toggle="collapse" and data-bs-target="#thetarget"
类。然后在设置了
class="collapse navbar-collapse"
类的 div 上包裹导航内容(链接),
div 元素上的 id 匹配按钮 data-bs-target
的上指定的 id。
实例
<nav class="navbar navbar-expand-sm bg-dark navbar-dark">
<div class="container-fluid">
<a class="navbar-brand" href="#">Logo</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#collapsibleNavbar">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="collapsibleNavbar">
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link" href="#">链接</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">链接</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">链接</a>
</li>
</ul>
</div>
</div>
</nav>
亲自试一试 »
提示: 您还可以删除 .navbar-expand-md
类以始终隐藏导航栏链接并显示切换按钮。
导航栏使用下拉菜单
导航栏上可以设置下拉菜单:
实例
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown">Dropdown</a>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="#">链接</a></li>
<li><a class="dropdown-item" href="#">另一个链接</a></li>
<li><a class="dropdown-item" href="#">第三个链接</a></li>
</ul>
</li>
亲自试一试 »
导航栏的表单与按钮
导航栏的表单 <form> 元素使用 class="form-inline" 类来排版输入框与按钮:
还可以在导航栏中包含表单:
实例
<nav class="navbar navbar-expand-sm navbar-dark bg-dark">
<div class="container-fluid">
<a class="navbar-brand" href="javascript:void(0)">Logo</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#mynavbar">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="mynavbar">
<ul class="navbar-nav me-auto">
<li class="nav-item">
<a class="nav-link" href="javascript:void(0)">链接</a>
</li>
<li class="nav-item">
<a class="nav-link" href="javascript:void(0)">链接</a>
</li>
<li class="nav-item">
<a class="nav-link" href="javascript:void(0)">链接</a>
</li>
</ul>
<form class="d-flex">
<input class="form-control me-2" type="text" placeholder="Search">
<button class="btn btn-primary" type="button">Search</button>
</form>
</div>
</div>
</nav>
亲自试一试 »
固定导航栏
导航栏可以固定在头部或者底部。
固定导航栏在固定位置(顶部或底部)保持可见,与页面滚动无关。
使用 .fixed-top
类来实现导航栏的固定在顶部:
使用 .fixed-bottom
类用于设置导航栏固定在底部:
使用 .sticky-top
类使导航栏在滚动页面时固定/停留在页面顶部。注意:该类在IE11及更早版本中不起作用(将其视为 position:relative
)。