第七章之菜单按钮图标组件


Posted in Javascript onApril 25, 2016

Bootstrap,来自 Twitter,是目前最受欢迎的前端框架。Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的,它简洁灵活,使得 Web 开发更加快捷。

学习要点:

1.小图标组件

2.下拉菜单组件

3.按钮组组件

4.按钮式下拉菜单

本节课我们主要学习一下 Bootstrap 的三个组件功能:小图标组件、下拉菜单组件和各种按钮组件。

一.小图标组件

Bootstrap 提供了免费的 263 个小图标(数了两次),具体可以参考中文官网的组件链接:

http://v3.bootcss.com/components/#glyphicons。

部分图标如下:

第七章之菜单按钮图标组件 

可以使用<i>或<span>标签来配合使用,具体如下:

//使用小图标
<i class="glyphicon glyphicon-star"></i>
<span class="glyphicon glyphicon-star"></span> 
//也可以结合按钮
<button class="btn btn-default btn-lg">
<span class="glyphicon glyphicon-star"></span>
</button>
<button class="btn btn-default btn">
<span class="glyphicon glyphicon-star"></span>
</button>
<button class="btn btn-default btn-sm">
<span class="glyphicon glyphicon-star"></span>
</button>
<button class="btn btn-default btn-xs">
<span class="glyphicon glyphicon-star"></span>
</button>

二.下拉菜单组件

下拉菜单,就是点击一个元素或按钮,触发隐藏的列表显示出来。

//基本格式
<div class="dropdown">
<button class="btn btn-default" data-toggle="dropdown">
下拉菜单
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
<li>
<a href="#">首页</a>
</li>
<li>
<a href="#">资讯</a>
</li>
<li>
<a href="#">产品</a>
</li>
<li>
<a href="#">关于</a>
</li>
</ul>
</div>

按钮和菜单需要包裹在.dropdown 的容器里,而作为被点击的元素按钮需要设置data-toggle="dropdown"才能有效。对于菜单部分,设置 class="dropdown-menu"才能自动隐藏并添加固定样式。设置 class="caret"表示箭头,可上可下。

//设置向上触发
<div class="dropup"> 
//菜单项居右对齐,默认值是 dropdown-menu-left
<ul class="dropdown-menu dropdown-menu-right"> 
//设置菜单的标题,不要加超链接
<li class="dropdown-header">网站导航</li> 
//设置菜单的分割线
<li class="divider"></li> 
//设置菜单的禁用项
<li class="disabled"><a href="#">产品</a></li> 
//让菜单默认显示
<div class="dropdown open">

三.按钮组组件

按钮组就是多个按钮集成在一个容器里形成独有的效果。

//基本格式
<div class="btn-group">
<button type="button" class="btn btn-default">
左
</button>
<button type="button" class="btn btn-default">
中
</button>
<button type="button" class="btn btn-default">
右
</button>
</div> 
//将多个按钮组整合起来便于管理
<div class="btn-toolbar">
<div class="btn-group">
<button type="button" class="btn btn-default">
左
</button>
<button type="button" class="btn btn-default">
中
</button>
<button type="button" class="btn btn-default">
右
</button>
</div>
<div class="btn-group">
<button type="button" class="btn btn-default">
</button>
<button type="button" class="btn btn-default">
</button>
<button type="button" class="btn btn-default">
</button>
</div>
</div> 
//设置按钮组大小
<div class="btn-group btn-group-lg">
<div class="btn-group>
<div class="btn-group btn-group-sm">
<div class="btn-group btn-group-xs"> 
//嵌套一个分组,比如下拉菜单
<div class="btn-group">
<button type="button" class="btn btn-default">
左
</button>
<button type="button" class="btn btn-default">
中
</button>
<button type="button" class="btn btn-default">
右
</button>
<div class="btn-group">
<button class="btn btn-default dropdown-toggle"
data-toggle="dropdown">
下拉菜单
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
<li>
<a href="#">首页</a>
</li>
<li>
<a href="#">资讯</a>
</li>
<li>
<a href="#">产品</a>
</li>
<li>
<a href="#">关于</a>
</li>
</ul>
</div>
</div>

注意:这里<div>中并没有实现 class="dropdown",通过源码分析知道嵌套本身已经有定位就不需要再设置。而右边的圆角只要多加一个 class="dropdown-toggle"即可。

//设置按钮组垂直排列
<div class="btn-group-vertical"> 
//设置两端对齐按钮组,使用<a>标签
<div class="btn-group-justified">
<a type="button" class="btn btn-default">左</a>
<a type="button" class="btn btn-default">中</a>
<a type="button" class="btn btn-default">右</a>
</div> 
//如果需要使用<button>标签,则需要对每个按钮进行群组
<div class="btn-group-justified">
<div class="btn-group">
<button type="button" class="btn btn-default">
左
</button>
</div>
<div class="btn-group">
<button type="button" class="btn btn-default">
中
</button>
</div>
<div class="btn-group">
<button type="button" class="btn btn-default">
右
</button>
</div>
</div>

四.按钮式下拉菜单

这个下拉菜单其实和第二个知识点一样,只不过,这个是在群组里,不需要<div>声明class="dropdown"。

//群组按钮下拉菜单
<div class="btn-group">
<button type="button" class="btn btn-default dropdown-toggle"data-toggle="dropdown">
下拉菜单
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
<li>
<a href="#">首页</a>
</li>
<li>
<a href="#">资讯</a>
</li>
<li>
<a href="#">产品</a>
</li>
<li>
<a href="#">关于</a>
</li>
</ul>
</div> 
//分裂式按钮下拉菜单
<div class="btn-group">
<button type="button" class="btn btn-default">
下拉菜单
</button>
<button type="button" class="btn btn-default dropdown-toggle"data-toggle="dropdown">
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
<li>
<a href="#">首页</a>
</li>
<li>
<a href="#">资讯</a>
</li>
<li>
<a href="#">产品</a>
</li>
<li>
<a href="#">关于</a>
</li>
</ul>
</div> 
//向上弹出式
<div class="btn-group dropup">

以上内容是小编给大家介绍的BootStrap组件之菜单按钮图标组件,希望对大家有所帮助!

Javascript 相关文章推荐
用js判断浏览器是否是IE的比较好的办法
May 08 Javascript
js实现图片放大缩小功能后进行复杂排序的方法
Nov 08 Javascript
让jQuery与其他JavaScript库并存避免冲突的方法
Dec 23 Javascript
单击某一段文字改写文本颜色
Jun 06 Javascript
js图片滚动效果时间可随意设定当鼠标移上去时停止
Jun 26 Javascript
JQUERY简单按钮轮换选中效果实现方法
May 07 Javascript
jQuery的each循环用法简单示例
Jun 12 Javascript
深入浅出 jQuery中的事件机制
Aug 23 Javascript
js学习总结之dom2级事件基础知识详解
Jul 27 Javascript
Vue自定义指令封装节流函数的方法示例
Jul 09 Javascript
深入理解vue-class-component源码阅读
Feb 18 Javascript
小程序开发踩坑:页面窗口定位(相对于浏览器定位)(推荐)
Apr 25 Javascript
第九章之路径分页标签与徽章组件
Apr 25 #Javascript
Bootstrap每天必学之轮播(Carousel)插件
Apr 25 #Javascript
第十章之巨幕页头缩略图与警告框组件
Apr 25 #Javascript
Bootstrap每天必学之附加导航(Affix)插件
Apr 25 #Javascript
Bootstrap项目实战之子栏目资讯内容
Apr 25 #Javascript
深入浅析JavaScript中数据共享和数据传递
Apr 25 #Javascript
Bootstrap项目实战之首页内容介绍(全)
Apr 25 #Javascript
You might like
利用ThinkPHP内置的ThinkAjax实现异步传输技术的实现方法
2011/12/19 PHP
基于laravel制作APP接口(API)
2016/03/15 PHP
php实现登陆模块功能示例
2016/10/20 PHP
php微信开发之关注事件
2018/06/14 PHP
Extjs列表详细信息窗口新建后自动加载解决方法
2010/04/02 Javascript
js判断是否为数组的函数: isArray()
2011/10/30 Javascript
javascript时间自动刷新实现原理与步骤
2013/01/06 Javascript
仿新浪微博登陆邮箱提示效果的js代码
2013/08/02 Javascript
js拖动div 当鼠标移动时整个div也相应的移动
2013/11/21 Javascript
String.prototype实现的一些javascript函数介绍
2013/11/22 Javascript
jquery获取css中的选择器(实例讲解)
2013/12/02 Javascript
JS动画效果打开、关闭层的实现方法
2015/05/09 Javascript
json实现添加、遍历与删除属性的方法
2016/06/17 Javascript
jQuery向webApi提交post json数据
2017/01/16 Javascript
React-router中结合webpack实现按需加载实例
2017/05/25 Javascript
基于vue监听滚动事件实现锚点链接平滑滚动的方法
2018/01/17 Javascript
使用D3.js+Vue实现一个简单的柱形图
2018/08/05 Javascript
JavaScript怎样在删除前添加确认弹出框?
2019/05/27 Javascript
js面向对象之实现淘宝放大镜
2020/01/15 Javascript
Angular之jwt令牌身份验证的实现
2020/02/14 Javascript
js实现幻灯片轮播图
2020/08/14 Javascript
vue-video-player 断点续播的实现
2021/02/01 Vue.js
[40:57]TI4 循环赛第二日 iG vs EG
2014/07/11 DOTA
python实现FTP服务器服务的方法
2017/04/11 Python
django将网络中的图片,保存成model中的ImageField的实例
2019/08/07 Python
基于numpy中的expand_dims函数用法
2019/12/18 Python
顶级宝石首饰网络零售商:Angara
2016/10/25 全球购物
曼联官方网上商店:Manchester United Direct
2017/07/28 全球购物
元旦晚会上单位领导演讲稿
2014/01/05 职场文书
个人自我剖析材料
2014/02/07 职场文书
解除劳动合同证明书
2014/09/26 职场文书
部队2015年终工作总结
2015/04/02 职场文书
乔布斯辞职信(中英文对照)
2015/05/12 职场文书
详解python的内存分配机制
2021/05/10 Python
微信小程序scroll-view不能左右滑动问题的解决方法
2021/07/09 Javascript
Java 异步任务计算FutureTask
2022/04/28 Java/Android