.card
卡片组件是BootStrap 4新增的一组重要样式,它是一个灵活的、可扩展的内容管理器,可以包含图片、列表、文本、链接等多种组合,卡片有可选的卡片头和卡片脚、一个大范围的内容、上下文背景色以及强大的显示选项。 使用.card构建卡片
<div class="card"></div>
使用.card-title(标题)和.card-subtitle(小标题)构建卡片标题
<div class="card">
<h1 class="card-title">卡片标题</h1>
<h5 class="card-subtitle text-muted">小标题</h5>
<div class="card-body">卡片主体</div>
</div>
使用.card-body构建卡片主体内容
<div class="card">
<div class="card-body">卡片主体</div>
</div>
卡片主体使用.card-text代表文本内容
<div class="container">
<div class="card">
<h1 class="card-title">卡片标题</h1>
<h5 class="card-subtitle text-muted">小标题</h5>
<div class="card-body">
<p class="card-text">卡片主体</p>
</div>
</div>
</div>
卡片主体使用.card-link代表超链接
<div class="container">
<div class="card">
<h1 class="card-title">卡片标题</h1>
<h5 class="card-subtitle text-muted">小标题</h5>
<div class="card-body">
<p class="card-text">卡片主体</p>
<a href="#" class="card-link">注册</a>
<a href="#" class="card-link">登录</a>
</div>
</div>
</div>
使用.card-img-top定义一张图片在卡片的顶部
<div class="container">
<div class="card">
<img src="#" class="card-img-top">
<h1 class="card-title">卡片标题</h1>
<h5 class="card-subtitle text-muted">小标题</h5>
<div class="card-body">
<p class="card-text">卡片主体</p>
<a href="#" class="card-link">注册</a>
<a href="#" class="card-link">登录</a>
</div>
</div>
</div>
使用.list-group
构建列表组
<div class="container">
<div class="card">
<ul class="list-group list-group-flush">
<li class="list-group-item">列表1</li>
<li class="list-group-item">列表2</li>
<li class="list-group-item">列表3</li>
</ul>
</div>
</div>
使用.card-header定义列表组标题
<div class="container">
<div class="card">
<div class="card-header">列表标题</div>
<ul class="list-group list-group-flush">
<li class="list-group-item">列表1</li>
<li class="list-group-item">列表2</li>
<li class="list-group-item">列表3</li>
</ul>
</div>
</div>
使用.card-footer配合.card-header构建页眉页脚
<div class="container">
<div class="card">
<div class="card-header">页眉</div>
<ul class="list-group list-group-flush">
<li class="list-group-item">列表1</li>
<li class="list-group-item">列表2</li>
<li class="list-group-item">列表3</li>
</ul>
<div class="card-footer">页脚</div>
</div>
</div>
卡片没有特定的宽度width定义,除非另有定义声明,否则它们的真实宽度将是100%,您可以根据需要使用自定义CSS,引入栅格系统。
使用栅格系统,根据需求按行与列来装载卡片。
<div class="container">
<div class="row">
<div class="col-sm-4 col-md-6">
<div class="card">
<div class="card-header">页眉</div>
<ul class="list-group list-group-flush">
<li class="list-group-item">列表1</li>
<li class="list-group-item">列表2</li>
<li class="list-group-item">列表3</li>
</ul>
<div class="card-footer">页脚</div>
</div>
</div>
<div class="col-sm-4 col-md-6">
<div class="card">
<div class="card-header">页眉</div>
<ul class="list-group list-group-flush">
<li class="list-group-item">列表1</li>
<li class="list-group-item">列表2</li>
<li class="list-group-item">列表3</li>
</ul>
<div class="card-footer">页脚</div>
</div>
</div>
</div>
</div>
使用.w-25
,.w-50
,.w-75
,.w-100
来设置卡片显示的百分比
<div class="container">
<div class="card w-50 float-left">
<div class="card-header">页眉</div>
<ul class="list-group list-group-flush">
<li class="list-group-item">列表1</li>
<li class="list-group-item">列表2</li>
<li class="list-group-item">列表3</li>
</ul>
<div class="card-footer">页脚</div>
</div>
<div class="card w-50 float-left">
<div class="card-header">页眉</div>
<ul class="list-group list-group-flush">
<li class="list-group-item">列表1</li>
<li class="list-group-item">列表2</li>
<li class="list-group-item">列表3</li>
</ul>
<div class="card-footer">页脚</div>
</div>
</div>
使用我们的文本对齐类来更改或特定部份的文本对齐。
使用.text-left,.text-center,.text-right可以设置文本特定部分的文本对齐。
卡片使用.card-header-tabs
可以配合列表ul实现导航
<div class="card text-center">
<div class="card-header">
<ul class="nav nav-tabs card-header-tabs">
<li class="nav-item">
<a class="nav-link active" href="#">Home</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>
</div>
<div class="card-body">
<h5 class="card-title">Special title treatment</h5>
<p class="card-text">With supporting text below as a natural lead-in to additional content.</p>
<a href="#" class="btn btn-primary">Go somewhere</a>
</div>
</div>
将ul添加.nav-pills
和.card-header-pills
实再按钮导航
<div class="card text-center">
<div class="card-header">
<ul class="nav nav-pills card-header-pills">
<li class="nav-item">
<a class="nav-link active" href="#">Active</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>
</div>
<div class="card-body">
<h5 class="card-title">Special title treatment</h5>
<p class="card-text">With supporting text below as a natural lead-in to additional content.</p>
<a href="#" class="btn btn-primary">Go somewhere</a>
</div>
</div>
卡片中包含一些选项来搭配图像,选择在卡片的任何一端附加.cad-img-*
,用卡片内容覆盖图像(如同背景),或者只是将图像置入到卡片当中。
<div class="container">
<div class="card mb-3">
<img class="card-img-top" src="..." alt="Card image cap">
<div class="card-body">
<h5 class="card-title">卡片标题</h5>
<p class="card-text">文本内容</p>
<p class="card-text"><small class="text-muted">注释文本</small></p>
</div>
</div>
<div class="card">
<div class="card-body">
<h5 class="card-title">卡片标题</h5>
<p class="card-text">文本内容</p>
<p class="card-text"><small class="text-muted">注释文本</small></p>
</div>
<img class="card-img-bottom" src="..." alt="Card image cap">
</div>
</div>
使用.card-img-overlay可以实现图片作为背景,这种做并不是真的做为背景,而是通过定位让文字浮动在图片上。
<div class="card mb-3">
<img class="card-img-overlay" src="..." alt="Card image cap">
<div class="card-body">
<h5 class="card-title">卡片标题</h5>
<p class="card-text">文本内容</p>
<p class="card-text"><small class="text-muted">注释文本</small></p>
</div>
</div>