2.3.2 颜色样式
如果在Bootstrap官方网站看过btn按钮或者alert警告框的样例,你会发现,Bootstrap默认为很多组件都提供了5种颜色的样式,这5种颜色分别是:primary(重点蓝)、success(成功绿)、info(信息蓝)、warning(警告橙)、danger(危险红)。定义规则是:组件名称-颜色类型,如btn-primary、alert-info。
在定义不同颜色样式的时候,主要是定义文本颜色、边框颜色、背景颜色等,具体定义什么颜色和该组件的特性有关。比如面板panel就只需要定义边框的颜色就可以了,而按钮不仅需要定义边框颜色,还需要定义背景色以及文本颜色。btn、panel、alert三个组件在定义颜色样式时的代码如下所示:
- /* btn */
- .btn-primary {
- color: #ffffff; background-color: #428bca; border-color: #357ebd;
- }
- /* panel */
- .panel-success {
- border-color: #d6e9c6;
- }
- .panel-success > .panel-heading {
- color: #468847; background-color: #dff0d8; border-color: #d6e9c6;
- }
- /* alert */
- .alert-success {
- color: #468847; background-color: #dff0d8; border-color: #d6e9c6;
- }
- .alert-success hr {
- border-top-color: #c9e2b3;
- }
可以发现,不同的组件,定义的内容稍有不同,具体定义什么主要由组件特性来决定。另外还要定义其内部子样式的颜色以便形成统一风格,比如.panel-success内部的.panel-heading顶部元素也要定义一个相同风格的颜色。
而对于一些可单击元素,比如btn按钮,还要特殊处理按钮在hover、focus、active状态时的颜色,以便让这些状态在同一个风格下表现一致。其源码如下所示:
- // 源码2081行
- .btn-primary:hover,
- .btn-primary:focus,
- .btn-primary:active,
- .btn-primary.active,
- .open .dropdown-toggle.btn-primary {
- color: #fff;
- background-color: #3276b1;
- border-color: #285e8e;
- }
使用方式就像Bootstrap宣传的那样,将两个样式叠加在一起使用即可。示例如下所示:
- <button type="button" class="btn btn-primary">Primary</button>
- <button type="button" class="btn btn-success">Success</button>
- <div class="alert alert-warning">...</div>
- <div class="alert alert-danger">...</div>