Bootstrap 5 折叠
Bootstrap 5 折叠
基础的折叠
当您想要隐藏和显示大量内容时,可折叠组件非常有用:
示例代码:
<button data-bs-toggle="collapse" data-bs-target="#demo">春日</button>
<div id="demo" class="collapse">
<p>胜日寻芳泗水滨,无边光景一时新。</p>
<p>等闲识得东风面,万紫千红总是春。</p>
</div>
完整实例【亲自试一试】:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Bootstrap 实例</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>
<button type="button" class="btn btn-primary" data-bs-toggle="collapse" data-bs-target="#demo">春日</button>
<div id="demo" class="collapse">
<p>胜日寻芳泗水滨,无边光景一时新。</p>
<p>等闲识得东风面,万紫千红总是春。</p>
</div>
</div>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
例子解释
.collapse
类指示可折叠元素(在我们的例子中为 <div>);通过单击按钮,可显示或隐藏的内容。
如需控制(显示/隐藏)可折叠内容,请将 data-bs-toggle="collapse"
属性添加到 <a> 或 <button> 元素。然后添加 data-bs-target="#id"
属性来连接按钮和可折叠内容(<div id="demo">)。
注释:对于 <a> 元素,您可以使用 href
属性代替 data-bs-target
属性:
示例代码:
<a href="#demo" data-bs-toggle="collapse">春日</a>
<div id="demo" class="collapse">
<p>胜日寻芳泗水滨,无边光景一时新。</p>
<p>等闲识得东风面,万紫千红总是春。</p>
</div>
完整实例【亲自试一试】:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Bootstrap 实例</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>
<a href="#demo" class="btn btn-primary" data-bs-toggle="collapse">春日</a>
<div id="demo" class="collapse">
<p>胜日寻芳泗水滨,无边光景一时新。</p>
<p>等闲识得东风面,万紫千红总是春。</p>
</div>
</div>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
默认情况下,可折叠内容是隐藏的。但是,您可以添加 .show
类来默认显示内容:
示例代码:
<div id="demo" class="collapse show">
<p>胜日寻芳泗水滨,无边光景一时新。</p>
<p>等闲识得东风面,万紫千红总是春。</p>
</div>
完整实例【亲自试一试】:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Bootstrap 实例</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>在 collapse 类旁边添加 show 类,可默认显示内容。</p>
<p>单击按钮可在显示和隐藏内容之间切换。</p>
<button type="button" class="btn btn-primary" data-bs-toggle="collapse" data-bs-target="#demo">春日</button>
<div id="demo" class="collapse show">
<p>胜日寻芳泗水滨,无边光景一时新。</p>
<p>等闲识得东风面,万紫千红总是春。</p>
</div>
</div>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
Accordion(手风琴)
下例通过对 card 组件进行扩展,显示一个简单的手风琴。
注释:使用 data-bs-parent
属性确保当显示可折叠项目之一时,会关闭指定父项下的所有可折叠元素。
示例代码:
<div id="accordion">
<div class="card">
<div class="card-header">
<a class="btn" data-bs-toggle="collapse" href="#collapseOne">
可折叠组项目 #1
</a>
</div>
<div id="collapseOne" class="collapse show" data-bs-parent="#accordion">
<div class="card-body">
<h3>春日</h3>
<p>胜日寻芳泗水滨,无边光景一时新。</p>
<p>等闲识得东风面,万紫千红总是春。</p>
</div>
</div>
</div>
<div class="card">
<div class="card-header">
<a class="collapsed btn" data-bs-toggle="collapse" href="#collapseTwo">
可折叠组项目 #2
</a>
</div>
<div id="collapseTwo" class="collapse" data-bs-parent="#accordion">
<div class="card-body">
<h3>初夏绝句</h3>
<p>纷纷红紫已成尘,布谷声中夏令新。</p>
<p>夹路桑麻行不尽,始知身是太平人。</p>
</div>
</div>
</div>
<div class="card">
<div class="card-header">
<a class="collapsed btn" data-bs-toggle="collapse" href="#collapseThree">
可折叠组项目 #3
</a>
</div>
<div id="collapseThree" class="collapse" data-bs-parent="#accordion">
<div class="card-body">
<h3>山行</h3>
<p>远上寒山石径斜,白云生处有人家。</p>
<p>停车坐爱枫林晚,霜叶红于二月花。</p>
</div>
</div>
</div>
</div>
完整实例【亲自试一试】:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Bootstrap 实例</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><strong>注释:</strong><code>data-bs-parent</code> 属性确保在显示可折叠项目之一时,将关闭指定父项下的所有可折叠元素。</p>
<div id="accordion">
<div class="card">
<div class="card-header">
<a class="btn" data-bs-toggle="collapse" href="#collapseOne">
可折叠组项目 #1
</a>
</div>
<div id="collapseOne" class="collapse show" data-bs-parent="#accordion">
<div class="card-body">
<h3>春日</h3>
<p>胜日寻芳泗水滨,无边光景一时新。</p>
<p>等闲识得东风面,万紫千红总是春。</p>
</div>
</div>
</div>
<div class="card">
<div class="card-header">
<a class="collapsed btn" data-bs-toggle="collapse" href="#collapseTwo">
可折叠组项目 #2
</a>
</div>
<div id="collapseTwo" class="collapse" data-bs-parent="#accordion">
<div class="card-body">
<h3>初夏绝句</h3>
<p>纷纷红紫已成尘,布谷声中夏令新。</p>
<p>夹路桑麻行不尽,始知身是太平人。</p>
</div>
</div>
</div>
<div class="card">
<div class="card-header">
<a class="collapsed btn" data-bs-toggle="collapse" href="#collapseThree">
可折叠组项目 #3
</a>
</div>
<div id="collapseThree" class="collapse" data-bs-parent="#accordion">
<div class="card-body">
<h3>山行</h3>
<p>远上寒山石径斜,白云生处有人家。</p>
<p>停车坐爱枫林晚,霜叶红于二月花。</p>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html