前言
这一章主要学习button-group。目的是学习扩展按钮组件的写法,需要先了解前一篇的知识:深度了解bootstrap源码之sass篇(四)。
研究对象
button组件(按钮)的扩展:button-group。分_button-group.scss和一些简单常用的方法(border-radius,clearfix,等)
使用方法和效果
按钮组的样式和功能很丰富,我先将所有的按钮组效果过一遍再看sass,促进消化。官网文档 → 按钮组。
总结如下:
- 功能类
- loading状态下的效果
- 实现过程:新增属性data-loading-text,调用bootstrap.js中的button属性实现动态效果。
- 实现方法:
$("#domId").button('loading')
获取动态文本,...button('reset')
插入。 - 从 v3.3.5 版本开始,此特性不再建议使用,并且已经在 v4 版本中删除了。
- checked/radio状态下的效果
- 你必须手动添加
.active
样式在你的label表单内。 - 实现方法:调用button属性方法。
- 你必须手动添加
- toggle状态下的效果
- 通过
.active
样式改变的效果。 - 实现方法:调用button属性方法。
- 通过
- 功能类实例图
- loading状态下的效果
- 效果类
- 普通效果
-
所有的按钮组,父元素的class必须有
.btn-group
,子元素必须继承.btn
。
-
- 工具栏样式的效果
- 不同尺寸的效果
- 下拉菜单嵌套的效果
- 垂直排列的效果
- 两端对齐排列的效果
- 即为横向排列的按钮组,占据文档流的一行。
- 普通效果
_clearfix.scss
源文:
border-radius.scss
源文:
button-group.scss
源文:
相关说明
- 注② :关于bootstrap框架里btn-group-justified类的解析
- 注③ :来自MDN → pointer-events
- 注④ :来自W3C → clip的demo