Bootstrap每天必学之面板


Posted in Javascript onNovember 30, 2015

1、面板

面板(Panels)是Bootstrap框架新增的一个组件,其主要作用就是用来处理一些其他组件无法完成的功能。同样在不同的版本中具有不同的源码:

☑ Less版本:对应的源码文件是 panels.less

☑ Sass版本:对应的源码文件是 _panels.scss

☑ 编译后的Bootstrap:对应bootstrap.css文件第4995行~第5302行

2、面板?基础面板

基础面板非常简单,就是一个div容器运用了“panel”样式,产生一个具有边框的文本显示块。由于“panel”不控制主题颜色,所以在“panel”的基础上增加一个控制颜色的主题“panel-default”,另外在里面添加了一个“div.panel-body”来放置面板主体内容:

<div class="panel panel-default">
 <div class="panel-body">我是一个基础面板,带有默认主题样式风格</div>
</div>

运行效果如下:

Bootstrap每天必学之面板

原理分析:

“panel“主要对边框,间距和圆角做了一定的设置:

/bootstrap.css文件第4995行~第5005行/

.panel {
 margin-bottom: 20px;
 background-color: #fff;
 border: 1px solid transparent;
 border-radius: 4px;
 -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
 box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
}
.panel-body {
 padding: 15px;
}

3、面板?带有头和尾的面板

基础面板看上去太简单了,Bootstrap为了丰富面板的功能,特意为面板增加“面板头部”和“页面尾部”的效果:

☑ panel-heading:用来设置面板头部样式

☑ panel-footer:用来设置面板尾部样式

<div class="panel panel-default">
 <div class="panel-heading">图解CSS3</div>
 <div class="panel-body">…</div>
 <div class="panel-footer">作者:大漠</div>
</div>

运行效果如下:

Bootstrap每天必学之面板

原理分析:

panel-heading和panel-footer也仅仅间距和圆角等样式进行了设置:

/bootstrap.css文件第5006行~第5030行/

.panel-heading {
 padding: 10px 15px;
 border-bottom: 1px solid transparent;
 border-top-left-radius: 3px;
 border-top-right-radius: 3px;
}
.panel-heading > .dropdown .dropdown-toggle {
 color: inherit;
}
.panel-title {
 margin-top: 0;
 margin-bottom: 0;
 font-size: 16px;
 color: inherit;
}
.panel-title > a {
 color: inherit;
}
.panel-footer {
 padding: 10px 15px;
 background-color: #f5f5f5;
 border-top: 1px solid #ddd;
 border-bottom-right-radius: 3px;
 border-bottom-left-radius: 3px;
}

4、面板?彩色面板

在基础面板一节中了解到,panel样式并没有对主题进行样式设置,而主题样式是通过panel-default来设置。在Bootstrap框架中面板组件除了默认的主题样式之外,还包括以下几种主题样式,构成了一个彩色面板:

☑ panel-primary:重点蓝

☑ panel-success:成功绿

☑ panel-info:信息蓝

☑ panel-warning:警告黄

☑ panel-danger:危险红

使用方法就很简单了,只需要在panel的类名基础上增加自己需要的类名:

<div class="panel panel-default">
 <div class="panel-heading">图解CSS3</div>
 <div class="panel-body">…</div>
 <div class="panel-footer">作者:大漠</div>
</div>
<div class="panel panel-primary">…</div>
<div class="panel panel-success">…</div>
<div class="panel panel-info">…</div>
<div class="panel panel-warning">…</div>
<div class="panel panel-danger">…</div>

运行效果如下:

Bootstrap每天必学之面板

从效果中不难发现,这几个样式只是改变了面板的背景色、文本和边框颜色:具体源码可以查看bootstrap.css文件第5195行~第5302行。

5、面板?面板中嵌套列表组

在上一节,我们介绍了如何在面板中放置表格,现在我们来学习如何在面板中放置列表组,我们简单的来看一个示例:

<div class="panel panel-default">
 <div class="panel-heading">图解CSS3</div>
 <div class="panel-body">
 <p>详细讲解了选择器、边框、背景、文本、颜色、盒模型、伸缩布局盒模型、多列布局、渐变、过渡、动画、媒体、响应Web设计、Web字体等主题下涵盖的所有CSS3新特性
 </p>
 <ul class="list-group">
 <li class="list-group-item">我是列表项</li>
 <li class="list-group-item">我是列表项</li>
 <li class="list-group-item">我是列表项</li>
 </ul>
 </div>
 <div class="panel-footer">作者:大漠</div>
</div>

运行效果如下:

Bootstrap每天必学之面板

优化代码:

和嵌套表格一样,如果你觉得这样有间距不好看,你完全可以把列表组提取出来:

<div class="panel panel-default">
 <div class="panel-heading">图解CSS3</div>
 <div class="panel-body">…</div>
 <ul class="list-group">
 <li class="list-group-item">我是列表项</li>
 <li class="list-group-item">我是列表项</li>
 <li class="list-group-item">我是列表项</li>
 </ul>
 <div class="panel-footer">作者:大漠</div>
</div>

运行效果如下:

Bootstrap每天必学之面板

同样的道理,Bootstrap将嵌套在面板中的列表组做了一定的样式优化。具体源码可以查看bootstrap.css文件第5031行~第5053行。

本文系列教程整理到:Bootstrap基础教程 专题中,欢迎点击学习。

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

以上针对面板,分别介绍了基础面板、彩色面板等,帮助大家更全面的学习Bootstrap面板,希望大家从中得到收获。

Javascript 相关文章推荐
Javascript日期对象的dateAdd与dateDiff方法
Nov 18 Javascript
js控制div及网页相关属性的代码
Dec 19 Javascript
你必须知道的Javascript知识点之&quot;深入理解作用域链&quot;的介绍
Apr 23 Javascript
js函数中onmousedown和onclick的区别和联系探讨
May 19 Javascript
javascript在网页中实现读取剪贴板粘贴截图功能
Jun 07 Javascript
基于jquery实现的文字向上跑动类似跑马灯的效果
Jun 17 Javascript
原生JS实现简单放大镜效果
Feb 08 Javascript
Node 自动化部署的方法
Oct 17 Javascript
Vue Element 分组+多选+可搜索Select选择器实现示例
Jul 23 Javascript
vue引入微信sdk 实现分享朋友圈获取地理位置功能
Jul 04 Javascript
基于Echarts图表在div动态切换时不显示的解决方式
Jul 20 Javascript
vue实现验证用户名是否可用
Jan 20 Vue.js
Bootstrap每天必学之媒体对象
Nov 30 #Javascript
javascript针对cookie的基本操作实例详解
Nov 30 #Javascript
javascript闭包(Closure)用法实例简析
Nov 30 #Javascript
详解JavaScript的流程控制语句
Nov 30 #Javascript
详解JavaScript的表达式与运算符
Nov 30 #Javascript
Bootstrap每天必学之进度条
Nov 30 #Javascript
javascript省市区三级联动下拉框菜单实例演示
Nov 29 #Javascript
You might like
用PHP 4.2书写安全的脚本
2006/10/09 PHP
我的论坛源代码(四)
2006/10/09 PHP
php编写的抽奖程序中奖概率算法
2015/05/14 PHP
Yii2简单实现给表单添加验证码的方法
2016/07/18 PHP
Laravel框架实现的使用smtp发送邮件功能示例
2019/03/12 PHP
PHP程序守护进程化实现方法详解
2020/07/16 PHP
js获取元素到文档区域document的(横向、纵向)坐标的两种方法
2013/05/17 Javascript
jquery ajax 局部刷新小案例
2014/02/08 Javascript
JQuery boxy插件在IE中边角图片不显示问题的解决
2015/05/20 Javascript
一些实用性较高的js方法
2016/04/19 Javascript
15款最好的Bootstrap在线编辑器
2016/08/03 Javascript
BootStrap Table 分页后重新搜索问题的解决办法
2016/08/08 Javascript
原生JS:Date对象全面解析
2016/09/06 Javascript
JavaScript实现输入框与清空按钮联动效果
2016/09/09 Javascript
Vue2.X 通过AJAX动态更新数据
2018/07/17 Javascript
微信小程序本地存储实现每日签到、连续签到功能
2019/10/09 Javascript
vue v-for直接循环数字实例
2019/11/07 Javascript
JS造成内存泄漏的几种情况实例分析
2020/03/02 Javascript
微信小程序以ssm做后台开发的实现示例
2020/04/08 Javascript
Vue发布订阅模式实现过程图解
2020/04/30 Javascript
[30:00]完美世界DOTA2联赛PWL S2 Rebirth vs LBZS 第二场 11.28
2020/12/01 DOTA
python实现的多线程端口扫描功能示例
2017/01/21 Python
详解python基础之while循环及if判断
2017/08/24 Python
python三大神器之fabric使用教程
2019/06/10 Python
django 简单实现登录验证给你
2019/11/06 Python
python自动化测试三部曲之request+django实现接口测试
2020/10/07 Python
python代码实现图书管理系统
2020/11/30 Python
解决html5中video标签无法播放mp4问题的办法
2017/05/07 HTML / CSS
BIBLOO波兰:捷克的一家在线服装店
2018/03/09 全球购物
DELPHI中如何调用API,可举例说明
2014/01/16 面试题
求职信写作要突出重点
2014/01/01 职场文书
中年人生感言
2014/02/04 职场文书
烹调加工管理制度
2014/02/04 职场文书
教师读书活动总结
2014/05/07 职场文书
优秀班主任事迹材料
2014/12/16 职场文书
2015年家长学校工作总结
2015/04/22 职场文书