目录
在 Bootstrap 5 中,折叠效果可以通过添加特定的属性和类来轻松实现内容的显示和隐藏。具体步骤如下:
1、创建一个可折叠的元素,通常使用
- <div class="collapse" id="demo">
-
- ...
- div>
2、在按钮或链接中添加 data-bs-toggle="collapse" 属性,以触发折叠效果,并使用 data-bs-target="#id" 或 href="#id" 属性将按钮或链接与要折叠的元素关联起来。
- <button type="button" data-bs-toggle="collapse" data-bs-target="#demo">
- 点击我
- button>
或者,也可以使用 元素代替
- <a href="#demo" data-bs-toggle="collapse">
- 点击我
- a>
3、默认情况下,折叠元素的内容是隐藏的。如果想要默认显示内容,可以在折叠元素的
- <div class="collapse show" id="demo">
-
- ...
- div>
通过在按钮或链接上添加 data-bs-toggle="collapse" 和 data-bs-target="#demo"(或使用 href),单击按钮或链接时,折叠元素的内容将显示或隐藏。如果您想要默认显示内容,可以在折叠元素的
- html>
- <html>
- <head>
- <title>Bootstrap5 实例title>
- <meta charset="utf-8">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.2/dist/css/bootstrap.min.css" rel="stylesheet">
- <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.2/dist/js/bootstrap.bundle.min.js">script>
- head>
- <body>
- <div class="container mt-3">
- <h2>基础的折叠h2>
- <h3>默认显示内容h3>
- <button type="button" class="btn btn-primary" data-bs-toggle="collapse" data-bs-target="#demo">
- 点击我
- button><br />
- <div class="collapse show" id="demo">
- <div class="card card-body">
- 这是折叠的内容
- div>
- div>
- <h3>内容是隐藏的h3>
- <a href="#demo1" data-bs-toggle="collapse">
- 点击我
- a>
- <div class="collapse" id="demo1">
- <div class="card card-body">
- 这是折叠的内容
- div>
- div>
- div>
-
- body>
- html>
运行结果

注意:使用 data-bs-parent 属性确保当显示可折叠项目之一时,会关闭指定父项下的所有可折叠元素。
- html>
- <html>
- <head>
- <title>Bootstrap5 实例title>
- <meta charset="utf-8">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.2/dist/css/bootstrap.min.css" rel="stylesheet">
- <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.2/dist/js/bootstrap.bundle.min.js">script>
- head>
- <body>
- <div class="container mt-3">
- <div id="accordion">
- <div class="card">
- <div class="card-header" id="headingOne">
- <h5 class="mb-0">
- <button class="btn btn-link" data-bs-toggle="collapse" data-bs-target="#collapseOne"
- aria-expanded="true" aria-controls="collapseOne">
- 折叠项 1
- button>
- h5>
- div>
-
- <div id="collapseOne" class="collapse show" aria-labelledby="headingOne"
- data-bs-parent="#accordion">
- <div class="card-body">
- 这是折叠项 1 的内容
- div>
- div>
- div>
-
- <div class="card">
- <div class="card-header" id="headingTwo">
- <h5 class="mb-0">
- <button class="btn btn-link collapsed" data-bs-toggle="collapse"
- data-bs-target="#collapseTwo" aria-expanded="false" aria-controls="collapseTwo">
- 折叠项 2
- button>
- h5>
- div>
-
- <div id="collapseTwo" class="collapse" aria-labelledby="headingTwo" data-bs-parent="#accordion">
- <div class="card-body">
- 这是折叠项 2 的内容
- div>
- div>
- div>
-
- <div class="card">
- <div class="card-header" id="headingThree">
- <h5 class="mb-0">
- <button class="btn btn-link collapsed" data-bs-toggle="collapse"
- data-bs-target="#collapseThree" aria-expanded="false" aria-controls="collapseThree">
- 折叠项 3
- button>
- h5>
- div>
-
- <div id="collapseThree" class="collapse" aria-labelledby="headingThree" data-bs-parent="#accordion">
- <div class="card-body">
- 这是折叠项 3 的内容
- div>
- div>
- div>
- div>
- div>
-
- body>
- html>
运行结果

如果要创建简单的水平菜单,可以在 元素上添加 .nav 类,在每个
- html>
- <html>
- <head>
- <title>Bootstrap5 实例title>
- <meta charset="utf-8">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.2/dist/css/bootstrap.min.css" rel="stylesheet">
- <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.2/dist/js/bootstrap.bundle.min.js">script>
- head>
- <body>
- <div class="container mt-3">
- <h2>简单的水平导航h2>
- <ul class="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>
- <li class="nav-item">
- <a class="nav-link disabled" href="#">禁用a>
- li>
- ul>
- div>
-
- body>
- html>
运行结果

在 Bootstrap 5 中,.justify-content-center 类可以用于将导航项居中显示,.justify-content-end 类可以用于将导航项右对齐。
- html>
- <html>
- <head>
- <title>Bootstrap5 实例title>
- <meta charset="utf-8">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.2/dist/css/bootstrap.min.css" rel="stylesheet">
- <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.2/dist/js/bootstrap.bundle.min.js">script>
- head>
- <body>
- <div class="container mt-3">
- <h2>导航对齐方式h2>
- <p>左对齐导航 (默认):p>
- <ul class="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>
- <li class="nav-item">
- <a class="nav-link disabled" href="#">禁用a>
- li>
- ul>
-
- <p class="text-center">居中对齐导航:p>
- <ul class="nav justify-content-center">
- <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>
- <li class="nav-item">
- <a class="nav-link disabled" href="#">禁用a>
- li>
- ul>
-
- <p class="text-end">右对齐导航:p>
- <ul class="nav justify-content-end">
- <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>
- <li class="nav-item">
- <a class="nav-link disabled" href="#">禁用a>
- li>
- ul>
- div>
-
- body>
- html>
运行结果

.flex-column 类可以用于创建垂直导航。通过将该类添加到 元素上,可以使导航项在垂直方向上排列。
- html>
- <html>
- <head>
- <title>Bootstrap5 实例title>
- <meta charset="utf-8">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.2/dist/css/bootstrap.min.css" rel="stylesheet">
- <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.2/dist/js/bootstrap.bundle.min.js">script>
- head>
- <body>
- <div class="container mt-3">
- <h2>垂直导航栏h2>
- <ul class="nav flex-column">
- <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>
- <li class="nav-item">
- <a class="nav-link disabled" href="#">禁用a>
- li>
- ul>
- div>
-
- body>
- html>
运行结果

注意:如果希望有淡入效果可以在 .tab-pane 后添加 .fade类。
- html>
- <html>
- <head>
- <title>Bootstrap5 实例title>
- <meta charset="utf-8">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.2/dist/css/bootstrap.min.css" rel="stylesheet">
- <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.2/dist/js/bootstrap.bundle.min.js">script>
- head>
- <body>
- <div class="container mt-3">
- <h2>动态选项卡h2>
- <ul class="nav nav-tabs" id="myTabs" role="tablist">
- <li class="nav-item" role="presentation">
- <a class="nav-link active" id="home-tab" data-bs-toggle="tab" href="#home" role="tab"
- aria-controls="home" aria-selected="true">首页a>
- li>
- <li class="nav-item" role="presentation">
- <a class="nav-link" id="profile-tab" data-bs-toggle="tab" href="#profile" role="tab"
- aria-controls="profile" aria-selected="false">个人资料a>
- li>
- <li class="nav-item" role="presentation">
- <a class="nav-link" id="messages-tab" data-bs-toggle="tab" href="#messages" role="tab"
- aria-controls="messages" aria-selected="false">消息a>
- li>
- ul>
-
- <div class="tab-content" id="myTabContent">
- <div class="tab-pane fade show active" id="home" role="tabpanel" aria-labelledby="home-tab">
- <h1>这是首页内容h1>
-
- div>
- <div class="tab-pane fade" id="profile" role="tabpanel" aria-labelledby="profile-tab">
- <h1>这是个人资料内容h1>
-
- div>
- <div class="tab-pane fade" id="messages" role="tabpanel" aria-labelledby="messages-tab">
- <h1>这是消息内容h1>
-
- div>
- div>
- div>
- body>
- html>
运行结果

只需将上面动态选项卡的实例的代码中 data-bs-toggle="tab"属性设置为 data-bs-toggle="pill"。
- html>
- <html>
- <head>
- <title>Bootstrap5 实例title>
- <meta charset="utf-8">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.2/dist/css/bootstrap.min.css" rel="stylesheet">
- <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.2/dist/js/bootstrap.bundle.min.js">script>
- head>
- <body>
- <div class="container mt-3">
- <h2>胶囊状动态选项卡h2>
- <ul class="nav nav-pills" id="myTabs" role="tablist">
- <li class="nav-item" role="presentation">
- <a class="nav-link active" id="home-tab" data-bs-toggle="pill" href="#home" role="tab"
- aria-controls="home" aria-selected="true">首页a>
- li>
- <li class="nav-item" role="presentation">
- <a class="nav-link" id="profile-tab" data-bs-toggle="pill" href="#profile" role="tab"
- aria-controls="profile" aria-selected="false">个人资料a>
- li>
- <li class="nav-item" role="presentation">
- <a class="nav-link" id="messages-tab" data-bs-toggle="pill" href="#messages" role="tab"
- aria-controls="messages" aria-selected="false">消息a>
- li>
- ul>
-
- <div class="tab-content" id="myTabContent">
- <div class="tab-pane fade show active" id="home" role="tabpanel" aria-labelledby="home-tab">
- <h1>这是首页内容h1>
-
- div>
- <div class="tab-pane fade" id="profile" role="tabpanel" aria-labelledby="profile-tab">
- <h1>这是个人资料内容h1>
-
- div>
- <div class="tab-pane fade" id="messages" role="tabpanel" aria-labelledby="messages-tab">
- <h1>这是消息内容h1>
-
- div>
- div>
- div>
- body>
- html>
运行结果

要创建等宽的选项卡/胶囊的下拉菜单,可以使用.nav-justified类对齐标签/胶囊。
- html>
- <html>
- <head>
- <title>Bootstrap5 实例title>
- <meta charset="utf-8">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.2/dist/css/bootstrap.min.css" rel="stylesheet">
- <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.2/dist/js/bootstrap.bundle.min.js">script>
- head>
- <body>
- <div class="container mt-3">
- <h1>等宽的选项卡/胶囊的下拉菜单h1>
- <h2>胶囊导航带下拉菜单h2>
- <ul class="nav nav-pills nav-justified">
- <li class="nav-item">
- <a class="nav-link active" href="#">首页a>
- li>
- <li class="nav-item dropdown">
- <a class="nav-link dropdown-toggle" data-bs-toggle="dropdown" href="#">个人资料a>
- <ul class="dropdown-menu">
- <li><a class="dropdown-item" href="#">个人资料 1a>li>
- <li><a class="dropdown-item" href="#">个人资料 2a>li>
- <li><a class="dropdown-item" href="#">个人资料 3a>li>
- ul>
- li>
- <li class="nav-item">
- <a class="nav-link" href="#">消息a>
- li>
- <li class="nav-item">
- <a class="nav-link disabled" href="#">禁用a>
- li>
- ul><br />
- <h2>选项卡下拉菜单h2>
- <ul class="nav nav-tabs nav-justified">
- <li class="nav-item">
- <a class="nav-link active" href="#">首页a>
- li>
- <li class="nav-item dropdown">
- <a class="nav-link dropdown-toggle" data-bs-toggle="dropdown" href="#">个人资料a>
- <div class="dropdown-menu">
- <a class="dropdown-item" href="#">个人资料 1a>
- <a class="dropdown-item" href="#">个人资料 2a>
- <a class="dropdown-item" href="#">个人资料 3a>
- div>
- li>
- <li class="nav-item">
- <a class="nav-link" href="#">消息a>
- li>
- <li class="nav-item">
- <a class="nav-link disabled" href="#">禁用a>
- li>
- ul>
- div>
-
- body>
- html>
运行结果
通过使用Bootstrap,可以创建一个可以根据屏幕大小扩展或折叠的导航栏。要创建标准导航栏,请使用.navbar类,然后使用.navbar-expand-xxl|xl|lg|md|sm(在特大、超大、大、中型设备上水平排列,或小屏幕上垂直堆叠导航栏)类来指定在不同设备上的排列方式。要添加链接,请使用带有.navbar-nav类的 运行结果 通过删除 .navbar-expand-xxl|xl|lg|md|sm 类来创建垂直导航栏。 运行结果 如果想要将导航栏的内容居中,可以使用 Bootstrap 的 .justify-content-center 类。这个类可以将 flexbox 容器中的项目在水平方向上居中。 运行结果 使用任何 .bg-color 类来更改导航栏的背景颜色:.bg-primary, .bg-success, .bg-info, .bg-warning, .bg-danger, .bg-secondary, .bg-dark和.bg-light。 如果你选择暗色背景,记得给.navbar元素添加.navbar-dark类,并为文本设置浅色。同样地,如果你选择浅色背景,给.navbar元素添加.navbar-light类,并为文本设置深色。这样可以确保背景和文本颜色之间有足够的对比度。 运行结果 可以使用.navbar-brand类来设置显示品牌/Logo的导航栏。这个类会为品牌/Logo添加一些样式,以确保它在导航栏中适当地显示。你可以将品牌/Logo作为图片或文本。注意:在 Bootstrap 中,品牌标识通常放置在导航栏的左侧,并作为第一个子元素。 运行结果 折叠导航栏可以通过以下步骤来创建: 这个示例代码中,按钮具有.navbar-toggler类,并通过data-bs-toggle和data-bs-target属性实现了折叠功能。导航内容包裹在一个具有.collapse navbar-collapse类的 运行结果 要在导航栏中使用下拉菜单,可以按照以下步骤进行操作: 在这个示例代码中,.dropdown类被应用于具有下拉菜单的导航选项。通过添加.dropdown-menu类的 运行结果 要在导航栏中添加表单和按钮,可以按照以下步骤进行操作: 注意:也可以使用其他的输入框类,如 .input-group-addon 类用于在输入框前添加小标签。 运行结果 在 Bootstrap 5 中,可以使用 .navbar-text 类来设置导航栏中的非链接文本。这个类可以应用于 或 等元素上,以确保文本在水平方向上对齐,并与导航栏中其他元素具有相同的颜色和内边距。 运行结果 在 Bootstrap 5 中,可以使用以下类来实现固定导航栏: 这样导航栏就会固定在页面的顶部。 需要注意的是,.sticky-top类在 IE11 及更早版本中不起作用,IE11 将其视为position:relative。但在现代浏览器中,这个类应该能够实现预期的效果。 运行结果 运行结果元素(或
实例

垂直导航栏
实例

居中对齐的导航栏
实例

不同颜色导航栏
实例

品牌/Logo
实例

折叠导航栏
实例

下拉菜单导航栏
实例
元素来创建下拉菜单的选项。下拉菜单通过具有data-bs-toggle属性并设置为dropdown的链接来触发。保存并在浏览器中打开该HTML文件,你将看到具有下拉菜单的导航栏。当你点击下拉菜单选项时,相应的操作将被触发。

导航栏菜单和按钮
实例

导航栏文本
实例

固定导航栏
这样导航栏就会固定在页面的底部。
这样导航栏会在滚动经过它时固定在页面的顶部。实例

导航栏案例
实例

【WIFI】【WPS】基础介绍(主要根据sniffer log角度和kernel log去介绍)
Nacos集群配置以及在springboot中使用
线程 yield()方法有什么用?
百亿积木市场,能跑出一个“中国乐高”?
【2024全新版】程序员必会英语词汇表
《数据结构与算法》之十大基础排序算法
企业架构LNMP学习笔记29
Vue 网络处理 - axios 异步请求的使用,请求响应拦截器(最佳实践)
java数组应用(栈和队列以及酒店模拟)