diff --git a/docs/_includes/nav-components.html b/docs/_includes/nav-components.html
index ed00b62fa3..514dcfed3c 100644
--- a/docs/_includes/nav-components.html
+++ b/docs/_includes/nav-components.html
@@ -3,6 +3,7 @@
diff --git a/docs/assets/css/bootstrap.css b/docs/assets/css/bootstrap.css
index 58f4957049..8111f9288e 100644
--- a/docs/assets/css/bootstrap.css
+++ b/docs/assets/css/bootstrap.css
@@ -1249,6 +1249,12 @@ table th[class^="col-"] {
float: none;
}
+.table > tbody > tr > td.active,
+.table > tbody > tr > th.active,
+.table > tbody > tr.active > td {
+ background-color: #f5f5f5;
+}
+
.table > tbody > tr > td.success,
.table > tbody > tr > th.success,
.table > tbody > tr.success > td {
@@ -1348,8 +1354,6 @@ input[type="color"] {
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
- -moz-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
- -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}
@@ -2144,8 +2148,6 @@ input[type="button"].btn-block {
.fade {
opacity: 0;
-webkit-transition: opacity 0.15s linear;
- -moz-transition: opacity 0.15s linear;
- -o-transition: opacity 0.15s linear;
transition: opacity 0.15s linear;
}
@@ -2158,8 +2160,6 @@ input[type="button"].btn-block {
height: 0;
overflow: hidden;
-webkit-transition: height 0.35s ease;
- -moz-transition: height 0.35s ease;
- -o-transition: height 0.35s ease;
transition: height 0.35s ease;
}
@@ -2196,9 +2196,7 @@ input[type="button"].btn-block {
border-radius: 4px;
-webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding-box;
- background-clip: padding-box;
+ background-clip: padding-box;
}
.dropdown-menu.pull-right {
@@ -2275,6 +2273,14 @@ input[type="button"].btn-block {
outline: 0;
}
+.dropdown-header {
+ display: block;
+ padding: 3px 20px;
+ font-size: 12px;
+ line-height: 1.428571429;
+ color: #999999;
+}
+
.dropdown-backdrop {
position: fixed;
top: 0;
@@ -2303,11 +2309,6 @@ input[type="button"].btn-block {
margin-bottom: 1px;
}
-.dropdown .dropdown-menu .nav-header {
- padding-right: 20px;
- padding-left: 20px;
-}
-
.list-group {
padding-left: 0;
margin-bottom: 20px;
@@ -2710,17 +2711,6 @@ button.close {
text-align: center;
}
-.nav-header {
- display: block;
- padding: 3px 15px;
- font-size: 11px;
- font-weight: bold;
- line-height: 1.428571429;
- color: #999999;
- text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
- text-transform: uppercase;
-}
-
.tabbable:before,
.tabbable:after {
display: table;
@@ -2858,7 +2848,7 @@ button.close {
.navbar-brand {
display: block;
max-width: 200px;
- padding: 15px;
+ padding: 15px 15px;
margin-right: auto;
margin-left: auto;
font-size: 18px;
@@ -3475,8 +3465,6 @@ button.close {
.modal.fade {
top: -25%;
-webkit-transition: opacity 0.3s linear, top 0.3s ease-out;
- -moz-transition: opacity 0.3s linear, top 0.3s ease-out;
- -o-transition: opacity 0.3s linear, top 0.3s ease-out;
transition: opacity 0.3s linear, top 0.3s ease-out;
}
@@ -3503,9 +3491,7 @@ button.close {
outline: none;
-webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding-box;
- background-clip: padding-box;
+ background-clip: padding-box;
}
.modal-backdrop {
@@ -3607,7 +3593,7 @@ button.close {
position: absolute;
z-index: 1030;
display: block;
- font-size: 11px;
+ font-size: 12px;
line-height: 1.4;
opacity: 0;
filter: alpha(opacity=0);
@@ -3950,8 +3936,6 @@ button.close {
border: 1px solid #dddddd;
border-radius: 4px;
-webkit-transition: all 0.2s ease-in-out;
- -moz-transition: all 0.2s ease-in-out;
- -o-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
@@ -4183,8 +4167,6 @@ a.list-group-item.active > .badge,
-webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
-webkit-transition: width 0.6s ease;
- -moz-transition: width 0.6s ease;
- -o-transition: width 0.6s ease;
transition: width 0.6s ease;
}
@@ -4194,10 +4176,7 @@ a.list-group-item.active > .badge,
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- -webkit-background-size: 40px 40px;
- -moz-background-size: 40px 40px;
- -o-background-size: 40px 40px;
- background-size: 40px 40px;
+ background-size: 40px 40px;
}
.progress.active .progress-bar {
@@ -4295,8 +4274,6 @@ a.list-group-item.active > .badge,
position: relative;
display: none;
-webkit-transition: 0.6s ease-in-out left;
- -moz-transition: 0.6s ease-in-out left;
- -o-transition: 0.6s ease-in-out left;
transition: 0.6s ease-in-out left;
}
@@ -4392,7 +4369,9 @@ a.list-group-item.active > .badge,
filter: alpha(opacity=90);
}
-.carousel-control .glyphicon {
+.carousel-control .glyphicon,
+.carousel-control .icon-prev,
+.carousel-control .icon-next {
position: absolute;
top: 50%;
left: 50%;
@@ -4404,6 +4383,14 @@ a.list-group-item.active > .badge,
margin-left: -10px;
}
+.carousel-control .icon-prev:before {
+ content: '\2039';
+}
+
+.carousel-control .icon-next:before {
+ content: '\203a';
+}
+
.carousel-indicators {
position: absolute;
bottom: 20px;
@@ -4452,7 +4439,9 @@ a.list-group-item.active > .badge,
}
@media screen and (min-width: 768px) {
- .carousel-control .glyphicon {
+ .carousel-control .glyphicon,
+ .carousel-control .icon-prev,
+ .carousel-control .icon-next {
width: 30px;
height: 30px;
margin-top: -15px;
diff --git a/docs/components.html b/docs/components.html
index 5cc3a1e280..9202b133a1 100644
--- a/docs/components.html
+++ b/docs/components.html
@@ -46,6 +46,31 @@ lead: "Dozens of reusable components built to provide iconography, dropdowns, na
+{% endhighlight %}
+
+
+ Add a header to break up label sections of actions in any dropdown menu.
+
+{% highlight html %}
+
{% endhighlight %}
Disabled menu options
diff --git a/docs/css.html b/docs/css.html
index b401b6593d..10f2ea1ddf 100644
--- a/docs/css.html
+++ b/docs/css.html
@@ -1048,8 +1048,8 @@ For example, <section>
should be wrapped as inline.
- Optional row classes
- Use contextual classes to color table rows.
+ Contextual table classes
+ Use contextual classes to color table rows or individual cells.
@@ -1066,19 +1066,25 @@ For example, <section>
should be wrapped as inline.
.success
|
- Indicates a successful or positive action. |
+ Indicates a successful or positive action |
.danger
|
- Indicates a dangerous or potentially negative action. |
+ Indicates a dangerous or potentially negative action |
.warning
|
- Indicates a warning that might need attention. |
+ Indicates a warning that might need attention |
+
+
+
+ .active
+ |
+ Applies the hover color to a particular row or cell |
@@ -1087,42 +1093,64 @@ For example, <section>
should be wrapped as inline.
# |
- Product |
- Payment Taken |
- Status |
+ Column heading |
+ Column heading |
+ Column heading |
1 |
- TB - Monthly |
- 01/04/2012 |
- Approved |
+ Column content |
+ Column content |
+ Column content |
+
+
+ 2 |
+ Column content |
+ Column content |
+ Column content |
- 2 |
- TB - Monthly |
- 02/04/2012 |
- Declined |
+ 3 |
+ Column content |
+ Column content |
+ Column content |
+
+
+ 4 |
+ Column content |
+ Column content |
+ Column content |
- 3 |
- TB - Monthly |
- 03/04/2012 |
- Pending |
+ 5 |
+ Column content |
+ Column content |
+ Column content |
+
+
+ 6 |
+ Column content |
+ Column content |
+ Column content |
+
+
+ 7 |
+ Column content |
+ Column content |
+ Column content |
{% highlight html %}
-...
1 |
- TB - Monthly |
- 01/04/2012 |
- Approved |
+ Column content |
+ Column content |
+ Column content |
-...
{% endhighlight %}
diff --git a/docs/javascript.html b/docs/javascript.html
index fd239b4065..94946a3512 100644
--- a/docs/javascript.html
+++ b/docs/javascript.html
@@ -1518,10 +1518,10 @@ $('#myCollapsible').on('hidden.bs.collapse', function () {
-
+
-
+
@@ -1547,13 +1547,17 @@ $('#myCollapsible').on('hidden.bs.collapse', function () {
-
+
-
+
{% endhighlight %}
+
+
Glyphicon Alternative
+
With Glyphicons available, you may choose to style the left and right toggle buttons with .glyphicon-chevron-left
and .glyphicon-chevron-right
.
+
Optional captions
Add captions to your slides easily with the .carousel-caption
element within any .item
. Place just about any optional HTML within there and it will be automatically aligned and formatted.
@@ -1592,10 +1596,10 @@ $('#myCollapsible').on('hidden.bs.collapse', function () {
-
+
-
+
diff --git a/less/carousel.less b/less/carousel.less
index 8834c6f7b8..40d7e277e7 100644
--- a/less/carousel.less
+++ b/less/carousel.less
@@ -99,7 +99,9 @@
}
// Toggles
- .glyphicon {
+ .glyphicon,
+ .icon-prev,
+ .icon-next {
position: absolute;
top: 50%;
left: 50%;
@@ -110,6 +112,17 @@
margin-top: -10px;
margin-left: -10px;
}
+ // Non-glyphicon toggles
+ .icon-prev {
+ &:before {
+ content: '\2039';
+ }
+ }
+ .icon-next {
+ &:before {
+ content: '\203a';
+ }
+ }
}
// Optional indicator pips
@@ -167,7 +180,9 @@
@media screen and (min-width: @screen-tablet) {
// Scale up the controls a smidge
- .carousel-control .glyphicon {
+ .carousel-control .glyphicon,
+ .carousel-control .icon-prev,
+ .carousel-control .icon-next {
width: 30px;
height: 30px;
margin-top: -15px;
diff --git a/less/dropdowns.less b/less/dropdowns.less
index 8ae9dbba15..7e35d42871 100644
--- a/less/dropdowns.less
+++ b/less/dropdowns.less
@@ -120,6 +120,17 @@
}
}
+// Dropdown section headers
+// ---------------------------
+.dropdown-header {
+ display: block;
+ padding: 3px 20px;
+ font-size: @font-size-small;
+ line-height: @line-height-base;
+ color: @gray-light;
+}
+
+
// Backdrop to catch body clicks on mobile, etc.
// ---------------------------
@@ -158,11 +169,3 @@
margin-bottom: 1px;
}
}
-
-// Tweak nav headers
-// ---------------------------
-// Increase padding from 15px to 20px on sides
-.dropdown .dropdown-menu .nav-header {
- padding-left: 20px;
- padding-right: 20px;
-}
diff --git a/less/mixins.less b/less/mixins.less
index 440dcd0740..4dbfa83ef5 100644
--- a/less/mixins.less
+++ b/less/mixins.less
@@ -110,56 +110,40 @@
// Transitions
.transition(@transition) {
-webkit-transition: @transition;
- -moz-transition: @transition;
- -o-transition: @transition;
transition: @transition;
}
.transition-delay(@transition-delay) {
-webkit-transition-delay: @transition-delay;
- -moz-transition-delay: @transition-delay;
- -o-transition-delay: @transition-delay;
transition-delay: @transition-delay;
}
.transition-duration(@transition-duration) {
-webkit-transition-duration: @transition-duration;
- -moz-transition-duration: @transition-duration;
- -o-transition-duration: @transition-duration;
transition-duration: @transition-duration;
}
// Transformations
.rotate(@degrees) {
-webkit-transform: rotate(@degrees);
- -moz-transform: rotate(@degrees);
-ms-transform: rotate(@degrees);
- -o-transform: rotate(@degrees);
transform: rotate(@degrees);
}
.scale(@ratio) {
-webkit-transform: scale(@ratio);
- -moz-transform: scale(@ratio);
-ms-transform: scale(@ratio);
- -o-transform: scale(@ratio);
transform: scale(@ratio);
}
.translate(@x, @y) {
-webkit-transform: translate(@x, @y);
- -moz-transform: translate(@x, @y);
-ms-transform: translate(@x, @y);
- -o-transform: translate(@x, @y);
transform: translate(@x, @y);
}
.skew(@x, @y) {
-webkit-transform: skew(@x, @y);
- -moz-transform: skew(@x, @y);
-ms-transform: skewX(@x) skewY(@y); // See https://github.com/twitter/bootstrap/issues/4885
- -o-transform: skew(@x, @y);
transform: skew(@x, @y);
}
.translate3d(@x, @y, @z) {
-webkit-transform: translate3d(@x, @y, @z);
- -moz-transform: translate3d(@x, @y, @z);
- -o-transform: translate3d(@x, @y, @z);
transform: translate3d(@x, @y, @z);
}
@@ -175,16 +159,11 @@
// Background clipping
.background-clip(@clip) {
- -webkit-background-clip: @clip;
- -moz-background-clip: @clip;
background-clip: @clip;
}
// Background sizing
.background-size(@size) {
- -webkit-background-size: @size;
- -moz-background-size: @size;
- -o-background-size: @size;
background-size: @size;
}
@@ -463,8 +442,6 @@
.clearfix();
}
-// Make a grid
-
// Creates a wrapper for a series of columns
.make-row() {
// Then clear the floated columns
@@ -481,6 +458,7 @@
margin-right: (@grid-gutter-width / -2);
}
}
+
// Generate the columns
.make-column(@columns) {
position: relative;
@@ -496,6 +474,7 @@
width: percentage((@columns / @grid-columns));
}
}
+
// Generate the column offsets
.make-column-offset(@columns) {
@media (min-width: @grid-float-breakpoint) {
@@ -513,7 +492,22 @@
}
}
+// Generate the small columns
+.make-small-column(@columns) {
+ position: relative;
+ float: left;
+ // Prevent columns from collapsing when empty
+ min-height: 1px;
+ // Inner gutter via padding
+ padding-left: (@grid-gutter-width / 2);
+ padding-right: (@grid-gutter-width / 2);
+ @max-width: (@grid-float-breakpoint - 1);
+ // Calculate width based on number of columns available
+ @media (max-width: @max-width) {
+ width: percentage((@columns / @grid-columns));
+ }
+}
// Framework mixins
// --------------------------------------------------
diff --git a/less/navbar.less b/less/navbar.less
index 7a6e80488f..1818490577 100644
--- a/less/navbar.less
+++ b/less/navbar.less
@@ -6,8 +6,8 @@
.navbar {
position: relative;
margin-bottom: 20px;
- padding-left: @navbar-padding;
- padding-right: @navbar-padding;
+ padding-left: @navbar-padding-horizontal;
+ padding-right: @navbar-padding-horizontal;
background-color: @navbar-bg;
border-radius: @border-radius-base;
@@ -100,7 +100,7 @@
max-width: 200px;
margin-left: auto;
margin-right: auto;
- padding: @navbar-padding;
+ padding: @navbar-padding-vertical @navbar-padding-horizontal;
font-size: @font-size-large;
font-weight: 500;
line-height: @line-height-computed;
@@ -298,7 +298,7 @@
.navbar-brand {
float: left;
- margin-left: -(@navbar-padding);
+ margin-left: -(@navbar-padding-horizontal);
margin-right: 5px;
}
.navbar-nav {
diff --git a/less/navs.less b/less/navs.less
index 87780a156f..9f671643a7 100644
--- a/less/navs.less
+++ b/less/navs.less
@@ -195,22 +195,6 @@
-// Nav headers (for dropdowns and lists)
-// -------------------------
-
-.nav-header {
- display: block;
- padding: 3px 15px;
- font-size: @font-size-mini;
- font-weight: bold;
- line-height: @line-height-base;
- color: @gray-light;
- text-shadow: 0 1px 0 rgba(255,255,255,.5);
- text-transform: uppercase;
-}
-
-
-
// Tabbable tabs
// -------------------------
diff --git a/less/scaffolding.less b/less/scaffolding.less
index 8fc3a2360e..b6128dc5d1 100644
--- a/less/scaffolding.less
+++ b/less/scaffolding.less
@@ -71,7 +71,7 @@ img {
// Rounded corners
.img-rounded {
- border-radius: 6px;
+ border-radius: @border-radius-large;
}
// Image thumbnails
diff --git a/less/tables.less b/less/tables.less
index 3a546917c4..b742897c17 100644
--- a/less/tables.less
+++ b/less/tables.less
@@ -219,6 +219,11 @@ table {
// Exact selectors below required to override .table-striped
.table > tbody > tr {
+ > td.active,
+ > th.active,
+ &.active > td {
+ background-color: @table-bg-hover;
+ }
> td.success,
> th.success,
&.success > td {
diff --git a/less/tooltip.less b/less/tooltip.less
index 790eb1cd3e..fef430900a 100644
--- a/less/tooltip.less
+++ b/less/tooltip.less
@@ -9,7 +9,7 @@
z-index: @zindex-tooltip;
display: block;
visibility: visible;
- font-size: @font-size-mini;
+ font-size: @font-size-small;
line-height: 1.4;
.opacity(0);
diff --git a/less/variables.less b/less/variables.less
index fdd5929db6..b28d33091f 100644
--- a/less/variables.less
+++ b/less/variables.less
@@ -48,7 +48,6 @@
@font-size-base: 14px;
@font-size-large: ceil(@font-size-base * 1.25); // ~18px
@font-size-small: ceil(@font-size-base * 0.85); // ~12px
-@font-size-mini: ceil(@font-size-base * 0.75); // ~11px
@line-height-base: 1.428571429; // 20/14
@line-height-computed: floor(@font-size-base * @line-height-base); // ~20px
@@ -86,7 +85,8 @@
@table-bg: transparent; // overall background-color
@table-bg-accent: #f9f9f9; // for striping
-@table-bg-hover: #f5f5f5; // for hover
+@table-bg-hover: #f5f5f5;
+@table-bg-active: @table-bg-hover;
@table-border-color: #ddd; // table and cell border
@@ -176,7 +176,8 @@
@navbar-height: 50px;
@navbar-color: #777;
@navbar-bg: #eee;
-@navbar-padding: floor(@grid-gutter-width / 2); // ~15px
+@navbar-padding-horizontal: floor(@grid-gutter-width / 2); // ~15px
+@navbar-padding-vertical: 15px;
// Navbar links
@navbar-link-color: #777;