微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Bootstrap源码解读下拉菜单4

源码解读Bootstrap下拉菜单

基本用法

在使用Bootstrap框架的下拉菜单时,必须调用Bootstrap框架提供的bootstrap.js文件。因为Bootstrap的组件交互效果都是依赖于jQuery库写的插件,所以在使用bootstrap.min.js之前一定要先加载jquery.min.js才会生效果。 使用方法如下: 1. 使用一个名为“dropdown”的容器包裹了整个下拉菜单元素:

实现原理

Bootstrap框架中的下拉菜单组件,其下拉菜单认是隐藏的,因为“dropdown-menu”认样式设置了“display:none”。实现源码如下:

rush:css;"> .dropdown-menu { position: absolute; top: 100%; left: 0; z-index: 1000; display: none; float: left; min-width: 160px; padding: 5px 0; margin: 2px 0 0; font-size: 14px; text-align: left; list-style: none; background-color: #fff; -webkit-background-clip: padding-Box; background-clip: padding-Box; border: 1px solid #ccc; border: 1px solid rgba(0,.15); border-radius: 4px; -webkit-Box-shadow: 0 6px 12px rgba(0,.175); Box-shadow: 0 6px 12px rgba(0,.175); }

当点击父菜单项时,下拉菜单将会被显示出来,再次点击时,下拉菜单将继续隐藏。实现原理非常简单,通过js,给父容器“div.dropdown”添加或移除类名“open”来控制下拉菜单显示或隐藏。也就是说,认情况,“div.dropdown”没有类名“open”,当用户第一次点击时,“div.dropdown”会添加类名“open”;当用户再次点击时,“div.dropdown”容器中的类名“open”又会被移除。实现源码如下:

.dropdown-menu { display: block; }

下拉分隔线

下拉菜单还提供了下拉分隔线,假设下拉菜单有两个组,那么组与组之间可以通过添加一个空的

  • ,并且给这个
  • 添加类名“divider”来实现添加下拉分隔线功能。 例如: 实现源码如下:

    rush:css;"> .dropdown-menu .divider { height: 1px; margin: 9px 0; overflow: hidden; background-color: #e5e5e5; }

    菜单标题

    组与组之间可以添加一个

  • ,并添加类名“dropdown-header”可以给每个组添加一个头部(标题)。 例如:
  • 实现源码:

    rush:css;"> .dropdown-header { display: block; padding: 3px 20px; font-size: 12px; line-height: 1.42857143; color: #999; }

    对齐方式

    下拉菜单认是左对齐,如果你想让下拉菜单相对于父容器右对齐时,可以在“dropdown-menu”上添加一个“pull-right”或者“dropdown-menu-right”类名, 例如:

    相关推荐