📅  最后修改于: 2023-12-03 15:29:39.031000             🧑  作者: Mango
Bootstrap是一个流行的前端框架,提供了多种UI组件使得开发者可以快速构建美观、响应式的网站。其中下拉菜单和响应式选项卡是常见的UI组件,下面将进行详细介绍。
下拉菜单是一种常见的UI组件,在Bootstrap中有完整的样式和交互支持。以下是创建一个基本的下拉菜单的栗子:
<div class="dropdown">
<button class="btn dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
下拉菜单
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<a class="dropdown-item" href="#">菜单项1</a>
<a class="dropdown-item" href="#">菜单项2</a>
<a class="dropdown-item" href="#">菜单项3</a>
</div>
</div>
其中,.dropdown
是下拉菜单的父元素,包含了.dropdown-toggle
(触发下拉菜单的按钮)和.dropdown-menu
(下拉菜单的菜单项)。data-toggle="dropdown"
表示点击按钮时呼出下拉菜单,aria-haspopup="true"
和aria-expanded="false"
是为了增加无障碍性。
在默认情况下,下拉菜单是向下的。但Bootstrap提供了多种下拉菜单的方向:向上、向左、向右。你可以使用类似于.dropup
、.dropleft
和.dropright
的类完成相关设置。
<div class="dropdown dropleft">
<button class="btn dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
向左下拉菜单
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<a class="dropdown-item" href="#">菜单项1</a>
<a class="dropdown-item" href="#">菜单项2</a>
<a class="dropdown-item" href="#">菜单项3</a>
</div>
</div>
默认情况下,下拉菜单是通过点击触发。但Bootstrap还提供了鼠标悬浮触发和手势触发的方式,你可以在data-toggle
处设置hover
或click
或touch
实现相关功能。
<div class="dropdown">
<button class="btn dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" data-toggle="hover" aria-haspopup="true" aria-expanded="false">
悬浮下拉菜单
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<a class="dropdown-item" href="#">菜单项1</a>
<a class="dropdown-item" href="#">菜单项2</a>
<a class="dropdown-item" href="#">菜单项3</a>
</div>
</div>
如果你需要更加定制化的下拉菜单,Bootstrap提供了各种有用的属性,例如:
.disabled
:禁用下拉菜单.dropdown-header
:添加分组标题.dropdown-divider
:添加分割线完整的下拉菜单的文档请参考Bootstrap官方网站。
选项卡是一种灵活的UI组件,可以在小屏幕设备上呈现紧凑型视图,也可以在大屏幕设备上呈现宽敞型视图。Bootstrap提供了完整的样式和交互支持,能够快速构建响应式选项卡。
以下是使用Bootstrap创建响应式选项卡的代码:
<ul class="nav nav-tabs" id="myTab" role="tablist">
<li class="nav-item">
<a class="nav-link active" id="home-tab" data-toggle="tab" href="#home" role="tab" aria-controls="home" aria-selected="true">选项卡1</a>
</li>
<li class="nav-item">
<a class="nav-link" id="profile-tab" data-toggle="tab" href="#profile" role="tab" aria-controls="profile" aria-selected="false">选项卡2</a>
</li>
<li class="nav-item">
<a class="nav-link" id="contact-tab" data-toggle="tab" href="#contact" role="tab" aria-controls="contact" aria-selected="false">选项卡3</a>
</li>
</ul>
<div class="tab-content" id="myTabContent">
<div class="tab-pane fade show active" id="home" role="tabpanel" aria-labelledby="home-tab">选项卡1的内容</div>
<div class="tab-pane fade" id="profile" role="tabpanel" aria-labelledby="profile-tab">选项卡2的内容</div>
<div class="tab-pane fade" id="contact" role="tabpanel" aria-labelledby="contact-tab">选项卡3的内容</div>
</div>
其中,.nav-tabs
是选项卡的父元素,包含了.nav-item
(选项卡)和.nav-link
(选项卡链接)。选项卡内容需要放在.tab-content
中,每个选项卡内容包含了一个.tab-pane
。
Bootstrap提供了两种模式切换选项卡的方式:通过导航或下拉菜单。你可以使用.nav-tabs
和.nav-pills
组合使用以实现不同的切换方式。
<!-- 导航切换 -->
<ul class="nav nav-tabs" id="nav-tab" role="tablist">
<li class="nav-item">
<a class="nav-link active" id="nav-home-tab" data-toggle="tab" href="#nav-home" role="tab" aria-controls="nav-home" aria-selected="true">选项卡1</a>
</li>
<li class="nav-item">
<a class="nav-link" id="nav-profile-tab" data-toggle="tab" href="#nav-profile" role="tab" aria-controls="nav-profile" aria-selected="false">选项卡2</a>
</li>
<li class="nav-item">
<a class="nav-link" id="nav-contact-tab" data-toggle="tab" href="#nav-contact" role="tab" aria-controls="nav-contact" aria-selected="false">选项卡3</a>
</li>
</ul>
<!-- 下拉菜单切换 -->
<div class="dropdown">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
选择选项卡
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<a class="dropdown-item" data-toggle="tab" href="#nav-home">选项卡1</a>
<a class="dropdown-item" data-toggle="tab" href="#nav-profile">选项卡2</a>
<a class="dropdown-item" data-toggle="tab" href="#nav-contact">选项卡3</a>
</div>
</div>
Bootstrap提供了多种有用的属性,例如:
.disabled
:禁止选项卡.dropdown-menu-right
:将下拉菜单向右对齐.fade
:添加淡入淡出效果完整的响应式选项卡的文档请参考Bootstrap官方网站。