一、Bootstrap 导航栏
1.1 基本导航栏
导航栏一般放在页面的顶部。我们可以使用 .navbar 类来创建一个标准的导航栏,后面紧跟: .navbar-expand-xl|lg|md|sm类来创建响应式的导航栏 (大屏幕水平铺开,小屏幕垂直堆叠)。导航栏上的选项可以使用<ul>元素并添加 class="navbar-nav"类。 然后在 <li> 元素上添加 .nav-item 类, <a> 元素上使用 .nav-link 类:
<nav class="navbar navbar-expand-sm bg-light"><ul class="navbar-nav"><li class="nav-item"><a class="nav-link" href="#">Link 1</a></li><li class="nav-item"><a class="nav-link" href="#">Link 2</a></li><li class="nav-item"><a class="nav-link" href="#">Link 3</a></li></ul></nav>
1.2 垂直导航栏
<nav class="navbar bg-light"><ul class="navbar-nav"><li class="nav-item"><a class="nav-link" href="#">Link 1</a></li><li class="nav-item"><a class="nav-link" href="#">Link 2</a></li><li class="nav-item"><a class="nav-link" href="#">Link 3</a></li></ul></nav>
1.3 不同颜色导航栏
<nav class="navbar navbar-expand-sm bg-light navbar-light"><ul class="navbar-nav"><li class="nav-item active"><a class="nav-link" href="#">Active</a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item"><a class="nav-link disabled" href="#">Disabled</a></li></ul></nav><nav class="navbar navbar-expand-sm bg-dark navbar-dark"><ul class="navbar-nav"><li class="nav-item active"><a class="nav-link" href="#">Active</a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item"><a class="nav-link disabled" href="#">Disabled</a></li></ul></nav><nav class="navbar navbar-expand-sm bg-primary navbar-dark"><ul class="navbar-nav"><li class="nav-item active"><a class="nav-link" href="#">Active</a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item"><a class="nav-link disabled" href="#">Disabled</a></li></ul></nav><nav class="navbar navbar-expand-sm bg-success navbar-dark"><ul class="navbar-nav"><li class="nav-item active"><a class="nav-link" href="#">Active</a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item"><a class="nav-link disabled" href="#">Disabled</a></li></ul></nav><nav class="navbar navbar-expand-sm bg-info navbar-dark"><ul class="navbar-nav"><li class="nav-item active"><a class="nav-link" href="#">Active</a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item"><a class="nav-link disabled" href="#">Disabled</a></li></ul></nav><nav class="navbar navbar-expand-sm bg-warning navbar-dark"><ul class="navbar-nav"><li class="nav-item active"><a class="nav-link" href="#">Active</a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item"><a class="nav-link disabled" href="#">Disabled</a></li></ul></nav><nav class="navbar navbar-expand-sm bg-danger navbar-dark"><ul class="navbar-nav"><li class="nav-item active"><a class="nav-link" href="#">Active</a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item"><a class="nav-link disabled" href="#">Disabled</a></li></ul></nav><nav class="navbar navbar-expand-sm bg-secondary navbar-dark"><ul class="navbar-nav"><li class="nav-item active"><a class="nav-link" href="#">Active</a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item"><a class="nav-link disabled" href="#">Disabled</a></li></ul></nav>
1.4 品牌/Logo
.navbar-brand 类用于高亮显示品牌/Logo:
<nav class="navbar navbar-expand-sm bg-dark navbar-dark"><!-- Brand/logo --><a class="navbar-brand" href="#">Logo</a><!-- Links --><ul class="navbar-nav"><li class="nav-item"><a class="nav-link" href="#">Link 1</a></li><li class="nav-item"><a class="nav-link" href="#">Link 2</a></li><li class="nav-item"><a class="nav-link" href="#">Link 3</a></li></ul></nav>
如果使用图片,可以使用 .navbar-brand 类来设置图片自适应导航栏。
<nav class="navbar navbar-expand-sm bg-dark navbar-dark"><!-- Brand/logo --><a class="navbar-brand" href="#"><img src="/images/mix/bird.jpg" alt="logo" style="width:40px;"></a><!-- Links --><ul class="navbar-nav"><li class="nav-item"><a class="nav-link" href="#">Link 1</a></li><li class="nav-item"><a class="nav-link" href="#">Link 2</a></li><li class="nav-item"><a class="nav-link" href="#">Link 3</a></li></ul></nav>
1.5 折叠导航栏
通常,小屏幕上我们都会折叠导航栏,通过点击来显示导航选项。
要创建折叠导航栏,可以在按钮上添加 class=“navbar-toggler”, data-toggle=“collapse” 与 data-target="#thetarget" 类。然后在设置了 class=“collapse navbar-collapse” 类的 div 上包裹导航内容(链接), div 元素上的 id 匹配按钮 data-target 的上指定的 id:
<nav class="navbar navbar-expand-md bg-dark navbar-dark"><a class="navbar-brand" href="#">Navbar</a><button class="navbar-toggler" type="button" data-toggle="collapse" data-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="#">Link</a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li> </ul></div> </nav>
1.6 导航栏使用下拉菜单
<nav class="navbar navbar-expand-sm bg-dark navbar-dark"><!-- Brand --><a class="navbar-brand" href="#">Logo</a><!-- Links --><ul class="navbar-nav"><li class="nav-item"><a class="nav-link" href="#">Link 1</a></li><li class="nav-item"><a class="nav-link" href="#">Link 2</a></li><!-- Dropdown --><li class="nav-item dropdown"><a class="nav-link dropdown-toggle" href="#" id="navbardrop" data-toggle="dropdown">Dropdown link</a><div class="dropdown-menu"><a class="dropdown-item" href="#">Link 1</a><a class="dropdown-item" href="#">Link 2</a><a class="dropdown-item" href="#">Link 3</a></div></li></ul></nav>
<nav class="navbar navbar-expand-sm bg-dark navbar-dark"><form class="form-inline"><input class="form-control" type="text" placeholder="Search"><button class="btn btn-success" type="button">Search</button></form></nav>
你也可以使用其他的输入框类,如 .input-group-addon 类用于在输入框前添加小标签。
<nav class="navbar navbar-expand-sm bg-dark navbar-dark"><form class="form-inline"><div class="input-group"><span class="input-group-addon">@</span><input type="text" class="form-control" placeholder="Username"></div> </form></nav>
1.8 导航栏文本
使用 .navbar-text 类来设置导航栏上非链接文本,可以保证水平对齐,颜色与内边距一样。
<nav class="navbar navbar-expand-sm bg-dark navbar-dark"><!-- Links --><ul class="navbar-nav"><li class="nav-item"><a class="nav-link" href="#">Link 1</a></li><li class="nav-item"><a class="nav-link" href="#">Link 2</a></li></ul><!-- Navbar text--><span class="navbar-text">Navbar text</span>
1.9 固定导航栏
导航栏可以固定在头部或者底部。
我们使用 .fixed-top 类来实现导航栏的固定:
<nav class="navbar navbar-expand-sm bg-dark navbar-dark fixed-top"><a class="navbar-brand" href="#">Logo</a><ul class="navbar-nav"><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li></ul></nav><div class="container-fluid" style="margin-top:80px"><h3>固定导航栏</h3><p>导航栏可以固定在头部或者底部。</p><h1>滚动页面查看效果。</h1></div>
.fixed-bottom 类用于设置导航栏固定在底部:
<nav class="navbar navbar-expand-sm bg-dark navbar-dark fixed-bottom"><a class="navbar-brand" href="#">Logo</a><ul class="navbar-nav"><li class="nav-item"><a class="nav-link" href="javascript:void(0)">Link</a></li><li class="nav-item"><a class="nav-link" href="javascript:void(0)">Link</a></li></ul></nav><div class="container-fluid"><h3>底部固定导航栏</h3><p>导航栏可以固定在头部或者底部。</p><h1>滚动页面查看效果。</h1></div>