Bootstrap每天必学之标签与徽章


Posted in Javascript onNovember 27, 2015

1、标签

在一些Web页面中常常会添加一个标签用来告诉用户一些额外的信息,比如说在导航上添加了一个新导航项,可能就会加一个“new”标签,来告诉用户。这是新添加的导航项。如下图所示:

Bootstrap每天必学之标签与徽章

那么在Bootstrap框架中特意将这样的效果提取出来成为一个标签组件,并且以“.label”样式来实现高亮显示。

既然他是一个独立的组件,当然在不同的版本下有不同的文件:

☑ LESS版本:对应的源文件label.less

☑ Sass版本:对应的源文件_label.scss

☑ 编译后版本:bootstrap.css文件第4261行~第4327行

1)、使用原理:

使用方法很简单,你可以在使用span这样的行内标签:

<h3>Example heading <span class="label label-default">New</span></h3>

运行效果:

Bootstrap每天必学之标签与徽章

2)、实现原理:

/bootstrap.css文件第4261行~第4272行/

.label {
display: inline;
padding: .2em .6em .3em;
font-size: 75%;
font-weight: bold;
line-height: 1;
color: #fff;
text-align: center;
white-space: nowrap;
vertical-align: baseline;
border-radius: .25em;
}

如果使用的是a标签元素来制作的话,为了让其更美观,在hover状态去掉下划线之类:

/bootstrap.css文件第4273行~4278行/

.label[href]:hover,
.label[href]:focus {
color: #fff;
text-decoration: none;
cursor: pointer;
}

有的时候标签内没有内容的时候,可以借助CSS3的:empty伪元素将其隐藏:

.label:empty {
display: none;
}

3)、颜色样式设置:

和按钮元素button类似,label样式也提供了多种颜色:

☑ label-deafult:默认标签,深灰色

☑ label-primary:主要标签,深蓝色

☑ label-success:成功标签,绿色

☑ label-info:信息标签,浅蓝色

☑ label-warning:警告标签,橙色

☑ label-danger:错误标签,红色

主要是通过这几个类名来修改背景颜色和文本颜色:

<span class="label label-default">默认标签</span>
<span class="label label-primary">主要标签</span>
<span class="label label-success">成功标签</span>
<span class="label label-info">信息标签</span>
<span class="label label-warning">警告标签</span>
<span class="label label-danger">错误标签</span>

运行效果:

Bootstrap每天必学之标签与徽章

4、颜色实现原理:

/bootstrap.css文件第4286行~第4237行/

.label-default {
background-color: #999;
}
.label-default[href]:hover,
.label-default[href]:focus {
background-color: #808080;
}
.label-primary {
background-color: #428bca;
}
.label-primary[href]:hover,
.label-primary[href]:focus {
background-color: #3071a9;
}
.label-success {
background-color: #5cb85c;
}
.label-success[href]:hover,
.label-success[href]:focus {
background-color: #449d44;
}
.label-info {
background-color: #5bc0de;
}
.label-info[href]:hover,
.label-info[href]:focus {
background-color: #31b0d5;
}
.label-warning {
background-color: #f0ad4e;
}
.label-warning[href]:hover,
.label-warning[href]:focus {
background-color: #ec971f;
}
.label-danger {
background-color: #d9534f;
}
.label-danger[href]:hover,
.label-danger[href]:focus {
background-color: #c9302c;
}

2、徽章

从某种意义上来说,徽章效果和前面介绍的标签效果是极其的相似。也是用来做一些提示信息使用。常出现的是一些系统发出的信息,比如你登录你的twitter后,如果你信息没有看,系统会告诉你有多少信息未读,如下图所示:

Bootstrap每天必学之标签与徽章

在Bootstrap框架中,把这种效果称作为徽章效果,使用“badge”样式来实现。

对应的文件版本:

☑ LESS版本:源文件badges.less

☑ Sass版本:源文件_badges.scss

☑ 编译后版本:bootstrap.css文件第4328行~第4366行

使用方法:

使用方法,其实也没什么太多可说的,你可以像标签一样,使用span标签来制作,然后为他加入badge类:

<a href="#">Inbox <span class="badge">42</span></a>

运行效果:

Bootstrap每天必学之标签与徽章

1)、实现原理:

主要将其设置为椭圆形,并且加了一个背景色:

/bootstrap.css文件第4328行~第4341行/

.badge {
display: inline-block;
min-width: 10px;
padding: 3px 7px;
font-size: 12px;
font-weight: bold;
line-height: 1;
color: #fff;
text-align: center;
white-space: nowrap;
vertical-align: baseline;
background-color: #999;
border-radius: 10px;
}

同样也使用`:empty`伪元素,当没有内容的时候隐藏:

.badge:empty {
display: none;
}

正如开头所说,可以将徽章与按钮或者导航之类配合使用:

<div class="navbar navbar-default" role="navigation">
 <div class="navbar-header">
   <a href="##" class="navbar-brand">慕课网</a>
 </div>
 <ul class="nav navbar-nav">
   <li class="active"><a href="##">网站首页</a></li>
   <li><a href="##">系列教程</a></li>
   <li><a href="##">名师介绍</a></li>
   <li><a href="##">成功案例<span class="badge">23</span></a></li>
   <li><a href="##">关于我们</a></li>
 </ul>
</div>

运行效果

Bootstrap每天必学之标签与徽章

2)、按钮和胶囊形导航设置徽章:

另外,徽章在按钮元素button和胶囊形导航nav-pills也可以有类似的样式,只不过是颜色不同而以:

<ul class="nav nav-pills">
 <li class="active"><a href="#">Home <span class="badge">42</span></a></li>
 <li><a href="#">Profile</a></li>
 <li><a href="#">Messages <span class="badge">3</span></a></li>
</ul>
<br />

 运行效果:

Bootstrap每天必学之标签与徽章

样式代码请查看bootstrap.css文件第4345行~第4366行。

注意:不过和标签组件不一样的是:在徽章组件中没有提供多种颜色风格的效果,不过你也可以通过badges.less或者_badges.scss快速自定义。此处对不做过多阐述。

通过上文的介绍大家对标签和徽章是不是有了大概的了解,希望大家把标签和徽章应用到自己的网站中,真正的做到学以致用。

如果大家还想深入学习,可以点击这里进行学习,再为大家附两个精彩的专题:Bootstrap学习教程 Bootstrap实战教程

Javascript 相关文章推荐
jquery实现动态改变div宽度和高度
May 08 Javascript
JavaScript Length 属性的总结
Nov 02 Javascript
解决js函数闭包内存泄露问题的办法
Jan 25 Javascript
AngularJs 指令详解及示例代码
Sep 01 Javascript
canvas时钟效果
Feb 16 Javascript
微信小程序实现图片懒加载的示例代码
Dec 13 Javascript
AngularJS与后端php的数据交互方法
Aug 13 Javascript
基于vue v-for 多层循环嵌套获取行数的方法
Sep 26 Javascript
VUE搭建手机商城心得和遇到的坑
Feb 21 Javascript
vue 组件开发原理与实现方法详解
Nov 29 Javascript
Vue 使用typescript如何优雅的调用swagger API
Sep 01 Javascript
TS 类型收窄教程示例详解
Sep 23 Javascript
Bootstrap每天必学之导航条
Nov 27 #Javascript
javascript设计模式--策略模式之输入验证
Nov 27 #Javascript
jQuery实现图片预加载效果
Nov 27 #Javascript
基于Jquery实现仿百度百科右侧导航代码附源码下载
Nov 27 #Javascript
jquery实现两边飘浮可关闭的对联广告
Nov 27 #Javascript
jquery关于事件冒泡和事件委托的技巧及阻止与允许事件冒泡的三种实现方法
Nov 27 #Javascript
JS实现的表格行鼠标点击高亮效果代码
Nov 27 #Javascript
You might like
在WIN98下以apache模块方式安装php
2006/10/09 PHP
php全排列递归算法代码
2012/10/09 PHP
php使用base64加密解密图片示例分享
2014/01/20 PHP
神盾加密解密教程(一)PHP变量可用字符
2014/05/28 PHP
php中get_cfg_var()和ini_get()的用法及区别
2015/03/04 PHP
php获取从百度、谷歌等搜索引擎进入网站关键词的方法
2015/07/08 PHP
thinkPHP简单调用函数与类库的方法
2017/03/15 PHP
详细解读php的命名空间(一)
2018/02/21 PHP
PHP pthreads v3下同步处理synchronized用法示例
2020/02/21 PHP
js判断浏览器的比较全的代码
2007/02/13 Javascript
JQuery插件Style定制化方法的分析与比较
2012/05/03 Javascript
jquery表单验证插件(jquery.validate.js)的3种使用方式
2015/03/28 Javascript
jQuery布局组件EasyUI Layout使用方法详解
2017/02/28 Javascript
Angular 2父子组件数据传递之局部变量获取子组件其他成员
2017/07/04 Javascript
nodejs+mongodb+vue前后台配置ueditor的示例代码
2018/01/02 NodeJs
原生JS实现列表子元素顺序反转的方法分析
2018/07/02 Javascript
详解小程序rich-text对富文本支持方案
2018/11/28 Javascript
基于vue通用表单解决方案的思考与分析
2019/03/16 Javascript
详解Vue的ref特性的使用
2020/01/24 Javascript
jQuery表单校验插件validator使用方法详解
2020/02/18 jQuery
小程序跳转H5页面的方法步骤
2020/03/06 Javascript
解决VUE-Router 同一页面第二次进入不刷新的问题
2020/07/22 Javascript
javascript实现电商放大镜效果
2020/11/23 Javascript
新手该如何学python怎么学好python?
2008/10/07 Python
使用IPython来操作Docker容器的入门指引
2015/04/08 Python
Python编程实现线性回归和批量梯度下降法代码实例
2018/01/04 Python
Python unittest模块用法实例分析
2018/05/25 Python
tensorflow使用神经网络实现mnist分类
2018/09/08 Python
python实现简易数码时钟
2021/02/19 Python
Python Flask框架模板操作实例分析
2019/05/03 Python
Python爬虫学习之获取指定网页源码
2019/07/30 Python
python爬虫基础之urllib的使用
2020/12/31 Python
Python数据模型与Python对象模型的相关总结
2021/01/26 Python
python连接手机自动搜集蚂蚁森林能量的实现代码
2021/02/24 Python
left join、inner join、right join的区别
2021/04/05 MySQL
Alexa停服!网站排名将何去何从?目前还没有替代品。
2022/04/15 杂记