深入理解BootStrap Item17 -- 面板(panel)

原创 2015年11月18日 20:54:23

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>

运行效果如下:

这里写图片描述

原理分析:

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>

运行效果如下:

这里写图片描述

原理分析:

panel-headingpanel-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.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>

运行效果如下:

这里写图片描述

优化代码:

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

<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.css文件第5031行~第5053行。

版权声明:本文为小平果原创文章,转载请注明:http://blog.csdn.net/i10630226

小黑小波比.bootstrap带标题面板

如下效果: 如下代码:
  • u010489586
  • u010489586
  • 2014年09月02日 15:02
  • 719

深入理解BootStrap -- 面板(panel)17

1、面板 面板(Panels)是Bootstrap框架新增的一个组件,其主要作用就是用来处理一些其他组件无法完成的功能。同样在不同的版本中具有不同的源码: ☑ Less版本:对应的源码文件...
  • z742182637
  • z742182637
  • 2016年01月07日 09:23
  • 20657

深入理解BootStrap-- 栅格系统(布局)7

1、栅格系统(布局) Bootstrap内置了一套响应式、移动设备优先的流式栅格系统,随着屏幕设备或视口(viewport)尺寸的增加,系统会自动分为最多12列。 我在这里是把Bootst...
  • z742182637
  • z742182637
  • 2016年01月06日 09:17
  • 32285

Bootstrap panel

1、面板 面板(Panels)是Bootstrap框架新增的一个组件,其主要作用就是用来处理一些其他组件无法完成的功能。同样在不同的版本中具有不同的源码: ☑ Less版本:对应的源码文件是 pane...
  • lovoo
  • lovoo
  • 2016年11月03日 10:19
  • 1151

bootstrap3的panel(折叠窗口或手风琴效果)

bootstrap3panel折叠手风琴窗口 1、一些被修改的:        2.3版本的                                                  ...
  • u012897547
  • u012897547
  • 2013年11月25日 18:31
  • 2322

bootstrap3的panel(折叠窗口或手风琴效果)

1、一些被修改的:        2.3版本的                                                    3.0版本 .acco...
  • ling811
  • ling811
  • 2013年11月25日 17:57
  • 5523

BootStrap一页通(样式+组件+插件)(全)

Bootstrap一页通(样式+组合+插件)(更新完毕)
  • sunxiaofre
  • sunxiaofre
  • 2017年03月17日 12:12
  • 3320

BootStrap基础——排版(一)

标题Bootstrap和普通的HTML页面一样,定义标题都是使用标签到,只不过Bootstrap覆盖了其默认的样式,使用其在所有浏览器下显示的效果一样,具体定义的规则可以如下表所示: 通过比较可...
  • u012914147
  • u012914147
  • 2016年09月27日 19:27
  • 827

Winform的Panel绘制边框

给Panel绘制边框能够达到一定的美感,这其实很简单,只需要编写Paint事件即可。 private void panel1_Paint(object sender, PaintEventArgs ...
  • softimite_zifeng
  • softimite_zifeng
  • 2017年01月08日 21:48
  • 3086

深入理解BootStrap-- 栅格系统(布局)7

1、栅格系统(布局) Bootstrap内置了一套响应式、移动设备优先的流式栅格系统,随着屏幕设备或视口(viewport)尺寸的增加,系统会自动分为最多12列。 我在这里是把Bootst...
  • z742182637
  • z742182637
  • 2016年01月06日 09:17
  • 32285
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深入理解BootStrap Item17 -- 面板(panel)
举报原因:
原因补充:

(最多只允许输入30个字)