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 相关文章推荐
一个实用的图片切换支持点击切换和自动轮播
Sep 09 Javascript
js获取元素外链样式的方法
Jan 27 Javascript
AngularJS基础学习笔记之控制器
May 10 Javascript
AngularJS 模型详细介绍及实例代码
Jul 27 Javascript
jQuery Ajax前后端使用JSON进行交互示例
Mar 17 Javascript
推荐10款扩展Web表单的JS插件
Dec 25 Javascript
vue.js动画中的js钩子函数的实现
Jul 06 Javascript
Vue+webpack项目配置便于维护的目录结构教程详解
Oct 14 Javascript
vue组件命名和props命名代码详解
Sep 01 Javascript
layui下拉框获取下拉值(select)的例子
Sep 10 Javascript
jquery实现上传文件进度条
Mar 26 jQuery
React服务端渲染原理解析与实践
Mar 04 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
web目录下不应该存在多余的程序(安全考虑)
2012/05/09 PHP
PHP中include与require使用方法区别详解
2013/10/19 PHP
PHP实现的博客欢迎提示功能(很特别哦)
2014/06/05 PHP
Linux下php5.4启动脚本
2014/08/03 PHP
yii2.0整合阿里云oss上传单个文件的示例
2017/09/19 PHP
PHP实现生成模糊图片的方法示例
2017/12/21 PHP
php字符串截取函数mb_substr用法实例分析
2019/06/25 PHP
用JavaScript脚本实现Web页面信息交互
2006/10/11 Javascript
js清理Word格式示例代码
2014/02/13 Javascript
JS实现超简单的鼠标拖动效果
2015/11/02 Javascript
window.location.hash知识汇总
2015/11/09 Javascript
信息页文内画中画广告js实现代码(文中加载广告方式)
2016/01/03 Javascript
JS在Chrome浏览器中showModalDialog函数返回值为undefined的解决方法
2016/08/03 Javascript
JS实现用户注册时获取短信验证码和倒计时功能
2016/10/27 Javascript
详解使用JS如何制作简单的ASCII图与单极图
2017/03/31 Javascript
详解JS构造函数中this和return
2017/09/16 Javascript
基于js实现的图片拖拽排序源码实例
2020/11/04 Javascript
[51:30]OG vs LGD 2018国际邀请赛淘汰赛BO3 第二场 8.26
2018/08/30 DOTA
讲解Python中的递归函数
2015/04/27 Python
Python实现公历(阳历)转农历(阴历)的方法示例
2017/08/22 Python
深入理解Python中的*重复运算符
2017/10/28 Python
python3 pygame实现接小球游戏
2019/05/14 Python
简单了解python高阶函数map/reduce
2019/06/28 Python
django使用F方法更新一个对象多个对象字段的实现
2020/03/28 Python
Python2及Python3如何实现兼容切换
2020/09/01 Python
Python加载数据的5种不同方式(收藏)
2020/11/13 Python
HTMl5的存储方式sessionStorage和localStorage详解
2014/03/18 HTML / CSS
全球知名巧克力品牌:Godiva
2016/07/22 全球购物
英国最大的宠物商店:Pets at Home
2019/04/17 全球购物
如果Session Bean得Remove方法一直都不被调用会怎么样
2012/07/14 面试题
物业管理求职自荐信
2013/09/25 职场文书
毕业留言寄语大全
2014/04/10 职场文书
毕业生就业协议书
2014/04/11 职场文书
推普标语口号大全
2015/12/26 职场文书
详解Node.js如何处理ES6模块
2021/05/15 Javascript
Python进程间的通信之语法学习
2022/04/11 Python