注:下拉菜单:需要popper.js
1、单一按钮的下拉菜单
<div class="col-2">
<div class="dropdown">
<!-- dropdown:下拉菜单 -->
<button class="btn btn-secondary dropdown-toggle" data-toggle="dropdown">button标签下拉</button><!-- dropdown-toggle:三角形 -->
<!--data-toggle="dropdown":js交互功能???前面有提 -->
<div class="dropdown-menu">
<a href="#" class="dropdown-item">北京</a>
<a href="#" class="dropdown-item">上海</a>
<a href="#" class="dropdown-item">广州</a>
</div>
</div>
</div>
2、使用a标签
<div class="col-2">
<div class="dropdown">
<a href="javascript:;" class="btn btn-primary dropdown-toggle" data-toggle="dropdown">a标签下拉</a><!-- a改href -->
<div class="dropdown-menu">
<a href="#" class="dropdown-item">北京</a>
<a href="#" class="dropdown-item">上海</a>
<a href="#" class="dropdown-item">广州</a>
<div class="dropdown-divider"></div><!-- 分割线 -->
<a href="#" class="dropdown-item">深圳</a>
</div>
</div>
</div>
3、分离式按钮下拉菜单
<div class="col-3">
<div class="btn-group dropdown"><!-- dropdown可加可不加 -->
<button class="btn btn-success btn-lg">分离式按钮下拉菜单</button><!-- 左边的 -->
<button class="btn btn-success btn-lg dropdown-toggle dropdown-toggle-split"
data-toggle="dropdown"></button><!-- 右边的 --><!-- dropdown-toggle-split:分割左右按钮 -->
<div class="dropdown-menu">
<a href="#" class="dropdown-item">北京</a>
<a href="#" class="dropdown-item">上海</a>
<a href="#" class="dropdown-item">广州</a>
<div class="dropdown-divider"></div>
<a href="#" class="dropdown-item">深圳</a>
</div>
</div>
</div>
4、下拉菜单尺寸
<div class="col-3 d-flex">
<div class="dropdown">
<button class="btn btn-danger btn-lg dropdown-toggle" data-toggle="dropdown">大按钮</button><!-- btn-lg -->
<div class="dropdown-menu">
<a href="#" class="dropdown-item">北京</a>
<a href="#" class="dropdown-item">上海</a>
<a href="#" class="dropdown-item">广州</a>
</div>
</div>
<div class="dropdown">
<button class="btn btn-danger btn-sm dropdown-toggle" data-toggle="dropdown">小按钮</button><!-- btn-sm -->
<div class="dropdown-menu">
<a href="#" class="dropdown-item">北京</a>
<a href="#" class="dropdown-item">上海</a>
<a href="#" class="dropdown-item">广州</a>
<!-- 3.x还有xs尺寸,但是4.x没有 -->
</div>
</div>
</div>
5、下拉菜单不同方向展开:
<div class="row mt-5">
<div class="col">
<!-- 3.x版本没有左和右 -->
<!--注意: 有的改变了方向但是实际只是改变的是三角形:是因为位置不够需要加margin!important -->
<div class="dropup"><!-- 改变方向:dropup -->
<!-- 向上展开 -->
<button class="btn btn-info dropdown-toggle" data-toggle="dropdown">向上展开</button>
<div class="dropdown-menu">
<a href="#" class="dropdown-item">北京</a>
<a href="#" class="dropdown-item">上海</a>
<a href="#" class="dropdown-item">广州</a>
</div>
</div>
</div>
<div class="col">
<div class="dropright">
<!-- 向右展开 -->
<button class="btn btn-info dropdown-toggle" data-toggle="dropdown">向右展开</button>
<div class="dropdown-menu">
<a href="#" class="dropdown-item">北京</a>
<a href="#" class="dropdown-item">上海</a>
<a href="#" class="dropdown-item">广州</a>
</div>
</div>
</div>
<div class="col">
<div class="dropdown">
<!-- 向下展开 -->
<button class="btn btn-info dropdown-toggle" data-toggle="dropdown">向下展开</button>
<div class="dropdown-menu">
<a href="#" class="dropdown-item">北京</a>
<a href="#" class="dropdown-item">上海</a>
<a href="#" class="dropdown-item">广州</a>
</div>
</div>
</div>
<div class="col">
<div class="dropleft">
<!-- 向左展开 -->
<button class="btn btn-info dropdown-toggle" data-toggle="dropdown">向左展开</button>
<div class="dropdown-menu">
<a href="#" class="dropdown-item">北京</a>
<a href="#" class="dropdown-item">上海</a>
<a href="#" class="dropdown-item">广州</a>
</div>
</div>
</div>
</div>
6、菜单项使用了button标签和菜单右对齐
<div class="row mt-5">
<div class="col">
<div class="dropdown">
<button class="btn btn-info dropdown-toggle" data-toggle="dropdown">菜单项使用了button标签</button>
<div class="dropdown-menu dropdown-menu-right">
<!-- 菜单右对齐:dropdown-menu-right -->
<a href="#" class="dropdown-item">北京</a>
<a href="#" class="dropdown-item">上海</a>
<a href="#" class="dropdown-item">广州</a>
<div class="dropdown-divider"></div>
<button class="dropdown-item">深圳</button><!-- 可使用button标签 -->
</div>
</div>
</div>
</div>
7、非交互式的下拉菜单:绝对定位,有文档流
<div class="row mt-5">
<div class="col">
<div class="dropdown">
<div class="dropdown-menu show"> <!-- show:显示菜单 -->
<span class="dropdown-item-text">非点击的项</span>
<h4 class="dropdown-header">下拉菜单的标题</h4>
<a href="#" class="dropdown-item">北京</a>
<a href="#" class="dropdown-item active">上海</a> <!-- 当前的选项 -->
<a href="#" class="dropdown-item disabled">广州</a> <!-- 禁用的选项 -->
<div class="dropdown-divider"></div>
<button class="dropdown-item">深圳</button>
</div>
</div>
</div>
</div>
8、偏移属性
<div class="row mt-5" style="margin-top: 260px!important;">
<div class="col">
<div class="dropdown">
<button class="btn btn-info dropdown-toggle" data-toggle="dropdown" data-offset="10,20">偏移</button><!-- data-offset="10,20" :离左边偏移10,上边20-->
<div class="dropdown-menu">
<!-- 右对齐 -->
<a href="#" class="dropdown-item">北京</a>
<a href="#" class="dropdown-item">上海</a>
<a href="#" class="dropdown-item">广州</a>
<div class="dropdown-divider"></div>
<button class="dropdown-item">深圳</button>
</div>
</div>
</div>
<div class="col">
<div class="dropdown">
<button class="btn btn-info dropdown-toggle" data-toggle="dropdown">偏移</button>
<div class="dropdown-menu" data-reference="parent"><!-- data-reference="parent":根据父级决定位置 -->
<!-- 右对齐 -->
<a href="#" class="dropdown-item">北京</a>
<a href="#" class="dropdown-item">上海</a>
<a href="#" class="dropdown-item">广州</a>
<div class="dropdown-divider"></div>
<button class="dropdown-item">深圳</button>
</div>
</div>
</div>
</div>