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 相关文章推荐
在网页中控制wmplayer播放器
Jul 01 Javascript
jQuery lazyLoad图片延迟加载插件的优化改造方法分享
Aug 13 Javascript
jquery实现类似淘宝星星评分功能有截图
Sep 15 Javascript
JavaScript通过select动态更换图片的方法
Mar 23 Javascript
javascript组合使用构造函数模式和原型模式实例
Jun 04 Javascript
JS组件中bootstrap multiselect两大组件较量
Jan 26 Javascript
实例分析浏览器中“JavaScript解析器”的工作原理
Dec 12 Javascript
vue监听scroll的坑的解决方法
Sep 07 Javascript
js 开发之autocomplete=&quot;off&quot;在chrom中失效的解决办法
Sep 28 Javascript
AngularJS 控制器 controller的详解
Oct 17 Javascript
解决Vue中引入swiper,在数据渲染的时候,发生不滑动的问题
Sep 27 Javascript
使用Vue中 v-for循环列表控制按钮隐藏显示功能
Apr 23 Javascript
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顺序查找和二分查找示例
2014/03/27 PHP
PHP实现163邮箱自动发送邮件
2016/03/29 PHP
PHP随机获取未被微信屏蔽的域名(微信域名检测)
2017/03/19 PHP
IE7中javascript操作CheckBox的checked=true不打勾的解决方法
2009/12/07 Javascript
Javascript生成json的函数代码(可以用php的json_decode解码)
2012/06/11 Javascript
javascript学习笔记(一)基础知识
2014/09/30 Javascript
分享JavaScript与Java中MD5使用两个例子
2015/12/23 Javascript
jQuery封装的屏幕居中提示信息代码
2016/06/08 Javascript
在js中做数字字符串补0(js补零)
2017/03/25 Javascript
JavaScript创建对象的七种方式(推荐)
2017/06/26 Javascript
详解vue父子组件间传值(props)
2017/06/29 Javascript
React Native之ListView实现九宫格效果的示例
2017/08/02 Javascript
jQuery实现全选、反选和不选功能
2017/08/16 jQuery
详解用场景去理解函数柯里化(入门篇)
2019/04/11 Javascript
Element MessageBox弹框的具体使用
2020/07/27 Javascript
js实现拖拽元素选择和删除
2020/08/25 Javascript
详解vue父子组件状态同步的最佳方式
2020/09/10 Javascript
vue 全局封装loading加载教程(全局监听)
2020/11/05 Javascript
[05:29]2014DOTA2国际邀请赛 赛后专访:LGDNewbee顺利过关
2014/07/13 DOTA
[54:58]完美世界DOTA2联赛PWL S2 LBZS vs Rebirth 第一场 11.25
2020/11/25 DOTA
python UDP(udp)协议发送和接收的实例
2019/07/22 Python
python openCV获取人脸部分并存储功能
2019/08/28 Python
Python模块/包/库安装的六种方法及区别
2020/02/24 Python
基于opencv实现简单画板功能
2020/08/02 Python
利用CSS3的transition属性实现滑动效果
2015/08/05 HTML / CSS
美国销售第一的智能手机和平板电脑保护壳:OtterBox
2017/12/21 全球购物
写出二分查找算法的两种实现
2013/05/13 面试题
SQL面试题
2013/12/09 面试题
工程造价专业大学生自荐信
2013/10/01 职场文书
自荐信不宜过于夸大
2013/11/06 职场文书
2014年汽车销售工作总结
2014/12/01 职场文书
2015年社区关工委工作总结
2015/04/03 职场文书
2015年网络舆情工作总结
2015/07/24 职场文书
导游词之秦始皇兵马俑博物馆
2019/09/29 职场文书
如何在CSS中绘制曲线图形及展示动画
2021/05/24 HTML / CSS
压缩Redis里的字符串大对象操作
2021/06/23 Redis