aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorJacob Thornton <[email protected]>2012-04-24 02:21:45 -0700
committerJacob Thornton <[email protected]>2012-04-24 02:21:45 -0700
commite659dc7e1be2e09cec34703dce8c737496e3504e (patch)
treebe3caed12a3de1218e1fd548f2564302e6c8193a /docs
parent6506ede6323ee60d4d7f8171937d92141a64e09e (diff)
parent839ef3a030b355d0f0c35d6c9e42ecba8b072036 (diff)
downloadbootstrap-e659dc7e1be2e09cec34703dce8c737496e3504e.tar.xz
bootstrap-e659dc7e1be2e09cec34703dce8c737496e3504e.zip
Merge branch '2.0.3-wip'
Conflicts: Makefile docs/assets/js/bootstrap.js docs/assets/js/bootstrap.min.js
Diffstat (limited to 'docs')
-rw-r--r--docs/assets/bootstrap.zipbin55592 -> 0 bytes
-rw-r--r--docs/assets/css/bootstrap-responsive.css557
-rw-r--r--docs/assets/css/bootstrap.css2280
-rw-r--r--docs/assets/css/docs.css6
-rw-r--r--docs/assets/ico/apple-touch-icon-144-precomposed.pngbin0 -> 8457 bytes
-rw-r--r--docs/assets/ico/apple-touch-icon-72-precomposed.pngbin3163 -> 3204 bytes
-rw-r--r--docs/assets/img/example-sites/kippt.pngbin50203 -> 50695 bytes
-rw-r--r--docs/assets/img/glyphicons-halflings-white.pngbin4352 -> 8777 bytes
-rw-r--r--docs/assets/img/glyphicons-halflings.pngbin4352 -> 13826 bytes
-rw-r--r--docs/assets/js/application.js8
-rw-r--r--docs/assets/js/bootstrap-alert.js60
-rw-r--r--docs/assets/js/bootstrap-button.js62
-rw-r--r--docs/assets/js/bootstrap-carousel.js46
-rw-r--r--docs/assets/js/bootstrap-collapse.js69
-rw-r--r--docs/assets/js/bootstrap-dropdown.js28
-rw-r--r--docs/assets/js/bootstrap-modal.js42
-rw-r--r--docs/assets/js/bootstrap-popover.js23
-rw-r--r--docs/assets/js/bootstrap-scrollspy.js60
-rw-r--r--docs/assets/js/bootstrap-tab.js19
-rw-r--r--docs/assets/js/bootstrap-tooltip.js75
-rw-r--r--docs/assets/js/bootstrap-transition.js50
-rw-r--r--docs/assets/js/bootstrap-typeahead.js36
-rw-r--r--docs/assets/js/bootstrap.js570
-rw-r--r--docs/assets/js/bootstrap.min.js2
-rw-r--r--docs/base-css.html199
-rw-r--r--docs/components.html120
-rw-r--r--docs/download.html28
-rw-r--r--docs/examples.html3
-rw-r--r--docs/examples/fluid.html13
-rw-r--r--docs/examples/hero.html1
-rw-r--r--docs/examples/starter-template.html1
-rw-r--r--docs/index.html6
-rw-r--r--docs/javascript.html92
-rw-r--r--docs/less.html347
-rw-r--r--docs/scaffolding.html26
-rw-r--r--docs/templates/layout.mustache3
-rw-r--r--docs/templates/pages/base-css.mustache196
-rw-r--r--docs/templates/pages/components.mustache117
-rw-r--r--docs/templates/pages/download.mustache25
-rw-r--r--docs/templates/pages/index.mustache3
-rw-r--r--docs/templates/pages/javascript.mustache89
-rw-r--r--docs/templates/pages/less.mustache344
-rw-r--r--docs/templates/pages/scaffolding.mustache35
-rw-r--r--docs/upgrading.html3
44 files changed, 3803 insertions, 1841 deletions
diff --git a/docs/assets/bootstrap.zip b/docs/assets/bootstrap.zip
deleted file mode 100644
index d6ecc5869..000000000
--- a/docs/assets/bootstrap.zip
+++ /dev/null
Binary files differ
diff --git a/docs/assets/css/bootstrap-responsive.css b/docs/assets/css/bootstrap-responsive.css
index d9fa91d6c..4f6eb75ba 100644
--- a/docs/assets/css/bootstrap-responsive.css
+++ b/docs/assets/css/bootstrap-responsive.css
@@ -1,5 +1,5 @@
/*!
- * Bootstrap Responsive v2.0.2
+ * Bootstrap Responsive v2.0.3
*
* Copyright 2012 Twitter, Inc
* Licensed under the Apache License v2.0
@@ -7,85 +7,86 @@
*
* Designed and built with all the love in the world @twitter by @mdo and @fat.
*/
+
.clearfix {
*zoom: 1;
}
+
.clearfix:before,
.clearfix:after {
display: table;
content: "";
}
+
.clearfix:after {
clear: both;
}
+
.hide-text {
- overflow: hidden;
- text-indent: 100%;
- white-space: nowrap;
+ font: 0/0 a;
+ color: transparent;
+ text-shadow: none;
+ background-color: transparent;
+ border: 0;
}
+
.input-block-level {
display: block;
width: 100%;
min-height: 28px;
- /* Make inputs at least the height of their button counterpart */
-
- /* Makes inputs behave like true block-level elements */
-
-webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ -ms-box-sizing: border-box;
+ box-sizing: border-box;
}
+
.hidden {
display: none;
visibility: hidden;
}
+
.visible-phone {
- display: none;
+ display: none !important;
}
+
.visible-tablet {
- display: none;
-}
-.visible-desktop {
- display: block;
-}
-.hidden-phone {
- display: block;
-}
-.hidden-tablet {
- display: block;
+ display: none !important;
}
+
.hidden-desktop {
- display: none;
+ display: none !important;
}
+
@media (max-width: 767px) {
.visible-phone {
- display: block;
+ display: inherit !important;
}
.hidden-phone {
- display: none;
+ display: none !important;
}
.hidden-desktop {
- display: block;
+ display: inherit !important;
}
.visible-desktop {
- display: none;
+ display: none !important;
}
}
+
@media (min-width: 768px) and (max-width: 979px) {
.visible-tablet {
- display: block;
+ display: inherit !important;
}
.hidden-tablet {
- display: none;
+ display: none !important;
}
.hidden-desktop {
- display: block;
+ display: inherit !important;
}
.visible-desktop {
- display: none;
+ display: none !important ;
}
}
+
@media (max-width: 480px) {
.nav-collapse {
-webkit-transform: translate3d(0, 0, 0);
@@ -111,14 +112,14 @@
padding-top: 0;
}
.form-horizontal .form-actions {
- padding-left: 10px;
padding-right: 10px;
+ padding-left: 10px;
}
.modal {
position: absolute;
top: 10px;
- left: 10px;
right: 10px;
+ left: 10px;
width: auto;
margin: 0;
}
@@ -133,14 +134,28 @@
position: static;
}
}
+
@media (max-width: 767px) {
body {
- padding-left: 20px;
padding-right: 20px;
+ padding-left: 20px;
}
- .navbar-fixed-top {
- margin-left: -20px;
+ .navbar-fixed-top,
+ .navbar-fixed-bottom {
margin-right: -20px;
+ margin-left: -20px;
+ }
+ .container-fluid {
+ padding: 0;
+ }
+ .dl-horizontal dt {
+ float: none;
+ width: auto;
+ clear: none;
+ text-align: left;
+ }
+ .dl-horizontal dd {
+ margin-left: 0;
}
.container {
width: auto;
@@ -148,19 +163,20 @@
.row-fluid {
width: 100%;
}
- .row {
+ .row,
+ .thumbnails {
margin-left: 0;
}
- .row > [class*="span"],
- .row-fluid > [class*="span"] {
- float: none;
+ [class*="span"],
+ .row-fluid [class*="span"] {
display: block;
+ float: none;
width: auto;
- margin: 0;
- }
- .thumbnails [class*="span"] {
- width: auto;
+ margin-left: 0;
}
+ .input-large,
+ .input-xlarge,
+ .input-xxlarge,
input[class*="span"],
select[class*="span"],
textarea[class*="span"],
@@ -168,20 +184,20 @@
display: block;
width: 100%;
min-height: 28px;
- /* Make inputs at least the height of their button counterpart */
-
- /* Makes inputs behave like true block-level elements */
-
-webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ -ms-box-sizing: border-box;
+ box-sizing: border-box;
}
+ .input-prepend input,
+ .input-append input,
.input-prepend input[class*="span"],
.input-append input[class*="span"] {
+ display: inline-block;
width: auto;
}
}
+
@media (min-width: 768px) and (max-width: 979px) {
.row {
margin-left: -20px;
@@ -288,205 +304,136 @@
.row-fluid:after {
clear: both;
}
- .row-fluid > [class*="span"] {
+ .row-fluid [class*="span"] {
+ display: block;
float: left;
+ width: 100%;
+ min-height: 28px;
margin-left: 2.762430939%;
+ *margin-left: 2.709239449638298%;
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ -ms-box-sizing: border-box;
+ box-sizing: border-box;
}
- .row-fluid > [class*="span"]:first-child {
+ .row-fluid [class*="span"]:first-child {
margin-left: 0;
}
- .row-fluid > .span12 {
+ .row-fluid .span12 {
width: 99.999999993%;
+ *width: 99.9468085036383%;
}
- .row-fluid > .span11 {
+ .row-fluid .span11 {
width: 91.436464082%;
+ *width: 91.38327259263829%;
}
- .row-fluid > .span10 {
+ .row-fluid .span10 {
width: 82.87292817100001%;
+ *width: 82.8197366816383%;
}
- .row-fluid > .span9 {
+ .row-fluid .span9 {
width: 74.30939226%;
+ *width: 74.25620077063829%;
}
- .row-fluid > .span8 {
+ .row-fluid .span8 {
width: 65.74585634900001%;
+ *width: 65.6926648596383%;
}
- .row-fluid > .span7 {
+ .row-fluid .span7 {
width: 57.182320438000005%;
+ *width: 57.129128948638304%;
}
- .row-fluid > .span6 {
+ .row-fluid .span6 {
width: 48.618784527%;
+ *width: 48.5655930376383%;
}
- .row-fluid > .span5 {
+ .row-fluid .span5 {
width: 40.055248616%;
+ *width: 40.0020571266383%;
}
- .row-fluid > .span4 {
+ .row-fluid .span4 {
width: 31.491712705%;
+ *width: 31.4385212156383%;
}
- .row-fluid > .span3 {
+ .row-fluid .span3 {
width: 22.928176794%;
+ *width: 22.874985304638297%;
}
- .row-fluid > .span2 {
+ .row-fluid .span2 {
width: 14.364640883%;
+ *width: 14.311449393638298%;
}
- .row-fluid > .span1 {
+ .row-fluid .span1 {
width: 5.801104972%;
+ *width: 5.747913482638298%;
}
input,
textarea,
.uneditable-input {
margin-left: 0;
}
- input.span12, textarea.span12, .uneditable-input.span12 {
+ input.span12,
+ textarea.span12,
+ .uneditable-input.span12 {
width: 714px;
}
- input.span11, textarea.span11, .uneditable-input.span11 {
+ input.span11,
+ textarea.span11,
+ .uneditable-input.span11 {
width: 652px;
}
- input.span10, textarea.span10, .uneditable-input.span10 {
+ input.span10,
+ textarea.span10,
+ .uneditable-input.span10 {
width: 590px;
}
- input.span9, textarea.span9, .uneditable-input.span9 {
+ input.span9,
+ textarea.span9,
+ .uneditable-input.span9 {
width: 528px;
}
- input.span8, textarea.span8, .uneditable-input.span8 {
+ input.span8,
+ textarea.span8,
+ .uneditable-input.span8 {
width: 466px;
}
- input.span7, textarea.span7, .uneditable-input.span7 {
+ input.span7,
+ textarea.span7,
+ .uneditable-input.span7 {
width: 404px;
}
- input.span6, textarea.span6, .uneditable-input.span6 {
+ input.span6,
+ textarea.span6,
+ .uneditable-input.span6 {
width: 342px;
}
- input.span5, textarea.span5, .uneditable-input.span5 {
+ input.span5,
+ textarea.span5,
+ .uneditable-input.span5 {
width: 280px;
}
- input.span4, textarea.span4, .uneditable-input.span4 {
+ input.span4,
+ textarea.span4,
+ .uneditable-input.span4 {
width: 218px;
}
- input.span3, textarea.span3, .uneditable-input.span3 {
+ input.span3,
+ textarea.span3,
+ .uneditable-input.span3 {
width: 156px;
}
- input.span2, textarea.span2, .uneditable-input.span2 {
+ input.span2,
+ textarea.span2,
+ .uneditable-input.span2 {
width: 94px;
}
- input.span1, textarea.span1, .uneditable-input.span1 {
+ input.span1,
+ textarea.span1,
+ .uneditable-input.span1 {
width: 32px;
}
}
-@media (max-width: 979px) {
- body {
- padding-top: 0;
- }
- .navbar-fixed-top {
- position: static;
- margin-bottom: 18px;
- }
- .navbar-fixed-top .navbar-inner {
- padding: 5px;
- }
- .navbar .container {
- width: auto;
- padding: 0;
- }
- .navbar .brand {
- padding-left: 10px;
- padding-right: 10px;
- margin: 0 0 0 -5px;
- }
- .navbar .nav-collapse {
- clear: left;
- }
- .navbar .nav {
- float: none;
- margin: 0 0 9px;
- }
- .navbar .nav > li {
- float: none;
- }
- .navbar .nav > li > a {
- margin-bottom: 2px;
- }
- .navbar .nav > .divider-vertical {
- display: none;
- }
- .navbar .nav .nav-header {
- color: #999999;
- text-shadow: none;
- }
- .navbar .nav > li > a,
- .navbar .dropdown-menu a {
- padding: 6px 15px;
- font-weight: bold;
- color: #999999;
- -webkit-border-radius: 3px;
- -moz-border-radius: 3px;
- border-radius: 3px;
- }
- .navbar .dropdown-menu li + li a {
- margin-bottom: 2px;
- }
- .navbar .nav > li > a:hover,
- .navbar .dropdown-menu a:hover {
- background-color: #222222;
- }
- .navbar .dropdown-menu {
- position: static;
- top: auto;
- left: auto;
- float: none;
- display: block;
- max-width: none;
- margin: 0 15px;
- padding: 0;
- background-color: transparent;
- border: none;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- border-radius: 0;
- -webkit-box-shadow: none;
- -moz-box-shadow: none;
- box-shadow: none;
- }
- .navbar .dropdown-menu:before,
- .navbar .dropdown-menu:after {
- display: none;
- }
- .navbar .dropdown-menu .divider {
- display: none;
- }
- .navbar-form,
- .navbar-search {
- float: none;
- padding: 9px 15px;
- margin: 9px 0;
- border-top: 1px solid #222222;
- border-bottom: 1px solid #222222;
- -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
- -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
- }
- .navbar .nav.pull-right {
- float: none;
- margin-left: 0;
- }
- .navbar-static .navbar-inner {
- padding-left: 10px;
- padding-right: 10px;
- }
- .btn-navbar {
- display: block;
- }
- .nav-collapse {
- overflow: hidden;
- height: 0;
- }
-}
-@media (min-width: 980px) {
- .nav-collapse.collapse {
- height: auto !important;
- overflow: visible !important;
- }
-}
+
@media (min-width: 1200px) {
.row {
margin-left: -30px;
@@ -593,94 +540,266 @@
.row-fluid:after {
clear: both;
}
- .row-fluid > [class*="span"] {
+ .row-fluid [class*="span"] {
+ display: block;
float: left;
+ width: 100%;
+ min-height: 28px;
margin-left: 2.564102564%;
+ *margin-left: 2.510911074638298%;
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ -ms-box-sizing: border-box;
+ box-sizing: border-box;
}
- .row-fluid > [class*="span"]:first-child {
+ .row-fluid [class*="span"]:first-child {
margin-left: 0;
}
- .row-fluid > .span12 {
+ .row-fluid .span12 {
width: 100%;
+ *width: 99.94680851063829%;
}
- .row-fluid > .span11 {
+ .row-fluid .span11 {
width: 91.45299145300001%;
+ *width: 91.3997999636383%;
}
- .row-fluid > .span10 {
+ .row-fluid .span10 {
width: 82.905982906%;
+ *width: 82.8527914166383%;
}
- .row-fluid > .span9 {
+ .row-fluid .span9 {
width: 74.358974359%;
+ *width: 74.30578286963829%;
}
- .row-fluid > .span8 {
+ .row-fluid .span8 {
width: 65.81196581200001%;
+ *width: 65.7587743226383%;
}
- .row-fluid > .span7 {
+ .row-fluid .span7 {
width: 57.264957265%;
+ *width: 57.2117657756383%;
}
- .row-fluid > .span6 {
+ .row-fluid .span6 {
width: 48.717948718%;
+ *width: 48.6647572286383%;
}
- .row-fluid > .span5 {
+ .row-fluid .span5 {
width: 40.170940171000005%;
+ *width: 40.117748681638304%;
}
- .row-fluid > .span4 {
+ .row-fluid .span4 {
width: 31.623931624%;
+ *width: 31.5707401346383%;
}
- .row-fluid > .span3 {
+ .row-fluid .span3 {
width: 23.076923077%;
+ *width: 23.0237315876383%;
}
- .row-fluid > .span2 {
+ .row-fluid .span2 {
width: 14.529914530000001%;
+ *width: 14.4767230406383%;
}
- .row-fluid > .span1 {
+ .row-fluid .span1 {
width: 5.982905983%;
+ *width: 5.929714493638298%;
}
input,
textarea,
.uneditable-input {
margin-left: 0;
}
- input.span12, textarea.span12, .uneditable-input.span12 {
+ input.span12,
+ textarea.span12,
+ .uneditable-input.span12 {
width: 1160px;
}
- input.span11, textarea.span11, .uneditable-input.span11 {
+ input.span11,
+ textarea.span11,
+ .uneditable-input.span11 {
width: 1060px;
}
- input.span10, textarea.span10, .uneditable-input.span10 {
+ input.span10,
+ textarea.span10,
+ .uneditable-input.span10 {
width: 960px;
}
- input.span9, textarea.span9, .uneditable-input.span9 {
+ input.span9,
+ textarea.span9,
+ .uneditable-input.span9 {
width: 860px;
}
- input.span8, textarea.span8, .uneditable-input.span8 {
+ input.span8,
+ textarea.span8,
+ .uneditable-input.span8 {
width: 760px;
}
- input.span7, textarea.span7, .uneditable-input.span7 {
+ input.span7,
+ textarea.span7,
+ .uneditable-input.span7 {
width: 660px;
}
- input.span6, textarea.span6, .uneditable-input.span6 {
+ input.span6,
+ textarea.span6,
+ .uneditable-input.span6 {
width: 560px;
}
- input.span5, textarea.span5, .uneditable-input.span5 {
+ input.span5,
+ textarea.span5,
+ .uneditable-input.span5 {
width: 460px;
}
- input.span4, textarea.span4, .uneditable-input.span4 {
+ input.span4,
+ textarea.span4,
+ .uneditable-input.span4 {
width: 360px;
}
- input.span3, textarea.span3, .uneditable-input.span3 {
+ input.span3,
+ textarea.span3,
+ .uneditable-input.span3 {
width: 260px;
}
- input.span2, textarea.span2, .uneditable-input.span2 {
+ input.span2,
+ textarea.span2,
+ .uneditable-input.span2 {
width: 160px;
}
- input.span1, textarea.span1, .uneditable-input.span1 {
+ input.span1,
+ textarea.span1,
+ .uneditable-input.span1 {
width: 60px;
}
.thumbnails {
margin-left: -30px;
}
- .thumbnails > li {
- margin-left: 30px;
+ .row-fluid .thumbnails {
+ margin-left: 0;
+ }
+}
+
+@media (max-width: 979px) {
+ body {
+ padding-top: 0;
+ }
+ .navbar-fixed-top {
+ position: static;
+ margin-bottom: 18px;
+ }
+ .navbar-fixed-top .navbar-inner {
+ padding: 5px;
+ }
+ .navbar .container {
+ width: auto;
+ padding: 0;
+ }
+ .navbar .brand {
+ padding-right: 10px;
+ padding-left: 10px;
+ margin: 0 0 0 -5px;
+ }
+ .nav-collapse {
+ clear: both;
+ }
+ .nav-collapse .nav {
+ float: none;
+ margin: 0 0 9px;
+ }
+ .nav-collapse .nav > li {
+ float: none;
+ }
+ .nav-collapse .nav > li > a {
+ margin-bottom: 2px;
+ }
+ .nav-collapse .nav > .divider-vertical {
+ display: none;
+ }
+ .nav-collapse .nav .nav-header {
+ color: #999999;
+ text-shadow: none;
+ }
+ .nav-collapse .nav > li > a,
+ .nav-collapse .dropdown-menu a {
+ padding: 6px 15px;
+ font-weight: bold;
+ color: #999999;
+ -webkit-border-radius: 3px;
+ -moz-border-radius: 3px;
+ border-radius: 3px;
+ }
+ .nav-collapse .btn {
+ padding: 4px 10px 4px;
+ font-weight: normal;
+ -webkit-border-radius: 4px;
+ -moz-border-radius: 4px;
+ border-radius: 4px;
+ }
+ .nav-collapse .dropdown-menu li + li a {
+ margin-bottom: 2px;
+ }
+ .nav-collapse .nav > li > a:hover,
+ .nav-collapse .dropdown-menu a:hover {
+ background-color: #222222;
+ }
+ .nav-collapse.in .btn-group {
+ padding: 0;
+ margin-top: 5px;
+ }
+ .nav-collapse .dropdown-menu {
+ position: static;
+ top: auto;
+ left: auto;
+ display: block;
+ float: none;
+ max-width: none;
+ padding: 0;
+ margin: 0 15px;
+ background-color: transparent;
+ border: none;
+ -webkit-border-radius: 0;
+ -moz-border-radius: 0;
+ border-radius: 0;
+ -webkit-box-shadow: none;
+ -moz-box-shadow: none;
+ box-shadow: none;
+ }
+ .nav-collapse .dropdown-menu:before,
+ .nav-collapse .dropdown-menu:after {
+ display: none;
+ }
+ .nav-collapse .dropdown-menu .divider {
+ display: none;
+ }
+ .nav-collapse .navbar-form,
+ .nav-collapse .navbar-search {
+ float: none;
+ padding: 9px 15px;
+ margin: 9px 0;
+ border-top: 1px solid #222222;
+ border-bottom: 1px solid #222222;
+ -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
+ -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
+ }
+ .navbar .nav-collapse .nav.pull-right {
+ float: none;
+ margin-left: 0;
+ }
+ .nav-collapse,
+ .nav-collapse.collapse {
+ height: 0;
+ overflow: hidden;
+ }
+ .navbar .btn-navbar {
+ display: block;
+ }
+ .navbar-static .navbar-inner {
+ padding-right: 10px;
+ padding-left: 10px;
+ }
+}
+
+@media (min-width: 980px) {
+ .nav-collapse.collapse {
+ height: auto !important;
+ overflow: visible !important;
}
}
diff --git a/docs/assets/css/bootstrap.css b/docs/assets/css/bootstrap.css
index 495188af7..bca6b7c32 100644
--- a/docs/assets/css/bootstrap.css
+++ b/docs/assets/css/bootstrap.css
@@ -1,5 +1,5 @@
/*!
- * Bootstrap v2.0.2
+ * Bootstrap v2.0.3
*
* Copyright 2012 Twitter, Inc
* Licensed under the Apache License v2.0
@@ -7,6 +7,7 @@
*
* Designed and built with all the love in the world @twitter by @mdo and @fat.
*/
+
article,
aside,
details,
@@ -19,6 +20,7 @@ nav,
section {
display: block;
}
+
audio,
canvas,
video {
@@ -26,23 +28,28 @@ video {
*display: inline;
*zoom: 1;
}
+
audio:not([controls]) {
display: none;
}
+
html {
font-size: 100%;
-webkit-text-size-adjust: 100%;
- -ms-text-size-adjust: 100%;
+ -ms-text-size-adjust: 100%;
}
+
a:focus {
outline: thin dotted #333;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
+
a:hover,
a:active {
outline: 0;
}
+
sub,
sup {
position: relative;
@@ -50,18 +57,22 @@ sup {
line-height: 0;
vertical-align: baseline;
}
+
sup {
top: -0.5em;
}
+
sub {
bottom: -0.25em;
}
+
img {
- height: auto;
+ max-width: 100%;
+ vertical-align: middle;
border: 0;
-ms-interpolation-mode: bicubic;
- vertical-align: middle;
}
+
button,
input,
select,
@@ -70,16 +81,19 @@ textarea {
font-size: 100%;
vertical-align: middle;
}
+
button,
input {
*overflow: visible;
line-height: normal;
}
+
button::-moz-focus-inner,
input::-moz-focus-inner {
padding: 0;
border: 0;
}
+
button,
input[type="button"],
input[type="reset"],
@@ -87,49 +101,56 @@ input[type="submit"] {
cursor: pointer;
-webkit-appearance: button;
}
+
input[type="search"] {
- -webkit-appearance: textfield;
-webkit-box-sizing: content-box;
- -moz-box-sizing: content-box;
- box-sizing: content-box;
+ -moz-box-sizing: content-box;
+ box-sizing: content-box;
+ -webkit-appearance: textfield;
}
+
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button {
-webkit-appearance: none;
}
+
textarea {
overflow: auto;
vertical-align: top;
}
+
.clearfix {
*zoom: 1;
}
+
.clearfix:before,
.clearfix:after {
display: table;
content: "";
}
+
.clearfix:after {
clear: both;
}
+
.hide-text {
- overflow: hidden;
- text-indent: 100%;
- white-space: nowrap;
+ font: 0/0 a;
+ color: transparent;
+ text-shadow: none;
+ background-color: transparent;
+ border: 0;
}
+
.input-block-level {
display: block;
width: 100%;
min-height: 28px;
- /* Make inputs at least the height of their button counterpart */
-
- /* Makes inputs behave like true block-level elements */
-
-webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ -ms-box-sizing: border-box;
+ box-sizing: border-box;
}
+
body {
margin: 0;
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
@@ -138,204 +159,282 @@ body {
color: #333333;
background-color: #ffffff;
}
+
a {
color: #0088cc;
text-decoration: none;
}
+
a:hover {
color: #005580;
text-decoration: underline;
}
+
.row {
margin-left: -20px;
*zoom: 1;
}
+
.row:before,
.row:after {
display: table;
content: "";
}
+
.row:after {
clear: both;
}
+
[class*="span"] {
float: left;
margin-left: 20px;
}
+
.container,
.navbar-fixed-top .container,
.navbar-fixed-bottom .container {
width: 940px;
}
+
.span12 {
width: 940px;
}
+
.span11 {
width: 860px;
}
+
.span10 {
width: 780px;
}
+
.span9 {
width: 700px;
}
+
.span8 {
width: 620px;
}
+
.span7 {
width: 540px;
}
+
.span6 {
width: 460px;
}
+
.span5 {
width: 380px;
}
+
.span4 {
width: 300px;
}
+
.span3 {
width: 220px;
}
+
.span2 {
width: 140px;
}
+
.span1 {
width: 60px;
}
+
.offset12 {
margin-left: 980px;
}
+
.offset11 {
margin-left: 900px;
}
+
.offset10 {
margin-left: 820px;
}
+
.offset9 {
margin-left: 740px;
}
+
.offset8 {
margin-left: 660px;
}
+
.offset7 {
margin-left: 580px;
}
+
.offset6 {
margin-left: 500px;
}
+
.offset5 {
margin-left: 420px;
}
+
.offset4 {
margin-left: 340px;
}
+
.offset3 {
margin-left: 260px;
}
+
.offset2 {
margin-left: 180px;
}
+
.offset1 {
margin-left: 100px;
}
+
.row-fluid {
width: 100%;
*zoom: 1;
}
+
.row-fluid:before,
.row-fluid:after {
display: table;
content: "";
}
+
.row-fluid:after {
clear: both;
}
-.row-fluid > [class*="span"] {
+
+.row-fluid [class*="span"] {
+ display: block;
float: left;
+ width: 100%;
+ min-height: 28px;
margin-left: 2.127659574%;
+ *margin-left: 2.0744680846382977%;
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ -ms-box-sizing: border-box;
+ box-sizing: border-box;
}
-.row-fluid > [class*="span"]:first-child {
+
+.row-fluid [class*="span"]:first-child {
margin-left: 0;
}
-.row-fluid > .span12 {
+
+.row-fluid .span12 {
width: 99.99999998999999%;
+ *width: 99.94680850063828%;
}
-.row-fluid > .span11 {
+
+.row-fluid .span11 {
width: 91.489361693%;
+ *width: 91.4361702036383%;
}
-.row-fluid > .span10 {
+
+.row-fluid .span10 {
width: 82.97872339599999%;
+ *width: 82.92553190663828%;
}
-.row-fluid > .span9 {
+
+.row-fluid .span9 {
width: 74.468085099%;
+ *width: 74.4148936096383%;
}
-.row-fluid > .span8 {
+
+.row-fluid .span8 {
width: 65.95744680199999%;
+ *width: 65.90425531263828%;
}
-.row-fluid > .span7 {
+
+.row-fluid .span7 {
width: 57.446808505%;
+ *width: 57.3936170156383%;
}
-.row-fluid > .span6 {
+
+.row-fluid .span6 {
width: 48.93617020799999%;
+ *width: 48.88297871863829%;
}
-.row-fluid > .span5 {
+
+.row-fluid .span5 {
width: 40.425531911%;
+ *width: 40.3723404216383%;
}
-.row-fluid > .span4 {
+
+.row-fluid .span4 {
width: 31.914893614%;
+ *width: 31.8617021246383%;
}
-.row-fluid > .span3 {
+
+.row-fluid .span3 {
width: 23.404255317%;
+ *width: 23.3510638276383%;
}
-.row-fluid > .span2 {
+
+.row-fluid .span2 {
width: 14.89361702%;
+ *width: 14.8404255306383%;
}
-.row-fluid > .span1 {
+
+.row-fluid .span1 {
width: 6.382978723%;
+ *width: 6.329787233638298%;
}
+
.container {
- margin-left: auto;
margin-right: auto;
+ margin-left: auto;
*zoom: 1;
}
+
.container:before,
.container:after {
display: table;
content: "";
}
+
.container:after {
clear: both;
}
+
.container-fluid {
- padding-left: 20px;
padding-right: 20px;
+ padding-left: 20px;
*zoom: 1;
}
+
.container-fluid:before,
.container-fluid:after {
display: table;
content: "";
}
+
.container-fluid:after {
clear: both;
}
+
p {
margin: 0 0 9px;
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size: 13px;
line-height: 18px;
}
+
p small {
font-size: 11px;
color: #999999;
}
+
.lead {
margin-bottom: 18px;
font-size: 20px;
font-weight: 200;
line-height: 27px;
}
+
h1,
h2,
h3,
@@ -348,6 +447,7 @@ h6 {
color: inherit;
text-rendering: optimizelegibility;
}
+
h1 small,
h2 small,
h3 small,
@@ -357,227 +457,280 @@ h6 small {
font-weight: normal;
color: #999999;
}
+
h1 {
font-size: 30px;
line-height: 36px;
}
+
h1 small {
font-size: 18px;
}
+
h2 {
font-size: 24px;
line-height: 36px;
}
+
h2 small {
font-size: 18px;
}
+
h3 {
- line-height: 27px;
font-size: 18px;
+ line-height: 27px;
}
+
h3 small {
font-size: 14px;
}
+
h4,
h5,
h6 {
line-height: 18px;
}
+
h4 {
font-size: 14px;
}
+
h4 small {
font-size: 12px;
}
+
h5 {
font-size: 12px;
}
+
h6 {
font-size: 11px;
color: #999999;
text-transform: uppercase;
}
+
.page-header {
padding-bottom: 17px;
margin: 18px 0;
border-bottom: 1px solid #eeeeee;
}
+
.page-header h1 {
line-height: 1;
}
+
ul,
ol {
padding: 0;
margin: 0 0 9px 25px;
}
+
ul ul,
ul ol,
ol ol,
ol ul {
margin-bottom: 0;
}
+
ul {
list-style: disc;
}
+
ol {
list-style: decimal;
}
+
li {
line-height: 18px;
}
+
ul.unstyled,
ol.unstyled {
margin-left: 0;
list-style: none;
}
+
dl {
margin-bottom: 18px;
}
+
dt,
dd {
line-height: 18px;
}
+
dt {
font-weight: bold;
line-height: 17px;
}
+
dd {
margin-left: 9px;
}
+
.dl-horizontal dt {
float: left;
- clear: left;
width: 120px;
+ overflow: hidden;
+ clear: left;
text-align: right;
+ text-overflow: ellipsis;
+ white-space: nowrap;
}
+
.dl-horizontal dd {
margin-left: 130px;
}
+
hr {
margin: 18px 0;
border: 0;
border-top: 1px solid #eeeeee;
border-bottom: 1px solid #ffffff;
}
+
strong {
font-weight: bold;
}
+
em {
font-style: italic;
}
+
.muted {
color: #999999;
}
+
abbr[title] {
- border-bottom: 1px dotted #ddd;
cursor: help;
+ border-bottom: 1px dotted #ddd;
}
+
abbr.initialism {
font-size: 90%;
text-transform: uppercase;
}
+
blockquote {
padding: 0 0 0 15px;
margin: 0 0 18px;
border-left: 5px solid #eeeeee;
}
+
blockquote p {
margin-bottom: 0;
font-size: 16px;
font-weight: 300;
line-height: 22.5px;
}
+
blockquote small {
display: block;
line-height: 18px;
color: #999999;
}
+
blockquote small:before {
content: '\2014 \00A0';
}
+
blockquote.pull-right {
float: right;
- padding-left: 0;
padding-right: 15px;
- border-left: 0;
+ padding-left: 0;
border-right: 5px solid #eeeeee;
+ border-left: 0;
}
+
blockquote.pull-right p,
blockquote.pull-right small {
text-align: right;
}
+
q:before,
q:after,
blockquote:before,
blockquote:after {
content: "";
}
+
address {
display: block;
margin-bottom: 18px;
- line-height: 18px;
font-style: normal;
+ line-height: 18px;
}
+
small {
font-size: 100%;
}
+
cite {
font-style: normal;
}
+
code,
pre {
padding: 0 3px 2px;
- font-family: Menlo, Monaco, "Courier New", monospace;
+ font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
font-size: 12px;
color: #333333;
-webkit-border-radius: 3px;
- -moz-border-radius: 3px;
- border-radius: 3px;
+ -moz-border-radius: 3px;
+ border-radius: 3px;
}
+
code {
padding: 2px 4px;
color: #d14;
background-color: #f7f7f9;
border: 1px solid #e1e1e8;
}
+
pre {
display: block;
padding: 8.5px;
margin: 0 0 9px;
font-size: 12.025px;
line-height: 18px;
+ word-break: break-all;
+ word-wrap: break-word;
+ white-space: pre;
+ white-space: pre-wrap;
background-color: #f5f5f5;
border: 1px solid #ccc;
border: 1px solid rgba(0, 0, 0, 0.15);
-webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
- white-space: pre;
- white-space: pre-wrap;
- word-break: break-all;
- word-wrap: break-word;
+ -moz-border-radius: 4px;
+ border-radius: 4px;
}
+
pre.prettyprint {
margin-bottom: 18px;
}
+
pre code {
padding: 0;
color: inherit;
background-color: transparent;
border: 0;
}
+
.pre-scrollable {
max-height: 340px;
overflow-y: scroll;
}
+
form {
margin: 0 0 18px;
}
+
fieldset {
padding: 0;
margin: 0;
border: 0;
}
+
legend {
display: block;
width: 100%;
@@ -589,10 +742,12 @@ legend {
border: 0;
border-bottom: 1px solid #eee;
}
+
legend small {
font-size: 13.5px;
color: #999999;
}
+
label,
input,
button,
@@ -602,17 +757,20 @@ textarea {
font-weight: normal;
line-height: 18px;
}
+
input,
button,
select,
textarea {
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
+
label {
display: block;
margin-bottom: 5px;
color: #333333;
}
+
input,
textarea,
select,
@@ -625,20 +783,24 @@ select,
font-size: 13px;
line-height: 18px;
color: #555555;
+ background-color: #ffffff;
border: 1px solid #cccccc;
-webkit-border-radius: 3px;
- -moz-border-radius: 3px;
- border-radius: 3px;
+ -moz-border-radius: 3px;
+ border-radius: 3px;
}
+
.uneditable-textarea {
width: auto;
height: auto;
}
+
label input,
label textarea,
label select {
display: block;
}
+
input[type="image"],
input[type="checkbox"],
input[type="radio"] {
@@ -651,33 +813,38 @@ input[type="radio"] {
line-height: normal;
cursor: pointer;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- border-radius: 0;
+ background-color: transparent;
border: 0 \9;
/* IE9 and down */
+ -webkit-border-radius: 0;
+ -moz-border-radius: 0;
+ border-radius: 0;
}
+
input[type="image"] {
border: 0;
}
+
input[type="file"] {
width: auto;
padding: initial;
line-height: initial;
- border: initial;
background-color: #ffffff;
background-color: initial;
+ border: initial;
-webkit-box-shadow: none;
- -moz-box-shadow: none;
- box-shadow: none;
+ -moz-box-shadow: none;
+ box-shadow: none;
}
+
input[type="button"],
input[type="reset"],
input[type="submit"] {
width: auto;
height: auto;
}
+
select,
input[type="file"] {
height: 28px;
@@ -688,41 +855,52 @@ input[type="file"] {
line-height: 28px;
}
+
input[type="file"] {
line-height: 18px \9;
}
+
select {
width: 220px;
background-color: #ffffff;
}
+
select[multiple],
select[size] {
height: auto;
}
+
input[type="image"] {
-webkit-box-shadow: none;
- -moz-box-shadow: none;
- box-shadow: none;
+ -moz-box-shadow: none;
+ box-shadow: none;
}
+
textarea {
height: auto;
}
+
input[type="hidden"] {
display: none;
}
+
.radio,
.checkbox {
+ min-height: 18px;
padding-left: 18px;
}
+
.radio input[type="radio"],
.checkbox input[type="checkbox"] {
float: left;
margin-left: -18px;
}
+
.controls > .radio:first-child,
.controls > .checkbox:first-child {
padding-top: 5px;
}
+
.radio.inline,
.checkbox.inline {
display: inline-block;
@@ -730,290 +908,379 @@ input[type="hidden"] {
margin-bottom: 0;
vertical-align: middle;
}
+
.radio.inline + .radio.inline,
.checkbox.inline + .checkbox.inline {
margin-left: 10px;
}
+
input,
textarea {
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+ -moz-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 linear 0.2s, box-shadow linear 0.2s;
- -moz-transition: border linear 0.2s, box-shadow linear 0.2s;
- -ms-transition: border linear 0.2s, box-shadow linear 0.2s;
- -o-transition: border linear 0.2s, box-shadow linear 0.2s;
- transition: border linear 0.2s, box-shadow linear 0.2s;
+ -moz-transition: border linear 0.2s, box-shadow linear 0.2s;
+ -ms-transition: border linear 0.2s, box-shadow linear 0.2s;
+ -o-transition: border linear 0.2s, box-shadow linear 0.2s;
+ transition: border linear 0.2s, box-shadow linear 0.2s;
}
+
input:focus,
textarea:focus {
border-color: rgba(82, 168, 236, 0.8);
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
- -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
outline: 0;
outline: thin dotted \9;
/* IE6-9 */
+ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
+ -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
}
+
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus,
select:focus {
- -webkit-box-shadow: none;
- -moz-box-shadow: none;
- box-shadow: none;
outline: thin dotted #333;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
+ -webkit-box-shadow: none;
+ -moz-box-shadow: none;
+ box-shadow: none;
}
+
.input-mini {
width: 60px;
}
+
.input-small {
width: 90px;
}
+
.input-medium {
width: 150px;
}
+
.input-large {
width: 210px;
}
+
.input-xlarge {
width: 270px;
}
+
.input-xxlarge {
width: 530px;
}
+
input[class*="span"],
select[class*="span"],
textarea[class*="span"],
-.uneditable-input {
+.uneditable-input[class*="span"],
+.row-fluid input[class*="span"],
+.row-fluid select[class*="span"],
+.row-fluid textarea[class*="span"],
+.row-fluid .uneditable-input[class*="span"] {
float: none;
margin-left: 0;
}
+
input,
textarea,
.uneditable-input {
margin-left: 0;
}
-input.span12, textarea.span12, .uneditable-input.span12 {
+
+input.span12,
+textarea.span12,
+.uneditable-input.span12 {
width: 930px;
}
-input.span11, textarea.span11, .uneditable-input.span11 {
+
+input.span11,
+textarea.span11,
+.uneditable-input.span11 {
width: 850px;
}
-input.span10, textarea.span10, .uneditable-input.span10 {
+
+input.span10,
+textarea.span10,
+.uneditable-input.span10 {
width: 770px;
}
-input.span9, textarea.span9, .uneditable-input.span9 {
+
+input.span9,
+textarea.span9,
+.uneditable-input.span9 {
width: 690px;
}
-input.span8, textarea.span8, .uneditable-input.span8 {
+
+input.span8,
+textarea.span8,
+.uneditable-input.span8 {
width: 610px;
}
-input.span7, textarea.span7, .uneditable-input.span7 {
+
+input.span7,
+textarea.span7,
+.uneditable-input.span7 {
width: 530px;
}
-input.span6, textarea.span6, .uneditable-input.span6 {
+
+input.span6,
+textarea.span6,
+.uneditable-input.span6 {
width: 450px;
}
-input.span5, textarea.span5, .uneditable-input.span5 {
+
+input.span5,
+textarea.span5,
+.uneditable-input.span5 {
width: 370px;
}
-input.span4, textarea.span4, .uneditable-input.span4 {
+
+input.span4,
+textarea.span4,
+.uneditable-input.span4 {
width: 290px;
}
-input.span3, textarea.span3, .uneditable-input.span3 {
+
+input.span3,
+textarea.span3,
+.uneditable-input.span3 {
width: 210px;
}
-input.span2, textarea.span2, .uneditable-input.span2 {
+
+input.span2,
+textarea.span2,
+.uneditable-input.span2 {
width: 130px;
}
-input.span1, textarea.span1, .uneditable-input.span1 {
+
+input.span1,
+textarea.span1,
+.uneditable-input.span1 {
width: 50px;
}
+
input[disabled],
select[disabled],
textarea[disabled],
input[readonly],
select[readonly],
textarea[readonly] {
+ cursor: not-allowed;
background-color: #eeeeee;
border-color: #ddd;
- cursor: not-allowed;
}
+
+input[type="radio"][disabled],
+input[type="checkbox"][disabled],
+input[type="radio"][readonly],
+input[type="checkbox"][readonly] {
+ background-color: transparent;
+}
+
.control-group.warning > label,
.control-group.warning .help-block,
.control-group.warning .help-inline {
color: #c09853;
}
+
.control-group.warning input,
.control-group.warning select,
.control-group.warning textarea {
color: #c09853;
border-color: #c09853;
}
+
.control-group.warning input:focus,
.control-group.warning select:focus,
.control-group.warning textarea:focus {
border-color: #a47e3c;
-webkit-box-shadow: 0 0 6px #dbc59e;
- -moz-box-shadow: 0 0 6px #dbc59e;
- box-shadow: 0 0 6px #dbc59e;
+ -moz-box-shadow: 0 0 6px #dbc59e;
+ box-shadow: 0 0 6px #dbc59e;
}
+
.control-group.warning .input-prepend .add-on,
.control-group.warning .input-append .add-on {
color: #c09853;
background-color: #fcf8e3;
border-color: #c09853;
}
+
.control-group.error > label,
.control-group.error .help-block,
.control-group.error .help-inline {
color: #b94a48;
}
+
.control-group.error input,
.control-group.error select,
.control-group.error textarea {
color: #b94a48;
border-color: #b94a48;
}
+
.control-group.error input:focus,
.control-group.error select:focus,
.control-group.error textarea:focus {
border-color: #953b39;
-webkit-box-shadow: 0 0 6px #d59392;
- -moz-box-shadow: 0 0 6px #d59392;
- box-shadow: 0 0 6px #d59392;
+ -moz-box-shadow: 0 0 6px #d59392;
+ box-shadow: 0 0 6px #d59392;
}
+
.control-group.error .input-prepend .add-on,
.control-group.error .input-append .add-on {
color: #b94a48;
background-color: #f2dede;
border-color: #b94a48;
}
+
.control-group.success > label,
.control-group.success .help-block,
.control-group.success .help-inline {
color: #468847;
}
+
.control-group.success input,
.control-group.success select,
.control-group.success textarea {
color: #468847;
border-color: #468847;
}
+
.control-group.success input:focus,
.control-group.success select:focus,
.control-group.success textarea:focus {
border-color: #356635;
-webkit-box-shadow: 0 0 6px #7aba7b;
- -moz-box-shadow: 0 0 6px #7aba7b;
- box-shadow: 0 0 6px #7aba7b;
+ -moz-box-shadow: 0 0 6px #7aba7b;
+ box-shadow: 0 0 6px #7aba7b;
}
+
.control-group.success .input-prepend .add-on,
.control-group.success .input-append .add-on {
color: #468847;
background-color: #dff0d8;
border-color: #468847;
}
+
input:focus:required:invalid,
textarea:focus:required:invalid,
select:focus:required:invalid {
color: #b94a48;
border-color: #ee5f5b;
}
+
input:focus:required:invalid:focus,
textarea:focus:required:invalid:focus,
select:focus:required:invalid:focus {
border-color: #e9322d;
-webkit-box-shadow: 0 0 6px #f8b9b7;
- -moz-box-shadow: 0 0 6px #f8b9b7;
- box-shadow: 0 0 6px #f8b9b7;
+ -moz-box-shadow: 0 0 6px #f8b9b7;
+ box-shadow: 0 0 6px #f8b9b7;
}
+
.form-actions {
padding: 17px 20px 18px;
margin-top: 18px;
margin-bottom: 18px;
- background-color: #eeeeee;
+ background-color: #f5f5f5;
border-top: 1px solid #ddd;
*zoom: 1;
}
+
.form-actions:before,
.form-actions:after {
display: table;
content: "";
}
+
.form-actions:after {
clear: both;
}
+
.uneditable-input {
- display: block;
+ overflow: hidden;
+ white-space: nowrap;
+ cursor: not-allowed;
background-color: #ffffff;
border-color: #eee;
-webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025);
- -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025);
- box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025);
- cursor: not-allowed;
+ -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025);
+ box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025);
}
+
:-moz-placeholder {
color: #999999;
}
+
::-webkit-input-placeholder {
color: #999999;
}
+
.help-block,
.help-inline {
color: #555555;
}
+
.help-block {
display: block;
margin-bottom: 9px;
}
+
.help-inline {
display: inline-block;
*display: inline;
- /* IE7 inline-block hack */
-
- *zoom: 1;
- vertical-align: middle;
padding-left: 5px;
+ vertical-align: middle;
+ *zoom: 1;
}
+
.input-prepend,
.input-append {
margin-bottom: 5px;
}
+
.input-prepend input,
.input-append input,
.input-prepend select,
.input-append select,
.input-prepend .uneditable-input,
.input-append .uneditable-input {
+ position: relative;
+ margin-bottom: 0;
*margin-left: 0;
+ vertical-align: middle;
-webkit-border-radius: 0 3px 3px 0;
- -moz-border-radius: 0 3px 3px 0;
- border-radius: 0 3px 3px 0;
+ -moz-border-radius: 0 3px 3px 0;
+ border-radius: 0 3px 3px 0;
}
+
.input-prepend input:focus,
.input-append input:focus,
.input-prepend select:focus,
.input-append select:focus,
.input-prepend .uneditable-input:focus,
.input-append .uneditable-input:focus {
- position: relative;
z-index: 2;
}
+
.input-prepend .uneditable-input,
.input-append .uneditable-input {
border-left-color: #ccc;
}
+
.input-prepend .add-on,
.input-append .add-on {
display: inline-block;
width: auto;
- min-width: 16px;
height: 18px;
+ min-width: 16px;
padding: 4px 5px;
font-weight: normal;
line-height: 18px;
@@ -1023,69 +1290,92 @@ select:focus:required:invalid:focus {
background-color: #eeeeee;
border: 1px solid #ccc;
}
+
.input-prepend .add-on,
.input-append .add-on,
.input-prepend .btn,
.input-append .btn {
- -webkit-border-radius: 3px 0 0 3px;
- -moz-border-radius: 3px 0 0 3px;
- border-radius: 3px 0 0 3px;
+ margin-left: -1px;
+ -webkit-border-radius: 0;
+ -moz-border-radius: 0;
+ border-radius: 0;
}
+
.input-prepend .active,
.input-append .active {
background-color: #a9dba9;
border-color: #46a546;
}
+
.input-prepend .add-on,
.input-prepend .btn {
margin-right: -1px;
}
+
+.input-prepend .add-on:first-child,
+.input-prepend .btn:first-child {
+ -webkit-border-radius: 3px 0 0 3px;
+ -moz-border-radius: 3px 0 0 3px;
+ border-radius: 3px 0 0 3px;
+}
+
.input-append input,
-.input-append select .uneditable-input {
+.input-append select,
+.input-append .uneditable-input {
-webkit-border-radius: 3px 0 0 3px;
- -moz-border-radius: 3px 0 0 3px;
- border-radius: 3px 0 0 3px;
+ -moz-border-radius: 3px 0 0 3px;
+ border-radius: 3px 0 0 3px;
}
+
.input-append .uneditable-input {
- border-left-color: #eee;
border-right-color: #ccc;
+ border-left-color: #eee;
}
-.input-append .add-on,
-.input-append .btn {
- margin-left: -1px;
+
+.input-append .add-on:last-child,
+.input-append .btn:last-child {
-webkit-border-radius: 0 3px 3px 0;
- -moz-border-radius: 0 3px 3px 0;
- border-radius: 0 3px 3px 0;
+ -moz-border-radius: 0 3px 3px 0;
+ border-radius: 0 3px 3px 0;
}
+
.input-prepend.input-append input,
.input-prepend.input-append select,
.input-prepend.input-append .uneditable-input {
-webkit-border-radius: 0;
- -moz-border-radius: 0;
- border-radius: 0;
+ -moz-border-radius: 0;
+ border-radius: 0;
}
+
.input-prepend.input-append .add-on:first-child,
.input-prepend.input-append .btn:first-child {
margin-right: -1px;
-webkit-border-radius: 3px 0 0 3px;
- -moz-border-radius: 3px 0 0 3px;
- border-radius: 3px 0 0 3px;
+ -moz-border-radius: 3px 0 0 3px;
+ border-radius: 3px 0 0 3px;
}
+
.input-prepend.input-append .add-on:last-child,
.input-prepend.input-append .btn:last-child {
margin-left: -1px;
-webkit-border-radius: 0 3px 3px 0;
- -moz-border-radius: 0 3px 3px 0;
- border-radius: 0 3px 3px 0;
+ -moz-border-radius: 0 3px 3px 0;
+ border-radius: 0 3px 3px 0;
}
+
.search-query {
- padding-left: 14px;
padding-right: 14px;
+ padding-right: 4px \9;
+ padding-left: 14px;
+ padding-left: 4px \9;
+ /* IE7-8 doesn't have border-radius, so don't indent the padding */
+
margin-bottom: 0;
-webkit-border-radius: 14px;
- -moz-border-radius: 14px;
- border-radius: 14px;
+ -moz-border-radius: 14px;
+ border-radius: 14px;
}
+
.form-search input,
.form-inline input,
.form-horizontal input,
@@ -1108,23 +1398,29 @@ select:focus:required:invalid:focus {
.form-inline .input-append,
.form-horizontal .input-append {
display: inline-block;
+ *display: inline;
margin-bottom: 0;
+ *zoom: 1;
}
+
.form-search .hide,
.form-inline .hide,
.form-horizontal .hide {
display: none;
}
+
.form-search label,
.form-inline label {
display: inline-block;
}
+
.form-search .input-append,
.form-inline .input-append,
.form-search .input-prepend,
.form-inline .input-prepend {
margin-bottom: 0;
}
+
.form-search .radio,
.form-search .checkbox,
.form-inline .radio,
@@ -1133,64 +1429,79 @@ select:focus:required:invalid:focus {
margin-bottom: 0;
vertical-align: middle;
}
+
.form-search .radio input[type="radio"],
.form-search .checkbox input[type="checkbox"],
.form-inline .radio input[type="radio"],
.form-inline .checkbox input[type="checkbox"] {
float: left;
- margin-left: 0;
margin-right: 3px;
+ margin-left: 0;
}
+
.control-group {
margin-bottom: 9px;
}
+
legend + .control-group {
margin-top: 18px;
-webkit-margin-top-collapse: separate;
}
+
.form-horizontal .control-group {
margin-bottom: 18px;
*zoom: 1;
}
+
.form-horizontal .control-group:before,
.form-horizontal .control-group:after {
display: table;
content: "";
}
+
.form-horizontal .control-group:after {
clear: both;
}
+
.form-horizontal .control-label {
float: left;
width: 140px;
padding-top: 5px;
text-align: right;
}
-.form-horizontal .controls {
- margin-left: 160px;
- /* Super jank IE7 fix to ensure the inputs in .input-append and input-prepend don't inherit the margin of the parent, in this case .controls */
+.form-horizontal .controls {
*display: inline-block;
- *margin-left: 0;
*padding-left: 20px;
+ margin-left: 160px;
+ *margin-left: 0;
}
+
+.form-horizontal .controls:first-child {
+ *padding-left: 160px;
+}
+
.form-horizontal .help-block {
margin-top: 9px;
margin-bottom: 0;
}
+
.form-horizontal .form-actions {
padding-left: 160px;
}
+
table {
max-width: 100%;
+ background-color: transparent;
border-collapse: collapse;
border-spacing: 0;
- background-color: transparent;
}
+
.table {
width: 100%;
margin-bottom: 18px;
}
+
.table th,
.table td {
padding: 8px;
@@ -1199,646 +1510,907 @@ table {
vertical-align: top;
border-top: 1px solid #dddddd;
}
+
.table th {
font-weight: bold;
}
+
.table thead th {
vertical-align: bottom;
}
+
+.table caption + thead tr:first-child th,
+.table caption + thead tr:first-child td,
.table colgroup + thead tr:first-child th,
.table colgroup + thead tr:first-child td,
.table thead:first-child tr:first-child th,
.table thead:first-child tr:first-child td {
border-top: 0;
}
+
.table tbody + tbody {
border-top: 2px solid #dddddd;
}
+
.table-condensed th,
.table-condensed td {
padding: 4px 5px;
}
+
.table-bordered {
border: 1px solid #dddddd;
- border-left: 0;
border-collapse: separate;
*border-collapse: collapsed;
+ border-left: 0;
-webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
+ -moz-border-radius: 4px;
+ border-radius: 4px;
}
+
.table-bordered th,
.table-bordered td {
border-left: 1px solid #dddddd;
}
+
+.table-bordered caption + thead tr:first-child th,
+.table-bordered caption + tbody tr:first-child th,
+.table-bordered caption + tbody tr:first-child td,
+.table-bordered colgroup + thead tr:first-child th,
+.table-bordered colgroup + tbody tr:first-child th,
+.table-bordered colgroup + tbody tr:first-child td,
.table-bordered thead:first-child tr:first-child th,
.table-bordered tbody:first-child tr:first-child th,
.table-bordered tbody:first-child tr:first-child td {
border-top: 0;
}
+
.table-bordered thead:first-child tr:first-child th:first-child,
.table-bordered tbody:first-child tr:first-child td:first-child {
- -webkit-border-radius: 4px 0 0 0;
- -moz-border-radius: 4px 0 0 0;
- border-radius: 4px 0 0 0;
+ -webkit-border-top-left-radius: 4px;
+ border-top-left-radius: 4px;
+ -moz-border-radius-topleft: 4px;
}
+
.table-bordered thead:first-child tr:first-child th:last-child,
.table-bordered tbody:first-child tr:first-child td:last-child {
- -webkit-border-radius: 0 4px 0 0;
- -moz-border-radius: 0 4px 0 0;
- border-radius: 0 4px 0 0;
+ -webkit-border-top-right-radius: 4px;
+ border-top-right-radius: 4px;
+ -moz-border-radius-topright: 4px;
}
+
.table-bordered thead:last-child tr:last-child th:first-child,
.table-bordered tbody:last-child tr:last-child td:first-child {
-webkit-border-radius: 0 0 0 4px;
- -moz-border-radius: 0 0 0 4px;
- border-radius: 0 0 0 4px;
+ -moz-border-radius: 0 0 0 4px;
+ border-radius: 0 0 0 4px;
+ -webkit-border-bottom-left-radius: 4px;
+ border-bottom-left-radius: 4px;
+ -moz-border-radius-bottomleft: 4px;
}
+
.table-bordered thead:last-child tr:last-child th:last-child,
.table-bordered tbody:last-child tr:last-child td:last-child {
- -webkit-border-radius: 0 0 4px 0;
- -moz-border-radius: 0 0 4px 0;
- border-radius: 0 0 4px 0;
+ -webkit-border-bottom-right-radius: 4px;
+ border-bottom-right-radius: 4px;
+ -moz-border-radius-bottomright: 4px;
}
+
.table-striped tbody tr:nth-child(odd) td,
.table-striped tbody tr:nth-child(odd) th {
background-color: #f9f9f9;
}
+
.table tbody tr:hover td,
.table tbody tr:hover th {
background-color: #f5f5f5;
}
+
table .span1 {
float: none;
width: 44px;
margin-left: 0;
}
+
table .span2 {
float: none;
width: 124px;
margin-left: 0;
}
+
table .span3 {
float: none;
width: 204px;
margin-left: 0;
}
+
table .span4 {
float: none;
width: 284px;
margin-left: 0;
}
+
table .span5 {
float: none;
width: 364px;
margin-left: 0;
}
+
table .span6 {
float: none;
width: 444px;
margin-left: 0;
}
+
table .span7 {
float: none;
width: 524px;
margin-left: 0;
}
+
table .span8 {
float: none;
width: 604px;
margin-left: 0;
}
+
table .span9 {
float: none;
width: 684px;
margin-left: 0;
}
+
table .span10 {
float: none;
width: 764px;
margin-left: 0;
}
+
table .span11 {
float: none;
width: 844px;
margin-left: 0;
}
+
table .span12 {
float: none;
width: 924px;
margin-left: 0;
}
+
table .span13 {
float: none;
width: 1004px;
margin-left: 0;
}
+
table .span14 {
float: none;
width: 1084px;
margin-left: 0;
}
+
table .span15 {
float: none;
width: 1164px;
margin-left: 0;
}
+
table .span16 {
float: none;
width: 1244px;
margin-left: 0;
}
+
table .span17 {
float: none;
width: 1324px;
margin-left: 0;
}
+
table .span18 {
float: none;
width: 1404px;
margin-left: 0;
}
+
table .span19 {
float: none;
width: 1484px;
margin-left: 0;
}
+
table .span20 {
float: none;
width: 1564px;
margin-left: 0;
}
+
table .span21 {
float: none;
width: 1644px;
margin-left: 0;
}
+
table .span22 {
float: none;
width: 1724px;
margin-left: 0;
}
+
table .span23 {
float: none;
width: 1804px;
margin-left: 0;
}
+
table .span24 {
float: none;
width: 1884px;
margin-left: 0;
}
+
[class^="icon-"],
[class*=" icon-"] {
display: inline-block;
width: 14px;
height: 14px;
+ *margin-right: .3em;
line-height: 14px;
vertical-align: text-top;
background-image: url("../img/glyphicons-halflings.png");
background-position: 14px 14px;
background-repeat: no-repeat;
- *margin-right: .3em;
}
+
[class^="icon-"]:last-child,
[class*=" icon-"]:last-child {
*margin-left: 0;
}
+
.icon-white {
background-image: url("../img/glyphicons-halflings-white.png");
}
+
.icon-glass {
background-position: 0 0;
}
+
.icon-music {
background-position: -24px 0;
}
+
.icon-search {
background-position: -48px 0;
}
+
.icon-envelope {
background-position: -72px 0;
}
+
.icon-heart {
background-position: -96px 0;
}
+
.icon-star {
background-position: -120px 0;
}
+
.icon-star-empty {
background-position: -144px 0;
}
+
.icon-user {
background-position: -168px 0;
}
+
.icon-film {
background-position: -192px 0;
}
+
.icon-th-large {
background-position: -216px 0;
}
+
.icon-th {
background-position: -240px 0;
}
+
.icon-th-list {
background-position: -264px 0;
}
+
.icon-ok {
background-position: -288px 0;
}
+
.icon-remove {
background-position: -312px 0;
}
+
.icon-zoom-in {
background-position: -336px 0;
}
+
.icon-zoom-out {
background-position: -360px 0;
}
+
.icon-off {
background-position: -384px 0;
}
+
.icon-signal {
background-position: -408px 0;
}
+
.icon-cog {
background-position: -432px 0;
}
+
.icon-trash {
background-position: -456px 0;
}
+
.icon-home {
background-position: 0 -24px;
}
+
.icon-file {
background-position: -24px -24px;
}
+
.icon-time {
background-position: -48px -24px;
}
+
.icon-road {
background-position: -72px -24px;
}
+
.icon-download-alt {
background-position: -96px -24px;
}
+
.icon-download {
background-position: -120px -24px;
}
+
.icon-upload {
background-position: -144px -24px;
}
+
.icon-inbox {
background-position: -168px -24px;
}
+
.icon-play-circle {
background-position: -192px -24px;
}
+
.icon-repeat {
background-position: -216px -24px;
}
+
.icon-refresh {
background-position: -240px -24px;
}
+
.icon-list-alt {
background-position: -264px -24px;
}
+
.icon-lock {
background-position: -287px -24px;
}
+
.icon-flag {
background-position: -312px -24px;
}
+
.icon-headphones {
background-position: -336px -24px;
}
+
.icon-volume-off {
background-position: -360px -24px;
}
+
.icon-volume-down {
background-position: -384px -24px;
}
+
.icon-volume-up {
background-position: -408px -24px;
}
+
.icon-qrcode {
background-position: -432px -24px;
}
+
.icon-barcode {
background-position: -456px -24px;
}
+
.icon-tag {
background-position: 0 -48px;
}
+
.icon-tags {
background-position: -25px -48px;
}
+
.icon-book {
background-position: -48px -48px;
}
+
.icon-bookmark {
background-position: -72px -48px;
}
+
.icon-print {
background-position: -96px -48px;
}
+
.icon-camera {
background-position: -120px -48px;
}
+
.icon-font {
background-position: -144px -48px;
}
+
.icon-bold {
background-position: -167px -48px;
}
+
.icon-italic {
background-position: -192px -48px;
}
+
.icon-text-height {
background-position: -216px -48px;
}
+
.icon-text-width {
background-position: -240px -48px;
}
+
.icon-align-left {
background-position: -264px -48px;
}
+
.icon-align-center {
background-position: -288px -48px;
}
+
.icon-align-right {
background-position: -312px -48px;
}
+
.icon-align-justify {
background-position: -336px -48px;
}
+
.icon-list {
background-position: -360px -48px;
}
+
.icon-indent-left {
background-position: -384px -48px;
}
+
.icon-indent-right {
background-position: -408px -48px;
}
+
.icon-facetime-video {
background-position: -432px -48px;
}
+
.icon-picture {
background-position: -456px -48px;
}
+
.icon-pencil {
background-position: 0 -72px;
}
+
.icon-map-marker {
background-position: -24px -72px;
}
+
.icon-adjust {
background-position: -48px -72px;
}
+
.icon-tint {
background-position: -72px -72px;
}
+
.icon-edit {
background-position: -96px -72px;
}
+
.icon-share {
background-position: -120px -72px;
}
+
.icon-check {
background-position: -144px -72px;
}
+
.icon-move {
background-position: -168px -72px;
}
+
.icon-step-backward {
background-position: -192px -72px;
}
+
.icon-fast-backward {
background-position: -216px -72px;
}
+
.icon-backward {
background-position: -240px -72px;
}
+
.icon-play {
background-position: -264px -72px;
}
+
.icon-pause {
background-position: -288px -72px;
}
+
.icon-stop {
background-position: -312px -72px;
}
+
.icon-forward {
background-position: -336px -72px;
}
+
.icon-fast-forward {
background-position: -360px -72px;
}
+
.icon-step-forward {
background-position: -384px -72px;
}
+
.icon-eject {
background-position: -408px -72px;
}
+
.icon-chevron-left {
background-position: -432px -72px;
}
+
.icon-chevron-right {
background-position: -456px -72px;
}
+
.icon-plus-sign {
background-position: 0 -96px;
}
+
.icon-minus-sign {
background-position: -24px -96px;
}
+
.icon-remove-sign {
background-position: -48px -96px;
}
+
.icon-ok-sign {
background-position: -72px -96px;
}
+
.icon-question-sign {
background-position: -96px -96px;
}
+
.icon-info-sign {
background-position: -120px -96px;
}
+
.icon-screenshot {
background-position: -144px -96px;
}
+
.icon-remove-circle {
background-position: -168px -96px;
}
+
.icon-ok-circle {
background-position: -192px -96px;
}
+
.icon-ban-circle {
background-position: -216px -96px;
}
+
.icon-arrow-left {
background-position: -240px -96px;
}
+
.icon-arrow-right {
background-position: -264px -96px;
}
+
.icon-arrow-up {
background-position: -289px -96px;
}
+
.icon-arrow-down {
background-position: -312px -96px;
}
+
.icon-share-alt {
background-position: -336px -96px;
}
+
.icon-resize-full {
background-position: -360px -96px;
}
+
.icon-resize-small {
background-position: -384px -96px;
}
+
.icon-plus {
background-position: -408px -96px;
}
+
.icon-minus {
background-position: -433px -96px;
}
+
.icon-asterisk {
background-position: -456px -96px;
}
+
.icon-exclamation-sign {
background-position: 0 -120px;
}
+
.icon-gift {
background-position: -24px -120px;
}
+
.icon-leaf {
background-position: -48px -120px;
}
+
.icon-fire {
background-position: -72px -120px;
}
+
.icon-eye-open {
background-position: -96px -120px;
}
+
.icon-eye-close {
background-position: -120px -120px;
}
+
.icon-warning-sign {
background-position: -144px -120px;
}
+
.icon-plane {
background-position: -168px -120px;
}
+
.icon-calendar {
background-position: -192px -120px;
}
+
.icon-random {
background-position: -216px -120px;
}
+
.icon-comment {
background-position: -240px -120px;
}
+
.icon-magnet {
background-position: -264px -120px;
}
+
.icon-chevron-up {
background-position: -288px -120px;
}
+
.icon-chevron-down {
background-position: -313px -119px;
}
+
.icon-retweet {
background-position: -336px -120px;
}
+
.icon-shopping-cart {
background-position: -360px -120px;
}
+
.icon-folder-close {
background-position: -384px -120px;
}
+
.icon-folder-open {
background-position: -408px -120px;
}
+
.icon-resize-vertical {
background-position: -432px -119px;
}
+
.icon-resize-horizontal {
background-position: -456px -118px;
}
+
+.icon-hdd {
+ background-position: 0 -144px;
+}
+
+.icon-bullhorn {
+ background-position: -24px -144px;
+}
+
+.icon-bell {
+ background-position: -48px -144px;
+}
+
+.icon-certificate {
+ background-position: -72px -144px;
+}
+
+.icon-thumbs-up {
+ background-position: -96px -144px;
+}
+
+.icon-thumbs-down {
+ background-position: -120px -144px;
+}
+
+.icon-hand-right {
+ background-position: -144px -144px;
+}
+
+.icon-hand-left {
+ background-position: -168px -144px;
+}
+
+.icon-hand-up {
+ background-position: -192px -144px;
+}
+
+.icon-hand-down {
+ background-position: -216px -144px;
+}
+
+.icon-circle-arrow-right {
+ background-position: -240px -144px;
+}
+
+.icon-circle-arrow-left {
+ background-position: -264px -144px;
+}
+
+.icon-circle-arrow-up {
+ background-position: -288px -144px;
+}
+
+.icon-circle-arrow-down {
+ background-position: -312px -144px;
+}
+
+.icon-globe {
+ background-position: -336px -144px;
+}
+
+.icon-wrench {
+ background-position: -360px -144px;
+}
+
+.icon-tasks {
+ background-position: -384px -144px;
+}
+
+.icon-filter {
+ background-position: -408px -144px;
+}
+
+.icon-briefcase {
+ background-position: -432px -144px;
+}
+
+.icon-fullscreen {
+ background-position: -456px -144px;
+}
+
+.dropup,
.dropdown {
position: relative;
}
+
.dropdown-toggle {
*margin-bottom: -3px;
}
+
.dropdown-toggle:active,
.open .dropdown-toggle {
outline: 0;
}
+
.caret {
display: inline-block;
width: 0;
height: 0;
vertical-align: top;
- border-left: 4px solid transparent;
- border-right: 4px solid transparent;
border-top: 4px solid #000000;
+ border-right: 4px solid transparent;
+ border-left: 4px solid transparent;
+ content: "";
opacity: 0.3;
filter: alpha(opacity=30);
- content: "";
}
+
.dropdown .caret {
margin-top: 8px;
margin-left: 2px;
}
+
.dropdown:hover .caret,
-.open.dropdown .caret {
+.open .caret {
opacity: 1;
filter: alpha(opacity=100);
}
+
.dropdown-menu {
position: absolute;
top: 100%;
left: 0;
z-index: 1000;
- float: left;
display: none;
+ float: left;
min-width: 160px;
padding: 4px 0;
- margin: 0;
+ margin: 1px 0 0;
list-style: none;
background-color: #ffffff;
- border-color: #ccc;
- border-color: rgba(0, 0, 0, 0.2);
- border-style: solid;
- border-width: 1px;
- -webkit-border-radius: 0 0 5px 5px;
- -moz-border-radius: 0 0 5px 5px;
- border-radius: 0 0 5px 5px;
- -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
- -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
- box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
+ border: 1px solid #ccc;
+ border: 1px solid rgba(0, 0, 0, 0.2);
*border-right-width: 2px;
*border-bottom-width: 2px;
+ -webkit-border-radius: 5px;
+ -moz-border-radius: 5px;
+ border-radius: 5px;
+ -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
+ -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
+ -webkit-background-clip: padding-box;
+ -moz-background-clip: padding;
+ background-clip: padding-box;
}
+
.dropdown-menu.pull-right {
right: 0;
left: auto;
}
+
.dropdown-menu .divider {
+ *width: 100%;
height: 1px;
margin: 8px 1px;
+ *margin: -5px 0 5px;
overflow: hidden;
background-color: #e5e5e5;
border-bottom: 1px solid #ffffff;
- *width: 100%;
- *margin: -5px 0 5px;
}
+
.dropdown-menu a {
display: block;
padding: 3px 15px;
@@ -1848,6 +2420,7 @@ table .span24 {
color: #333333;
white-space: nowrap;
}
+
.dropdown-menu li > a:hover,
.dropdown-menu .active > a,
.dropdown-menu .active > a:hover {
@@ -1855,39 +2428,41 @@ table .span24 {
text-decoration: none;
background-color: #0088cc;
}
-.dropdown.open {
+
+.open {
*z-index: 1000;
}
-.dropdown.open .dropdown-toggle {
- color: #ffffff;
- background: #ccc;
- background: rgba(0, 0, 0, 0.3);
-}
-.dropdown.open .dropdown-menu {
+
+.open .dropdown-menu {
display: block;
}
+
.pull-right .dropdown-menu {
- left: auto;
right: 0;
+ left: auto;
}
+
.dropup .caret,
.navbar-fixed-bottom .dropdown .caret {
border-top: 0;
border-bottom: 4px solid #000000;
content: "\2191";
}
+
.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
top: auto;
bottom: 100%;
margin-bottom: 1px;
}
+
.typeahead {
margin-top: 2px;
-webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
+ -moz-border-radius: 4px;
+ border-radius: 4px;
}
+
.well {
min-height: 20px;
padding: 19px;
@@ -1896,52 +2471,60 @@ table .span24 {
border: 1px solid #eee;
border: 1px solid rgba(0, 0, 0, 0.05);
-webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
+ -moz-border-radius: 4px;
+ border-radius: 4px;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
- -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
+ -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
}
+
.well blockquote {
border-color: #ddd;
border-color: rgba(0, 0, 0, 0.15);
}
+
.well-large {
padding: 24px;
-webkit-border-radius: 6px;
- -moz-border-radius: 6px;
- border-radius: 6px;
+ -moz-border-radius: 6px;
+ border-radius: 6px;
}
+
.well-small {
padding: 9px;
-webkit-border-radius: 3px;
- -moz-border-radius: 3px;
- border-radius: 3px;
+ -moz-border-radius: 3px;
+ border-radius: 3px;
}
+
.fade {
- -webkit-transition: opacity 0.15s linear;
- -moz-transition: opacity 0.15s linear;
- -ms-transition: opacity 0.15s linear;
- -o-transition: opacity 0.15s linear;
- transition: opacity 0.15s linear;
opacity: 0;
+ -webkit-transition: opacity 0.15s linear;
+ -moz-transition: opacity 0.15s linear;
+ -ms-transition: opacity 0.15s linear;
+ -o-transition: opacity 0.15s linear;
+ transition: opacity 0.15s linear;
}
+
.fade.in {
opacity: 1;
}
+
.collapse {
- -webkit-transition: height 0.35s ease;
- -moz-transition: height 0.35s ease;
- -ms-transition: height 0.35s ease;
- -o-transition: height 0.35s ease;
- transition: height 0.35s ease;
position: relative;
- overflow: hidden;
height: 0;
+ overflow: hidden;
+ -webkit-transition: height 0.35s ease;
+ -moz-transition: height 0.35s ease;
+ -ms-transition: height 0.35s ease;
+ -o-transition: height 0.35s ease;
+ transition: height 0.35s ease;
}
+
.collapse.in {
height: auto;
}
+
.close {
float: right;
font-size: 20px;
@@ -1952,125 +2535,153 @@ table .span24 {
opacity: 0.2;
filter: alpha(opacity=20);
}
+
.close:hover {
color: #000000;
text-decoration: none;
+ cursor: pointer;
opacity: 0.4;
filter: alpha(opacity=40);
+}
+
+button.close {
+ padding: 0;
cursor: pointer;
+ background-color: transparent;
+ border: 0;
+ -webkit-appearance: none;
}
+
.btn {
display: inline-block;
*display: inline;
- /* IE7 inline-block hack */
-
- *zoom: 1;
padding: 4px 10px 4px;
margin-bottom: 0;
+ *margin-left: .3em;
font-size: 13px;
line-height: 18px;
+ *line-height: 20px;
color: #333333;
text-align: center;
text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
vertical-align: middle;
+ cursor: pointer;
background-color: #f5f5f5;
- background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
+ *background-color: #e6e6e6;
background-image: -ms-linear-gradient(top, #ffffff, #e6e6e6);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
background-image: linear-gradient(top, #ffffff, #e6e6e6);
+ background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0);
- border-color: #e6e6e6 #e6e6e6 #bfbfbf;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- filter: progid:dximagetransform.microsoft.gradient(enabled=false);
border: 1px solid #cccccc;
+ *border: 0;
+ border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+ border-color: #e6e6e6 #e6e6e6 #bfbfbf;
border-bottom-color: #b3b3b3;
-webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
+ -moz-border-radius: 4px;
+ border-radius: 4px;
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0);
+ filter: progid:dximagetransform.microsoft.gradient(enabled=false);
+ *zoom: 1;
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
- -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
- cursor: pointer;
- *margin-left: .3em;
+ -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
}
+
.btn:hover,
.btn:active,
.btn.active,
.btn.disabled,
.btn[disabled] {
background-color: #e6e6e6;
+ *background-color: #d9d9d9;
}
+
.btn:active,
.btn.active {
background-color: #cccccc \9;
}
+
.btn:first-child {
*margin-left: 0;
}
+
.btn:hover {
color: #333333;
text-decoration: none;
background-color: #e6e6e6;
+ *background-color: #d9d9d9;
+ /* Buttons in IE7 don't get borders, so darken on hover */
+
background-position: 0 -15px;
-webkit-transition: background-position 0.1s linear;
- -moz-transition: background-position 0.1s linear;
- -ms-transition: background-position 0.1s linear;
- -o-transition: background-position 0.1s linear;
- transition: background-position 0.1s linear;
+ -moz-transition: background-position 0.1s linear;
+ -ms-transition: background-position 0.1s linear;
+ -o-transition: background-position 0.1s linear;
+ transition: background-position 0.1s linear;
}
+
.btn:focus {
outline: thin dotted #333;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
+
.btn.active,
.btn:active {
- background-image: none;
- -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
- -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
- box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
background-color: #e6e6e6;
background-color: #d9d9d9 \9;
+ background-image: none;
outline: 0;
+ -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
+ -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
+ box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
}
+
.btn.disabled,
.btn[disabled] {
cursor: default;
- background-image: none;
background-color: #e6e6e6;
+ background-image: none;
opacity: 0.65;
filter: alpha(opacity=65);
-webkit-box-shadow: none;
- -moz-box-shadow: none;
- box-shadow: none;
+ -moz-box-shadow: none;
+ box-shadow: none;
}
+
.btn-large {
padding: 9px 14px;
font-size: 15px;
line-height: normal;
-webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px;
+ -moz-border-radius: 5px;
+ border-radius: 5px;
}
+
.btn-large [class^="icon-"] {
margin-top: 1px;
}
+
.btn-small {
padding: 5px 9px;
font-size: 11px;
line-height: 16px;
}
+
.btn-small [class^="icon-"] {
margin-top: -1px;
}
+
.btn-mini {
padding: 2px 6px;
font-size: 11px;
line-height: 14px;
}
+
.btn-primary,
.btn-primary:hover,
.btn-warning,
@@ -2083,9 +2694,10 @@ table .span24 {
.btn-info:hover,
.btn-inverse,
.btn-inverse:hover {
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
color: #ffffff;
+ text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
+
.btn-primary.active,
.btn-warning.active,
.btn-danger.active,
@@ -2094,204 +2706,251 @@ table .span24 {
.btn-inverse.active {
color: rgba(255, 255, 255, 0.75);
}
+
+.btn {
+ border-color: #ccc;
+ border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+}
+
.btn-primary {
background-color: #0074cc;
- background-image: -moz-linear-gradient(top, #0088cc, #0055cc);
+ *background-color: #0055cc;
background-image: -ms-linear-gradient(top, #0088cc, #0055cc);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0055cc));
background-image: -webkit-linear-gradient(top, #0088cc, #0055cc);
background-image: -o-linear-gradient(top, #0088cc, #0055cc);
+ background-image: -moz-linear-gradient(top, #0088cc, #0055cc);
background-image: linear-gradient(top, #0088cc, #0055cc);
background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0055cc', GradientType=0);
border-color: #0055cc #0055cc #003580;
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#0088cc', endColorstr='#0055cc', GradientType=0);
filter: progid:dximagetransform.microsoft.gradient(enabled=false);
}
+
.btn-primary:hover,
.btn-primary:active,
.btn-primary.active,
.btn-primary.disabled,
.btn-primary[disabled] {
background-color: #0055cc;
+ *background-color: #004ab3;
}
+
.btn-primary:active,
.btn-primary.active {
background-color: #004099 \9;
}
+
.btn-warning {
background-color: #faa732;
- background-image: -moz-linear-gradient(top, #fbb450, #f89406);
+ *background-color: #f89406;
background-image: -ms-linear-gradient(top, #fbb450, #f89406);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406));
background-image: -webkit-linear-gradient(top, #fbb450, #f89406);
background-image: -o-linear-gradient(top, #fbb450, #f89406);
+ background-image: -moz-linear-gradient(top, #fbb450, #f89406);
background-image: linear-gradient(top, #fbb450, #f89406);
background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fbb450', endColorstr='#f89406', GradientType=0);
border-color: #f89406 #f89406 #ad6704;
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#fbb450', endColorstr='#f89406', GradientType=0);
filter: progid:dximagetransform.microsoft.gradient(enabled=false);
}
+
.btn-warning:hover,
.btn-warning:active,
.btn-warning.active,
.btn-warning.disabled,
.btn-warning[disabled] {
background-color: #f89406;
+ *background-color: #df8505;
}
+
.btn-warning:active,
.btn-warning.active {
background-color: #c67605 \9;
}
+
.btn-danger {
background-color: #da4f49;
- background-image: -moz-linear-gradient(top, #ee5f5b, #bd362f);
+ *background-color: #bd362f;
background-image: -ms-linear-gradient(top, #ee5f5b, #bd362f);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f));
background-image: -webkit-linear-gradient(top, #ee5f5b, #bd362f);
background-image: -o-linear-gradient(top, #ee5f5b, #bd362f);
+ background-image: -moz-linear-gradient(top, #ee5f5b, #bd362f);
background-image: linear-gradient(top, #ee5f5b, #bd362f);
background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ee5f5b', endColorstr='#bd362f', GradientType=0);
border-color: #bd362f #bd362f #802420;
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#ee5f5b', endColorstr='#bd362f', GradientType=0);
filter: progid:dximagetransform.microsoft.gradient(enabled=false);
}
+
.btn-danger:hover,
.btn-danger:active,
.btn-danger.active,
.btn-danger.disabled,
.btn-danger[disabled] {
background-color: #bd362f;
+ *background-color: #a9302a;
}
+
.btn-danger:active,
.btn-danger.active {
background-color: #942a25 \9;
}
+
.btn-success {
background-color: #5bb75b;
- background-image: -moz-linear-gradient(top, #62c462, #51a351);
+ *background-color: #51a351;
background-image: -ms-linear-gradient(top, #62c462, #51a351);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#51a351));
background-image: -webkit-linear-gradient(top, #62c462, #51a351);
background-image: -o-linear-gradient(top, #62c462, #51a351);
+ background-image: -moz-linear-gradient(top, #62c462, #51a351);
background-image: linear-gradient(top, #62c462, #51a351);
background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#62c462', endColorstr='#51a351', GradientType=0);
border-color: #51a351 #51a351 #387038;
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#62c462', endColorstr='#51a351', GradientType=0);
filter: progid:dximagetransform.microsoft.gradient(enabled=false);
}
+
.btn-success:hover,
.btn-success:active,
.btn-success.active,
.btn-success.disabled,
.btn-success[disabled] {
background-color: #51a351;
+ *background-color: #499249;
}
+
.btn-success:active,
.btn-success.active {
background-color: #408140 \9;
}
+
.btn-info {
background-color: #49afcd;
- background-image: -moz-linear-gradient(top, #5bc0de, #2f96b4);
+ *background-color: #2f96b4;
background-image: -ms-linear-gradient(top, #5bc0de, #2f96b4);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#2f96b4));
background-image: -webkit-linear-gradient(top, #5bc0de, #2f96b4);
background-image: -o-linear-gradient(top, #5bc0de, #2f96b4);
+ background-image: -moz-linear-gradient(top, #5bc0de, #2f96b4);
background-image: linear-gradient(top, #5bc0de, #2f96b4);
background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#5bc0de', endColorstr='#2f96b4', GradientType=0);
border-color: #2f96b4 #2f96b4 #1f6377;
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#5bc0de', endColorstr='#2f96b4', GradientType=0);
filter: progid:dximagetransform.microsoft.gradient(enabled=false);
}
+
.btn-info:hover,
.btn-info:active,
.btn-info.active,
.btn-info.disabled,
.btn-info[disabled] {
background-color: #2f96b4;
+ *background-color: #2a85a0;
}
+
.btn-info:active,
.btn-info.active {
background-color: #24748c \9;
}
+
.btn-inverse {
background-color: #414141;
- background-image: -moz-linear-gradient(top, #555555, #222222);
+ *background-color: #222222;
background-image: -ms-linear-gradient(top, #555555, #222222);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#555555), to(#222222));
background-image: -webkit-linear-gradient(top, #555555, #222222);
background-image: -o-linear-gradient(top, #555555, #222222);
+ background-image: -moz-linear-gradient(top, #555555, #222222);
background-image: linear-gradient(top, #555555, #222222);
background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#555555', endColorstr='#222222', GradientType=0);
border-color: #222222 #222222 #000000;
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#555555', endColorstr='#222222', GradientType=0);
filter: progid:dximagetransform.microsoft.gradient(enabled=false);
}
+
.btn-inverse:hover,
.btn-inverse:active,
.btn-inverse.active,
.btn-inverse.disabled,
.btn-inverse[disabled] {
background-color: #222222;
+ *background-color: #151515;
}
+
.btn-inverse:active,
.btn-inverse.active {
background-color: #080808 \9;
}
+
button.btn,
input[type="submit"].btn {
*padding-top: 2px;
*padding-bottom: 2px;
}
+
button.btn::-moz-focus-inner,
input[type="submit"].btn::-moz-focus-inner {
padding: 0;
border: 0;
}
+
button.btn.btn-large,
input[type="submit"].btn.btn-large {
*padding-top: 7px;
*padding-bottom: 7px;
}
+
button.btn.btn-small,
input[type="submit"].btn.btn-small {
*padding-top: 3px;
*padding-bottom: 3px;
}
+
button.btn.btn-mini,
input[type="submit"].btn.btn-mini {
*padding-top: 1px;
*padding-bottom: 1px;
}
+
.btn-group {
position: relative;
- *zoom: 1;
*margin-left: .3em;
+ *zoom: 1;
}
+
.btn-group:before,
.btn-group:after {
display: table;
content: "";
}
+
.btn-group:after {
clear: both;
}
+
.btn-group:first-child {
*margin-left: 0;
}
+
.btn-group + .btn-group {
margin-left: 5px;
}
+
.btn-toolbar {
margin-top: 9px;
margin-bottom: 9px;
}
+
.btn-toolbar .btn-group {
display: inline-block;
*display: inline;
@@ -2299,120 +2958,159 @@ input[type="submit"].btn.btn-mini {
*zoom: 1;
}
-.btn-group .btn {
+
+.btn-group > .btn {
position: relative;
float: left;
margin-left: -1px;
-webkit-border-radius: 0;
- -moz-border-radius: 0;
- border-radius: 0;
+ -moz-border-radius: 0;
+ border-radius: 0;
}
-.btn-group .btn:first-child {
+
+.btn-group > .btn:first-child {
margin-left: 0;
- -webkit-border-top-left-radius: 4px;
- -moz-border-radius-topleft: 4px;
- border-top-left-radius: 4px;
-webkit-border-bottom-left-radius: 4px;
+ border-bottom-left-radius: 4px;
+ -webkit-border-top-left-radius: 4px;
+ border-top-left-radius: 4px;
-moz-border-radius-bottomleft: 4px;
- border-bottom-left-radius: 4px;
+ -moz-border-radius-topleft: 4px;
}
-.btn-group .btn:last-child,
-.btn-group .dropdown-toggle {
+
+.btn-group > .btn:last-child,
+.btn-group > .dropdown-toggle {
-webkit-border-top-right-radius: 4px;
- -moz-border-radius-topright: 4px;
- border-top-right-radius: 4px;
+ border-top-right-radius: 4px;
-webkit-border-bottom-right-radius: 4px;
+ border-bottom-right-radius: 4px;
+ -moz-border-radius-topright: 4px;
-moz-border-radius-bottomright: 4px;
- border-bottom-right-radius: 4px;
}
-.btn-group .btn.large:first-child {
+
+.btn-group > .btn.large:first-child {
margin-left: 0;
- -webkit-border-top-left-radius: 6px;
- -moz-border-radius-topleft: 6px;
- border-top-left-radius: 6px;
-webkit-border-bottom-left-radius: 6px;
+ border-bottom-left-radius: 6px;
+ -webkit-border-top-left-radius: 6px;
+ border-top-left-radius: 6px;
-moz-border-radius-bottomleft: 6px;
- border-bottom-left-radius: 6px;
+ -moz-border-radius-topleft: 6px;
}
-.btn-group .btn.large:last-child,
-.btn-group .large.dropdown-toggle {
+
+.btn-group > .btn.large:last-child,
+.btn-group > .large.dropdown-toggle {
-webkit-border-top-right-radius: 6px;
- -moz-border-radius-topright: 6px;
- border-top-right-radius: 6px;
+ border-top-right-radius: 6px;
-webkit-border-bottom-right-radius: 6px;
+ border-bottom-right-radius: 6px;
+ -moz-border-radius-topright: 6px;
-moz-border-radius-bottomright: 6px;
- border-bottom-right-radius: 6px;
}
-.btn-group .btn:hover,
-.btn-group .btn:focus,
-.btn-group .btn:active,
-.btn-group .btn.active {
+
+.btn-group > .btn:hover,
+.btn-group > .btn:focus,
+.btn-group > .btn:active,
+.btn-group > .btn.active {
z-index: 2;
}
+
.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
outline: 0;
}
-.btn-group .dropdown-toggle {
- padding-left: 8px;
+
+.btn-group > .dropdown-toggle {
+ *padding-top: 4px;
padding-right: 8px;
+ *padding-bottom: 4px;
+ padding-left: 8px;
-webkit-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
- -moz-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
- box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
- *padding-top: 3px;
- *padding-bottom: 3px;
+ -moz-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
+ box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
}
-.btn-group .btn-mini.dropdown-toggle {
- padding-left: 5px;
+
+.btn-group > .btn-mini.dropdown-toggle {
padding-right: 5px;
- *padding-top: 1px;
- *padding-bottom: 1px;
+ padding-left: 5px;
}
-.btn-group .btn-small.dropdown-toggle {
+
+.btn-group > .btn-small.dropdown-toggle {
*padding-top: 4px;
*padding-bottom: 4px;
}
-.btn-group .btn-large.dropdown-toggle {
- padding-left: 12px;
+
+.btn-group > .btn-large.dropdown-toggle {
padding-right: 12px;
+ padding-left: 12px;
}
-.btn-group.open {
- *z-index: 1000;
-}
-.btn-group.open .dropdown-menu {
- display: block;
- margin-top: 1px;
- -webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px;
-}
+
.btn-group.open .dropdown-toggle {
background-image: none;
- -webkit-box-shadow: inset 0 1px 6px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
- -moz-box-shadow: inset 0 1px 6px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
- box-shadow: inset 0 1px 6px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
+ -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
+ -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
+ box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
+}
+
+.btn-group.open .btn.dropdown-toggle {
+ background-color: #e6e6e6;
+}
+
+.btn-group.open .btn-primary.dropdown-toggle {
+ background-color: #0055cc;
+}
+
+.btn-group.open .btn-warning.dropdown-toggle {
+ background-color: #f89406;
+}
+
+.btn-group.open .btn-danger.dropdown-toggle {
+ background-color: #bd362f;
+}
+
+.btn-group.open .btn-success.dropdown-toggle {
+ background-color: #51a351;
+}
+
+.btn-group.open .btn-info.dropdown-toggle {
+ background-color: #2f96b4;
}
+
+.btn-group.open .btn-inverse.dropdown-toggle {
+ background-color: #222222;
+}
+
.btn .caret {
margin-top: 7px;
margin-left: 0;
}
+
.btn:hover .caret,
.open.btn-group .caret {
opacity: 1;
filter: alpha(opacity=100);
}
+
.btn-mini .caret {
margin-top: 5px;
}
+
.btn-small .caret {
margin-top: 6px;
}
+
.btn-large .caret {
margin-top: 6px;
- border-left: 5px solid transparent;
- border-right: 5px solid transparent;
- border-top: 5px solid #000000;
+ border-top-width: 5px;
+ border-right-width: 5px;
+ border-left-width: 5px;
}
+
+.dropup .btn-large .caret {
+ border-top: 0;
+ border-bottom: 5px solid #000000;
+}
+
.btn-primary .caret,
.btn-warning .caret,
.btn-danger .caret,
@@ -2424,65 +3122,82 @@ input[type="submit"].btn.btn-mini {
opacity: 0.75;
filter: alpha(opacity=75);
}
+
.alert {
padding: 8px 35px 8px 14px;
margin-bottom: 18px;
+ color: #c09853;
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
background-color: #fcf8e3;
border: 1px solid #fbeed5;
-webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
- color: #c09853;
+ -moz-border-radius: 4px;
+ border-radius: 4px;
}
+
.alert-heading {
color: inherit;
}
+
.alert .close {
position: relative;
top: -2px;
right: -21px;
line-height: 18px;
}
+
.alert-success {
+ color: #468847;
background-color: #dff0d8;
border-color: #d6e9c6;
- color: #468847;
}
+
.alert-danger,
.alert-error {
+ color: #b94a48;
background-color: #f2dede;
border-color: #eed3d7;
- color: #b94a48;
}
+
.alert-info {
+ color: #3a87ad;
background-color: #d9edf7;
border-color: #bce8f1;
- color: #3a87ad;
}
+
.alert-block {
padding-top: 14px;
padding-bottom: 14px;
}
+
.alert-block > p,
.alert-block > ul {
margin-bottom: 0;
}
+
.alert-block p + p {
margin-top: 5px;
}
+
.nav {
- margin-left: 0;
margin-bottom: 18px;
+ margin-left: 0;
list-style: none;
}
+
.nav > li > a {
display: block;
}
+
.nav > li > a:hover {
text-decoration: none;
background-color: #eeeeee;
}
+
+.nav > .pull-right {
+ float: right;
+}
+
.nav .nav-header {
display: block;
padding: 3px 15px;
@@ -2493,45 +3208,54 @@ input[type="submit"].btn.btn-mini {
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
text-transform: uppercase;
}
+
.nav li + .nav-header {
margin-top: 9px;
}
+
.nav-list {
- padding-left: 15px;
padding-right: 15px;
+ padding-left: 15px;
margin-bottom: 0;
}
+
.nav-list > li > a,
.nav-list .nav-header {
- margin-left: -15px;
margin-right: -15px;
+ margin-left: -15px;
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
}
+
.nav-list > li > a {
padding: 3px 15px;
}
+
.nav-list > .active > a,
.nav-list > .active > a:hover {
color: #ffffff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
background-color: #0088cc;
}
+
.nav-list [class^="icon-"] {
margin-right: 2px;
}
+
.nav-list .divider {
+ *width: 100%;
height: 1px;
margin: 8px 1px;
+ *margin: -5px 0 5px;
overflow: hidden;
background-color: #e5e5e5;
border-bottom: 1px solid #ffffff;
- *width: 100%;
- *margin: -5px 0 5px;
}
+
.nav-tabs,
.nav-pills {
*zoom: 1;
}
+
.nav-tabs:before,
.nav-pills:before,
.nav-tabs:after,
@@ -2539,14 +3263,17 @@ input[type="submit"].btn.btn-mini {
display: table;
content: "";
}
+
.nav-tabs:after,
.nav-pills:after {
clear: both;
}
+
.nav-tabs > li,
.nav-pills > li {
float: left;
}
+
.nav-tabs > li > a,
.nav-pills > li > a {
padding-right: 12px;
@@ -2554,234 +3281,283 @@ input[type="submit"].btn.btn-mini {
margin-right: 2px;
line-height: 14px;
}
+
.nav-tabs {
border-bottom: 1px solid #ddd;
}
+
.nav-tabs > li {
margin-bottom: -1px;
}
+
.nav-tabs > li > a {
padding-top: 8px;
padding-bottom: 8px;
line-height: 18px;
border: 1px solid transparent;
-webkit-border-radius: 4px 4px 0 0;
- -moz-border-radius: 4px 4px 0 0;
- border-radius: 4px 4px 0 0;
+ -moz-border-radius: 4px 4px 0 0;
+ border-radius: 4px 4px 0 0;
}
+
.nav-tabs > li > a:hover {
border-color: #eeeeee #eeeeee #dddddd;
}
+
.nav-tabs > .active > a,
.nav-tabs > .active > a:hover {
color: #555555;
+ cursor: default;
background-color: #ffffff;
border: 1px solid #ddd;
border-bottom-color: transparent;
- cursor: default;
}
+
.nav-pills > li > a {
padding-top: 8px;
padding-bottom: 8px;
margin-top: 2px;
margin-bottom: 2px;
-webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px;
+ -moz-border-radius: 5px;
+ border-radius: 5px;
}
+
.nav-pills > .active > a,
.nav-pills > .active > a:hover {
color: #ffffff;
background-color: #0088cc;
}
+
.nav-stacked > li {
float: none;
}
+
.nav-stacked > li > a {
margin-right: 0;
}
+
.nav-tabs.nav-stacked {
border-bottom: 0;
}
+
.nav-tabs.nav-stacked > li > a {
border: 1px solid #ddd;
-webkit-border-radius: 0;
- -moz-border-radius: 0;
- border-radius: 0;
+ -moz-border-radius: 0;
+ border-radius: 0;
}
+
.nav-tabs.nav-stacked > li:first-child > a {
-webkit-border-radius: 4px 4px 0 0;
- -moz-border-radius: 4px 4px 0 0;
- border-radius: 4px 4px 0 0;
+ -moz-border-radius: 4px 4px 0 0;
+ border-radius: 4px 4px 0 0;
}
+
.nav-tabs.nav-stacked > li:last-child > a {
-webkit-border-radius: 0 0 4px 4px;
- -moz-border-radius: 0 0 4px 4px;
- border-radius: 0 0 4px 4px;
+ -moz-border-radius: 0 0 4px 4px;
+ border-radius: 0 0 4px 4px;
}
+
.nav-tabs.nav-stacked > li > a:hover {
- border-color: #ddd;
z-index: 2;
+ border-color: #ddd;
}
+
.nav-pills.nav-stacked > li > a {
margin-bottom: 3px;
}
+
.nav-pills.nav-stacked > li:last-child > a {
margin-bottom: 1px;
}
-.nav-tabs .dropdown-menu,
-.nav-pills .dropdown-menu {
- margin-top: 1px;
- border-width: 1px;
+
+.nav-tabs .dropdown-menu {
+ -webkit-border-radius: 0 0 5px 5px;
+ -moz-border-radius: 0 0 5px 5px;
+ border-radius: 0 0 5px 5px;
}
+
.nav-pills .dropdown-menu {
-webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
+ -moz-border-radius: 4px;
+ border-radius: 4px;
}
+
.nav-tabs .dropdown-toggle .caret,
.nav-pills .dropdown-toggle .caret {
+ margin-top: 6px;
border-top-color: #0088cc;
border-bottom-color: #0088cc;
- margin-top: 6px;
}
+
.nav-tabs .dropdown-toggle:hover .caret,
.nav-pills .dropdown-toggle:hover .caret {
border-top-color: #005580;
border-bottom-color: #005580;
}
+
.nav-tabs .active .dropdown-toggle .caret,
.nav-pills .active .dropdown-toggle .caret {
border-top-color: #333333;
border-bottom-color: #333333;
}
+
.nav > .dropdown.active > a:hover {
color: #000000;
cursor: pointer;
}
+
.nav-tabs .open .dropdown-toggle,
.nav-pills .open .dropdown-toggle,
-.nav > .open.active > a:hover {
+.nav > li.dropdown.open.active > a:hover {
color: #ffffff;
background-color: #999999;
border-color: #999999;
}
-.nav .open .caret,
-.nav .open.active .caret,
-.nav .open a:hover .caret {
+
+.nav li.dropdown.open .caret,
+.nav li.dropdown.open.active .caret,
+.nav li.dropdown.open a:hover .caret {
border-top-color: #ffffff;
border-bottom-color: #ffffff;
opacity: 1;
filter: alpha(opacity=100);
}
+
.tabs-stacked .open > a:hover {
border-color: #999999;
}
+
.tabbable {
*zoom: 1;
}
+
.tabbable:before,
.tabbable:after {
display: table;
content: "";
}
+
.tabbable:after {
clear: both;
}
+
.tab-content {
- display: table;
- width: 100%;
+ overflow: auto;
}
-.tabs-below .nav-tabs,
-.tabs-right .nav-tabs,
-.tabs-left .nav-tabs {
+
+.tabs-below > .nav-tabs,
+.tabs-right > .nav-tabs,
+.tabs-left > .nav-tabs {
border-bottom: 0;
}
+
.tab-content > .tab-pane,
.pill-content > .pill-pane {
display: none;
}
+
.tab-content > .active,
.pill-content > .active {
display: block;
}
-.tabs-below .nav-tabs {
+
+.tabs-below > .nav-tabs {
border-top: 1px solid #ddd;
}
-.tabs-below .nav-tabs > li {
+
+.tabs-below > .nav-tabs > li {
margin-top: -1px;
margin-bottom: 0;
}
-.tabs-below .nav-tabs > li > a {
+
+.tabs-below > .nav-tabs > li > a {
-webkit-border-radius: 0 0 4px 4px;
- -moz-border-radius: 0 0 4px 4px;
- border-radius: 0 0 4px 4px;
+ -moz-border-radius: 0 0 4px 4px;
+ border-radius: 0 0 4px 4px;
}
-.tabs-below .nav-tabs > li > a:hover {
- border-bottom-color: transparent;
+
+.tabs-below > .nav-tabs > li > a:hover {
border-top-color: #ddd;
+ border-bottom-color: transparent;
}
-.tabs-below .nav-tabs .active > a,
-.tabs-below .nav-tabs .active > a:hover {
+
+.tabs-below > .nav-tabs > .active > a,
+.tabs-below > .nav-tabs > .active > a:hover {
border-color: transparent #ddd #ddd #ddd;
}
-.tabs-left .nav-tabs > li,
-.tabs-right .nav-tabs > li {
+
+.tabs-left > .nav-tabs > li,
+.tabs-right > .nav-tabs > li {
float: none;
}
-.tabs-left .nav-tabs > li > a,
-.tabs-right .nav-tabs > li > a {
+
+.tabs-left > .nav-tabs > li > a,
+.tabs-right > .nav-tabs > li > a {
min-width: 74px;
margin-right: 0;
margin-bottom: 3px;
}
-.tabs-left .nav-tabs {
+
+.tabs-left > .nav-tabs {
float: left;
margin-right: 19px;
border-right: 1px solid #ddd;
}
-.tabs-left .nav-tabs > li > a {
+
+.tabs-left > .nav-tabs > li > a {
margin-right: -1px;
-webkit-border-radius: 4px 0 0 4px;
- -moz-border-radius: 4px 0 0 4px;
- border-radius: 4px 0 0 4px;
+ -moz-border-radius: 4px 0 0 4px;
+ border-radius: 4px 0 0 4px;
}
-.tabs-left .nav-tabs > li > a:hover {
+
+.tabs-left > .nav-tabs > li > a:hover {
border-color: #eeeeee #dddddd #eeeeee #eeeeee;
}
-.tabs-left .nav-tabs .active > a,
-.tabs-left .nav-tabs .active > a:hover {
+
+.tabs-left > .nav-tabs .active > a,
+.tabs-left > .nav-tabs .active > a:hover {
border-color: #ddd transparent #ddd #ddd;
*border-right-color: #ffffff;
}
-.tabs-right .nav-tabs {
+
+.tabs-right > .nav-tabs {
float: right;
margin-left: 19px;
border-left: 1px solid #ddd;
}
-.tabs-right .nav-tabs > li > a {
+
+.tabs-right > .nav-tabs > li > a {
margin-left: -1px;
-webkit-border-radius: 0 4px 4px 0;
- -moz-border-radius: 0 4px 4px 0;
- border-radius: 0 4px 4px 0;
+ -moz-border-radius: 0 4px 4px 0;
+ border-radius: 0 4px 4px 0;
}
-.tabs-right .nav-tabs > li > a:hover {
+
+.tabs-right > .nav-tabs > li > a:hover {
border-color: #eeeeee #eeeeee #eeeeee #dddddd;
}
-.tabs-right .nav-tabs .active > a,
-.tabs-right .nav-tabs .active > a:hover {
+
+.tabs-right > .nav-tabs .active > a,
+.tabs-right > .nav-tabs .active > a:hover {
border-color: #ddd #ddd #ddd transparent;
*border-left-color: #ffffff;
}
+
.navbar {
*position: relative;
*z-index: 2;
- overflow: visible;
margin-bottom: 18px;
+ overflow: visible;
}
+
.navbar-inner {
- padding-left: 20px;
+ min-height: 40px;
padding-right: 20px;
+ padding-left: 20px;
background-color: #2c2c2c;
background-image: -moz-linear-gradient(top, #333333, #222222);
background-image: -ms-linear-gradient(top, #333333, #222222);
@@ -2790,138 +3566,116 @@ input[type="submit"].btn.btn-mini {
background-image: -o-linear-gradient(top, #333333, #222222);
background-image: linear-gradient(top, #333333, #222222);
background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#333333', endColorstr='#222222', GradientType=0);
-webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
+ -moz-border-radius: 4px;
+ border-radius: 4px;
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#333333', endColorstr='#222222', GradientType=0);
-webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
- -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
+ -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
}
+
.navbar .container {
width: auto;
}
-.btn-navbar {
- display: none;
- float: right;
- padding: 7px 10px;
- margin-left: 5px;
- margin-right: 5px;
- background-color: #2c2c2c;
- background-image: -moz-linear-gradient(top, #333333, #222222);
- background-image: -ms-linear-gradient(top, #333333, #222222);
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#333333), to(#222222));
- background-image: -webkit-linear-gradient(top, #333333, #222222);
- background-image: -o-linear-gradient(top, #333333, #222222);
- background-image: linear-gradient(top, #333333, #222222);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#333333', endColorstr='#222222', GradientType=0);
- border-color: #222222 #222222 #000000;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- filter: progid:dximagetransform.microsoft.gradient(enabled=false);
- -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);
- -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);
-}
-.btn-navbar:hover,
-.btn-navbar:active,
-.btn-navbar.active,
-.btn-navbar.disabled,
-.btn-navbar[disabled] {
- background-color: #222222;
-}
-.btn-navbar:active,
-.btn-navbar.active {
- background-color: #080808 \9;
-}
-.btn-navbar .icon-bar {
- display: block;
- width: 18px;
- height: 2px;
- background-color: #f5f5f5;
- -webkit-border-radius: 1px;
- -moz-border-radius: 1px;
- border-radius: 1px;
- -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
- -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
- box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
-}
-.btn-navbar .icon-bar + .icon-bar {
- margin-top: 3px;
-}
+
.nav-collapse.collapse {
height: auto;
}
+
.navbar {
color: #999999;
}
+
.navbar .brand:hover {
text-decoration: none;
}
+
.navbar .brand {
- float: left;
display: block;
+ float: left;
padding: 8px 20px 12px;
margin-left: -20px;
font-size: 20px;
font-weight: 200;
line-height: 1;
- color: #ffffff;
+ color: #999999;
}
+
.navbar .navbar-text {
margin-bottom: 0;
line-height: 40px;
}
+
+.navbar .navbar-link {
+ color: #999999;
+}
+
+.navbar .navbar-link:hover {
+ color: #ffffff;
+}
+
.navbar .btn,
.navbar .btn-group {
margin-top: 5px;
}
+
.navbar .btn-group .btn {
- margin-top: 0;
+ margin: 0;
}
+
.navbar-form {
margin-bottom: 0;
*zoom: 1;
}
+
.navbar-form:before,
.navbar-form:after {
display: table;
content: "";
}
+
.navbar-form:after {
clear: both;
}
+
.navbar-form input,
.navbar-form select,
.navbar-form .radio,
.navbar-form .checkbox {
margin-top: 5px;
}
+
.navbar-form input,
.navbar-form select {
display: inline-block;
margin-bottom: 0;
}
+
.navbar-form input[type="image"],
.navbar-form input[type="checkbox"],
.navbar-form input[type="radio"] {
margin-top: 3px;
}
+
.navbar-form .input-append,
.navbar-form .input-prepend {
margin-top: 6px;
white-space: nowrap;
}
+
.navbar-form .input-append input,
.navbar-form .input-prepend input {
margin-top: 0;
}
+
.navbar-search {
position: relative;
float: left;
margin-top: 6px;
margin-bottom: 0;
}
+
.navbar-search .search-query {
padding: 4px 9px;
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
@@ -2931,21 +3685,24 @@ input[type="submit"].btn.btn-mini {
color: #ffffff;
background-color: #626262;
border: 1px solid #151515;
- -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.15);
- -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.15);
- box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.15);
+ -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0 rgba(255, 255, 255, 0.15);
+ -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0 rgba(255, 255, 255, 0.15);
+ box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0 rgba(255, 255, 255, 0.15);
-webkit-transition: none;
- -moz-transition: none;
- -ms-transition: none;
- -o-transition: none;
- transition: none;
+ -moz-transition: none;
+ -ms-transition: none;
+ -o-transition: none;
+ transition: none;
}
+
.navbar-search .search-query:-moz-placeholder {
color: #cccccc;
}
+
.navbar-search .search-query::-webkit-input-placeholder {
color: #cccccc;
}
+
.navbar-search .search-query:focus,
.navbar-search .search-query.focused {
padding: 5px 10px;
@@ -2953,11 +3710,12 @@ input[type="submit"].btn.btn-mini {
text-shadow: 0 1px 0 #ffffff;
background-color: #ffffff;
border: 0;
- -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
- -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
- box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
outline: 0;
+ -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
+ -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
+ box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
}
+
.navbar-fixed-top,
.navbar-fixed-bottom {
position: fixed;
@@ -2966,24 +3724,29 @@ input[type="submit"].btn.btn-mini {
z-index: 1030;
margin-bottom: 0;
}
+
.navbar-fixed-top .navbar-inner,
.navbar-fixed-bottom .navbar-inner {
- padding-left: 0;
padding-right: 0;
+ padding-left: 0;
-webkit-border-radius: 0;
- -moz-border-radius: 0;
- border-radius: 0;
+ -moz-border-radius: 0;
+ border-radius: 0;
}
+
.navbar-fixed-top .container,
.navbar-fixed-bottom .container {
width: 940px;
}
+
.navbar-fixed-top {
top: 0;
}
+
.navbar-fixed-bottom {
bottom: 0;
}
+
.navbar .nav {
position: relative;
left: 0;
@@ -2991,116 +3754,196 @@ input[type="submit"].btn.btn-mini {
float: left;
margin: 0 10px 0 0;
}
+
.navbar .nav.pull-right {
float: right;
}
+
.navbar .nav > li {
display: block;
float: left;
}
+
.navbar .nav > li > a {
float: none;
- padding: 10px 10px 11px;
+ padding: 9px 10px 11px;
line-height: 19px;
color: #999999;
text-decoration: none;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
+
+.navbar .btn {
+ display: inline-block;
+ padding: 4px 10px 4px;
+ margin: 5px 5px 6px;
+ line-height: 18px;
+}
+
+.navbar .btn-group {
+ padding: 5px 5px 6px;
+ margin: 0;
+}
+
.navbar .nav > li > a:hover {
- background-color: transparent;
color: #ffffff;
text-decoration: none;
+ background-color: transparent;
}
+
.navbar .nav .active > a,
.navbar .nav .active > a:hover {
color: #ffffff;
text-decoration: none;
background-color: #222222;
}
+
.navbar .divider-vertical {
- height: 40px;
width: 1px;
+ height: 40px;
margin: 0 9px;
overflow: hidden;
background-color: #222222;
border-right: 1px solid #333333;
}
+
.navbar .nav.pull-right {
- margin-left: 10px;
margin-right: 0;
+ margin-left: 10px;
}
-.navbar .dropdown-menu {
- margin-top: 1px;
- -webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
+
+.navbar .btn-navbar {
+ display: none;
+ float: right;
+ padding: 7px 10px;
+ margin-right: 5px;
+ margin-left: 5px;
+ background-color: #2c2c2c;
+ *background-color: #222222;
+ background-image: -ms-linear-gradient(top, #333333, #222222);
+ background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#333333), to(#222222));
+ background-image: -webkit-linear-gradient(top, #333333, #222222);
+ background-image: -o-linear-gradient(top, #333333, #222222);
+ background-image: linear-gradient(top, #333333, #222222);
+ background-image: -moz-linear-gradient(top, #333333, #222222);
+ background-repeat: repeat-x;
+ border-color: #222222 #222222 #000000;
+ border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#333333', endColorstr='#222222', GradientType=0);
+ filter: progid:dximagetransform.microsoft.gradient(enabled=false);
+ -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);
+ -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);
+}
+
+.navbar .btn-navbar:hover,
+.navbar .btn-navbar:active,
+.navbar .btn-navbar.active,
+.navbar .btn-navbar.disabled,
+.navbar .btn-navbar[disabled] {
+ background-color: #222222;
+ *background-color: #151515;
+}
+
+.navbar .btn-navbar:active,
+.navbar .btn-navbar.active {
+ background-color: #080808 \9;
+}
+
+.navbar .btn-navbar .icon-bar {
+ display: block;
+ width: 18px;
+ height: 2px;
+ background-color: #f5f5f5;
+ -webkit-border-radius: 1px;
+ -moz-border-radius: 1px;
+ border-radius: 1px;
+ -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
+ -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
+ box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
+}
+
+.btn-navbar .icon-bar + .icon-bar {
+ margin-top: 3px;
}
+
.navbar .dropdown-menu:before {
- content: '';
+ position: absolute;
+ top: -7px;
+ left: 9px;
display: inline-block;
- border-left: 7px solid transparent;
border-right: 7px solid transparent;
border-bottom: 7px solid #ccc;
+ border-left: 7px solid transparent;
border-bottom-color: rgba(0, 0, 0, 0.2);
- position: absolute;
- top: -7px;
- left: 9px;
+ content: '';
}
+
.navbar .dropdown-menu:after {
- content: '';
- display: inline-block;
- border-left: 6px solid transparent;
- border-right: 6px solid transparent;
- border-bottom: 6px solid #ffffff;
position: absolute;
top: -6px;
left: 10px;
+ display: inline-block;
+ border-right: 6px solid transparent;
+ border-bottom: 6px solid #ffffff;
+ border-left: 6px solid transparent;
+ content: '';
}
+
.navbar-fixed-bottom .dropdown-menu:before {
+ top: auto;
+ bottom: -7px;
border-top: 7px solid #ccc;
- border-top-color: rgba(0, 0, 0, 0.2);
border-bottom: 0;
- bottom: -7px;
- top: auto;
+ border-top-color: rgba(0, 0, 0, 0.2);
}
+
.navbar-fixed-bottom .dropdown-menu:after {
+ top: auto;
+ bottom: -6px;
border-top: 6px solid #ffffff;
border-bottom: 0;
- bottom: -6px;
- top: auto;
}
-.navbar .nav .dropdown-toggle .caret,
-.navbar .nav .open.dropdown .caret {
+
+.navbar .nav li.dropdown .dropdown-toggle .caret,
+.navbar .nav li.dropdown.open .caret {
border-top-color: #ffffff;
border-bottom-color: #ffffff;
}
-.navbar .nav .active .caret {
+
+.navbar .nav li.dropdown.active .caret {
opacity: 1;
filter: alpha(opacity=100);
}
-.navbar .nav .open > .dropdown-toggle,
-.navbar .nav .active > .dropdown-toggle,
-.navbar .nav .open.active > .dropdown-toggle {
+
+.navbar .nav li.dropdown.open > .dropdown-toggle,
+.navbar .nav li.dropdown.active > .dropdown-toggle,
+.navbar .nav li.dropdown.open.active > .dropdown-toggle {
background-color: transparent;
}
-.navbar .nav .active > .dropdown-toggle:hover {
+
+.navbar .nav li.dropdown.active > .dropdown-toggle:hover {
color: #ffffff;
}
-.navbar .nav.pull-right .dropdown-menu,
-.navbar .nav .dropdown-menu.pull-right {
- left: auto;
+
+.navbar .pull-right .dropdown-menu,
+.navbar .dropdown-menu.pull-right {
right: 0;
-}
-.navbar .nav.pull-right .dropdown-menu:before,
-.navbar .nav .dropdown-menu.pull-right:before {
left: auto;
- right: 12px;
}
-.navbar .nav.pull-right .dropdown-menu:after,
-.navbar .nav .dropdown-menu.pull-right:after {
+
+.navbar .pull-right .dropdown-menu:before,
+.navbar .dropdown-menu.pull-right:before {
+ right: 12px;
left: auto;
+}
+
+.navbar .pull-right .dropdown-menu:after,
+.navbar .dropdown-menu.pull-right:after {
right: 13px;
+ left: auto;
}
+
.breadcrumb {
padding: 7px 14px;
margin: 0 0 18px;
@@ -3113,52 +3956,55 @@ input[type="submit"].btn.btn-mini {
background-image: -o-linear-gradient(top, #ffffff, #f5f5f5);
background-image: linear-gradient(top, #ffffff, #f5f5f5);
background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#f5f5f5', GradientType=0);
border: 1px solid #ddd;
-webkit-border-radius: 3px;
- -moz-border-radius: 3px;
- border-radius: 3px;
+ -moz-border-radius: 3px;
+ border-radius: 3px;
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#ffffff', endColorstr='#f5f5f5', GradientType=0);
-webkit-box-shadow: inset 0 1px 0 #ffffff;
- -moz-box-shadow: inset 0 1px 0 #ffffff;
- box-shadow: inset 0 1px 0 #ffffff;
+ -moz-box-shadow: inset 0 1px 0 #ffffff;
+ box-shadow: inset 0 1px 0 #ffffff;
}
+
.breadcrumb li {
display: inline-block;
*display: inline;
- /* IE7 inline-block hack */
-
- *zoom: 1;
text-shadow: 0 1px 0 #ffffff;
+ *zoom: 1;
}
+
.breadcrumb .divider {
padding: 0 5px;
color: #999999;
}
+
.breadcrumb .active a {
color: #333333;
}
+
.pagination {
height: 36px;
margin: 18px 0;
}
+
.pagination ul {
display: inline-block;
*display: inline;
- /* IE7 inline-block hack */
-
- *zoom: 1;
- margin-left: 0;
margin-bottom: 0;
+ margin-left: 0;
-webkit-border-radius: 3px;
- -moz-border-radius: 3px;
- border-radius: 3px;
+ -moz-border-radius: 3px;
+ border-radius: 3px;
+ *zoom: 1;
-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
- -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
- box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
+ -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
+
.pagination li {
display: inline;
}
+
.pagination a {
float: left;
padding: 0 14px;
@@ -3167,93 +4013,114 @@ input[type="submit"].btn.btn-mini {
border: 1px solid #ddd;
border-left-width: 0;
}
+
.pagination a:hover,
.pagination .active a {
background-color: #f5f5f5;
}
+
.pagination .active a {
color: #999999;
cursor: default;
}
+
.pagination .disabled span,
.pagination .disabled a,
.pagination .disabled a:hover {
color: #999999;
- background-color: transparent;
cursor: default;
+ background-color: transparent;
}
+
.pagination li:first-child a {
border-left-width: 1px;
-webkit-border-radius: 3px 0 0 3px;
- -moz-border-radius: 3px 0 0 3px;
- border-radius: 3px 0 0 3px;
+ -moz-border-radius: 3px 0 0 3px;
+ border-radius: 3px 0 0 3px;
}
+
.pagination li:last-child a {
-webkit-border-radius: 0 3px 3px 0;
- -moz-border-radius: 0 3px 3px 0;
- border-radius: 0 3px 3px 0;
+ -moz-border-radius: 0 3px 3px 0;
+ border-radius: 0 3px 3px 0;
}
+
.pagination-centered {
text-align: center;
}
+
.pagination-right {
text-align: right;
}
+
.pager {
- margin-left: 0;
margin-bottom: 18px;
- list-style: none;
+ margin-left: 0;
text-align: center;
+ list-style: none;
*zoom: 1;
}
+
.pager:before,
.pager:after {
display: table;
content: "";
}
+
.pager:after {
clear: both;
}
+
.pager li {
display: inline;
}
+
.pager a {
display: inline-block;
padding: 5px 14px;
background-color: #fff;
border: 1px solid #ddd;
-webkit-border-radius: 15px;
- -moz-border-radius: 15px;
- border-radius: 15px;
+ -moz-border-radius: 15px;
+ border-radius: 15px;
}
+
.pager a:hover {
text-decoration: none;
background-color: #f5f5f5;
}
+
.pager .next a {
float: right;
}
+
.pager .previous a {
float: left;
}
+
.pager .disabled a,
.pager .disabled a:hover {
color: #999999;
- background-color: #fff;
cursor: default;
+ background-color: #fff;
}
+
.modal-open .dropdown-menu {
z-index: 2050;
}
+
.modal-open .dropdown.open {
*z-index: 2050;
}
+
.modal-open .popover {
z-index: 2060;
}
+
.modal-open .tooltip {
z-index: 2070;
}
+
.modal-backdrop {
position: fixed;
top: 0;
@@ -3263,64 +4130,72 @@ input[type="submit"].btn.btn-mini {
z-index: 1040;
background-color: #000000;
}
+
.modal-backdrop.fade {
opacity: 0;
}
+
.modal-backdrop,
.modal-backdrop.fade.in {
opacity: 0.8;
filter: alpha(opacity=80);
}
+
.modal {
position: fixed;
top: 50%;
left: 50%;
z-index: 1050;
- overflow: auto;
width: 560px;
margin: -250px 0 0 -280px;
+ overflow: auto;
background-color: #ffffff;
border: 1px solid #999;
border: 1px solid rgba(0, 0, 0, 0.3);
*border: 1px solid #999;
- /* IE6-7 */
-
-webkit-border-radius: 6px;
- -moz-border-radius: 6px;
- border-radius: 6px;
+ -moz-border-radius: 6px;
+ border-radius: 6px;
-webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
- -moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
- box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
+ -moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
+ box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
-webkit-background-clip: padding-box;
- -moz-background-clip: padding-box;
- background-clip: padding-box;
+ -moz-background-clip: padding-box;
+ background-clip: padding-box;
}
+
.modal.fade {
- -webkit-transition: opacity .3s linear, top .3s ease-out;
- -moz-transition: opacity .3s linear, top .3s ease-out;
- -ms-transition: opacity .3s linear, top .3s ease-out;
- -o-transition: opacity .3s linear, top .3s ease-out;
- transition: opacity .3s linear, top .3s ease-out;
top: -25%;
+ -webkit-transition: opacity 0.3s linear, top 0.3s ease-out;
+ -moz-transition: opacity 0.3s linear, top 0.3s ease-out;
+ -ms-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;
}
+
.modal.fade.in {
top: 50%;
}
+
.modal-header {
padding: 9px 15px;
border-bottom: 1px solid #eee;
}
+
.modal-header .close {
margin-top: 2px;
}
+
.modal-body {
- overflow-y: auto;
max-height: 400px;
padding: 15px;
+ overflow-y: auto;
}
+
.modal-form {
margin-bottom: 0;
}
+
.modal-footer {
padding: 14px 15px 15px;
margin-bottom: 0;
@@ -3328,62 +4203,74 @@ input[type="submit"].btn.btn-mini {
background-color: #f5f5f5;
border-top: 1px solid #ddd;
-webkit-border-radius: 0 0 6px 6px;
- -moz-border-radius: 0 0 6px 6px;
- border-radius: 0 0 6px 6px;
- -webkit-box-shadow: inset 0 1px 0 #ffffff;
- -moz-box-shadow: inset 0 1px 0 #ffffff;
- box-shadow: inset 0 1px 0 #ffffff;
+ -moz-border-radius: 0 0 6px 6px;
+ border-radius: 0 0 6px 6px;
*zoom: 1;
+ -webkit-box-shadow: inset 0 1px 0 #ffffff;
+ -moz-box-shadow: inset 0 1px 0 #ffffff;
+ box-shadow: inset 0 1px 0 #ffffff;
}
+
.modal-footer:before,
.modal-footer:after {
display: table;
content: "";
}
+
.modal-footer:after {
clear: both;
}
+
.modal-footer .btn + .btn {
- margin-left: 5px;
margin-bottom: 0;
+ margin-left: 5px;
}
+
.modal-footer .btn-group .btn + .btn {
margin-left: -1px;
}
+
.tooltip {
position: absolute;
z-index: 1020;
display: block;
- visibility: visible;
padding: 5px;
font-size: 11px;
opacity: 0;
filter: alpha(opacity=0);
+ visibility: visible;
}
+
.tooltip.in {
opacity: 0.8;
filter: alpha(opacity=80);
}
+
.tooltip.top {
margin-top: -2px;
}
+
.tooltip.right {
margin-left: 2px;
}
+
.tooltip.bottom {
margin-top: 2px;
}
+
.tooltip.left {
margin-left: -2px;
}
+
.tooltip.top .tooltip-arrow {
bottom: 0;
left: 50%;
margin-left: -5px;
- border-left: 5px solid transparent;
- border-right: 5px solid transparent;
border-top: 5px solid #000000;
+ border-right: 5px solid transparent;
+ border-left: 5px solid transparent;
}
+
.tooltip.left .tooltip-arrow {
top: 50%;
right: 0;
@@ -3392,22 +4279,25 @@ input[type="submit"].btn.btn-mini {
border-bottom: 5px solid transparent;
border-left: 5px solid #000000;
}
+
.tooltip.bottom .tooltip-arrow {
top: 0;
left: 50%;
margin-left: -5px;
- border-left: 5px solid transparent;
border-right: 5px solid transparent;
border-bottom: 5px solid #000000;
+ border-left: 5px solid transparent;
}
+
.tooltip.right .tooltip-arrow {
top: 50%;
left: 0;
margin-top: -5px;
border-top: 5px solid transparent;
- border-bottom: 5px solid transparent;
border-right: 5px solid #000000;
+ border-bottom: 5px solid transparent;
}
+
.tooltip-inner {
max-width: 200px;
padding: 3px 8px;
@@ -3416,14 +4306,16 @@ input[type="submit"].btn.btn-mini {
text-decoration: none;
background-color: #000000;
-webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
+ -moz-border-radius: 4px;
+ border-radius: 4px;
}
+
.tooltip-arrow {
position: absolute;
width: 0;
height: 0;
}
+
.popover {
position: absolute;
top: 0;
@@ -3432,42 +4324,50 @@ input[type="submit"].btn.btn-mini {
display: none;
padding: 5px;
}
+
.popover.top {
margin-top: -5px;
}
+
.popover.right {
margin-left: 5px;
}
+
.popover.bottom {
margin-top: 5px;
}
+
.popover.left {
margin-left: -5px;
}
+
.popover.top .arrow {
bottom: 0;
left: 50%;
margin-left: -5px;
- border-left: 5px solid transparent;
- border-right: 5px solid transparent;
border-top: 5px solid #000000;
+ border-right: 5px solid transparent;
+ border-left: 5px solid transparent;
}
+
.popover.right .arrow {
top: 50%;
left: 0;
margin-top: -5px;
border-top: 5px solid transparent;
- border-bottom: 5px solid transparent;
border-right: 5px solid #000000;
+ border-bottom: 5px solid transparent;
}
+
.popover.bottom .arrow {
top: 0;
left: 50%;
margin-left: -5px;
- border-left: 5px solid transparent;
border-right: 5px solid transparent;
border-bottom: 5px solid #000000;
+ border-left: 5px solid transparent;
}
+
.popover.left .arrow {
top: 50%;
right: 0;
@@ -3476,222 +4376,241 @@ input[type="submit"].btn.btn-mini {
border-bottom: 5px solid transparent;
border-left: 5px solid #000000;
}
+
.popover .arrow {
position: absolute;
width: 0;
height: 0;
}
+
.popover-inner {
- padding: 3px;
width: 280px;
+ padding: 3px;
overflow: hidden;
background: #000000;
background: rgba(0, 0, 0, 0.8);
-webkit-border-radius: 6px;
- -moz-border-radius: 6px;
- border-radius: 6px;
+ -moz-border-radius: 6px;
+ border-radius: 6px;
-webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
- -moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
- box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
+ -moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
+ box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
}
+
.popover-title {
padding: 9px 15px;
line-height: 1;
background-color: #f5f5f5;
border-bottom: 1px solid #eee;
-webkit-border-radius: 3px 3px 0 0;
- -moz-border-radius: 3px 3px 0 0;
- border-radius: 3px 3px 0 0;
+ -moz-border-radius: 3px 3px 0 0;
+ border-radius: 3px 3px 0 0;
}
+
.popover-content {
padding: 14px;
background-color: #ffffff;
-webkit-border-radius: 0 0 3px 3px;
- -moz-border-radius: 0 0 3px 3px;
- border-radius: 0 0 3px 3px;
+ -moz-border-radius: 0 0 3px 3px;
+ border-radius: 0 0 3px 3px;
-webkit-background-clip: padding-box;
- -moz-background-clip: padding-box;
- background-clip: padding-box;
+ -moz-background-clip: padding-box;
+ background-clip: padding-box;
}
+
.popover-content p,
.popover-content ul,
.popover-content ol {
margin-bottom: 0;
}
+
.thumbnails {
margin-left: -20px;
list-style: none;
*zoom: 1;
}
+
.thumbnails:before,
.thumbnails:after {
display: table;
content: "";
}
+
.thumbnails:after {
clear: both;
}
+
+.row-fluid .thumbnails {
+ margin-left: 0;
+}
+
.thumbnails > li {
- float: left;
- margin: 0 0 18px 20px;
+ margin-bottom: 18px;
}
+
.thumbnail {
display: block;
padding: 4px;
line-height: 1;
border: 1px solid #ddd;
-webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
+ -moz-border-radius: 4px;
+ border-radius: 4px;
-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075);
- -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075);
- box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075);
+ -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075);
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075);
}
+
a.thumbnail:hover {
border-color: #0088cc;
-webkit-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25);
- -moz-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25);
- box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25);
+ -moz-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25);
+ box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25);
}
+
.thumbnail > img {
display: block;
max-width: 100%;
- margin-left: auto;
margin-right: auto;
+ margin-left: auto;
}
+
.thumbnail .caption {
padding: 9px;
}
-.label {
- padding: 1px 4px 2px;
+
+.label,
+.badge {
font-size: 10.998px;
font-weight: bold;
- line-height: 13px;
+ line-height: 14px;
color: #ffffff;
- vertical-align: middle;
- white-space: nowrap;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+ white-space: nowrap;
+ vertical-align: baseline;
background-color: #999999;
- -webkit-border-radius: 3px;
- -moz-border-radius: 3px;
- border-radius: 3px;
-}
-.label:hover {
- color: #ffffff;
- text-decoration: none;
-}
-.label-important {
- background-color: #b94a48;
-}
-.label-important:hover {
- background-color: #953b39;
-}
-.label-warning {
- background-color: #f89406;
-}
-.label-warning:hover {
- background-color: #c67605;
}
-.label-success {
- background-color: #468847;
-}
-.label-success:hover {
- background-color: #356635;
-}
-.label-info {
- background-color: #3a87ad;
-}
-.label-info:hover {
- background-color: #2d6987;
-}
-.label-inverse {
- background-color: #333333;
-}
-.label-inverse:hover {
- background-color: #1a1a1a;
+
+.label {
+ padding: 1px 4px 2px;
+ -webkit-border-radius: 3px;
+ -moz-border-radius: 3px;
+ border-radius: 3px;
}
+
.badge {
padding: 1px 9px 2px;
- font-size: 12.025px;
- font-weight: bold;
- white-space: nowrap;
- color: #ffffff;
- background-color: #999999;
-webkit-border-radius: 9px;
- -moz-border-radius: 9px;
- border-radius: 9px;
+ -moz-border-radius: 9px;
+ border-radius: 9px;
}
-.badge:hover {
+
+a.label:hover,
+a.badge:hover {
color: #ffffff;
text-decoration: none;
cursor: pointer;
}
-.badge-error {
+
+.label-important,
+.badge-important {
background-color: #b94a48;
}
-.badge-error:hover {
+
+.label-important[href],
+.badge-important[href] {
background-color: #953b39;
}
+
+.label-warning,
.badge-warning {
background-color: #f89406;
}
-.badge-warning:hover {
+
+.label-warning[href],
+.badge-warning[href] {
background-color: #c67605;
}
+
+.label-success,
.badge-success {
background-color: #468847;
}
-.badge-success:hover {
+
+.label-success[href],
+.badge-success[href] {
background-color: #356635;
}
+
+.label-info,
.badge-info {
background-color: #3a87ad;
}
-.badge-info:hover {
+
+.label-info[href],
+.badge-info[href] {
background-color: #2d6987;
}
+
+.label-inverse,
.badge-inverse {
background-color: #333333;
}
-.badge-inverse:hover {
+
+.label-inverse[href],
+.badge-inverse[href] {
background-color: #1a1a1a;
}
+
@-webkit-keyframes progress-bar-stripes {
from {
- background-position: 0 0;
+ background-position: 40px 0;
}
to {
- background-position: 40px 0;
+ background-position: 0 0;
}
}
+
@-moz-keyframes progress-bar-stripes {
from {
- background-position: 0 0;
+ background-position: 40px 0;
}
to {
- background-position: 40px 0;
+ background-position: 0 0;
}
}
+
@-ms-keyframes progress-bar-stripes {
from {
+ background-position: 40px 0;
+ }
+ to {
+ background-position: 0 0;
+ }
+}
+
+@-o-keyframes progress-bar-stripes {
+ from {
background-position: 0 0;
}
to {
background-position: 40px 0;
}
}
+
@keyframes progress-bar-stripes {
from {
- background-position: 0 0;
+ background-position: 40px 0;
}
to {
- background-position: 40px 0;
+ background-position: 0 0;
}
}
+
.progress {
- overflow: hidden;
height: 18px;
margin-bottom: 18px;
+ overflow: hidden;
background-color: #f7f7f7;
background-image: -moz-linear-gradient(top, #f5f5f5, #f9f9f9);
background-image: -ms-linear-gradient(top, #f5f5f5, #f9f9f9);
@@ -3700,61 +4619,67 @@ a.thumbnail:hover {
background-image: -o-linear-gradient(top, #f5f5f5, #f9f9f9);
background-image: linear-gradient(top, #f5f5f5, #f9f9f9);
background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f5f5f5', endColorstr='#f9f9f9', GradientType=0);
- -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
- -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
- box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
-webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
+ -moz-border-radius: 4px;
+ border-radius: 4px;
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#f5f5f5', endColorstr='#f9f9f9', GradientType=0);
+ -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
+ -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
+ box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
}
+
.progress .bar {
- width: 0%;
+ width: 0;
height: 18px;
- color: #ffffff;
font-size: 12px;
+ color: #ffffff;
text-align: center;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
background-color: #0e90d2;
background-image: -moz-linear-gradient(top, #149bdf, #0480be);
- background-image: -ms-linear-gradient(top, #149bdf, #0480be);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#149bdf), to(#0480be));
background-image: -webkit-linear-gradient(top, #149bdf, #0480be);
background-image: -o-linear-gradient(top, #149bdf, #0480be);
background-image: linear-gradient(top, #149bdf, #0480be);
+ background-image: -ms-linear-gradient(top, #149bdf, #0480be);
background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#149bdf', endColorstr='#0480be', GradientType=0);
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#149bdf', endColorstr='#0480be', GradientType=0);
-webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
- -moz-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
- box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
+ -moz-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-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ -ms-box-sizing: border-box;
+ box-sizing: border-box;
-webkit-transition: width 0.6s ease;
- -moz-transition: width 0.6s ease;
- -ms-transition: width 0.6s ease;
- -o-transition: width 0.6s ease;
- transition: width 0.6s ease;
+ -moz-transition: width 0.6s ease;
+ -ms-transition: width 0.6s ease;
+ -o-transition: width 0.6s ease;
+ transition: width 0.6s ease;
}
+
.progress-striped .bar {
background-color: #149bdf;
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
+ background-image: -o-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: -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: -ms-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: -o-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: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(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;
+ -moz-background-size: 40px 40px;
+ -o-background-size: 40px 40px;
+ background-size: 40px 40px;
}
+
.progress.active .bar {
-webkit-animation: progress-bar-stripes 2s linear infinite;
- -moz-animation: progress-bar-stripes 2s linear infinite;
- animation: progress-bar-stripes 2s linear infinite;
+ -moz-animation: progress-bar-stripes 2s linear infinite;
+ -ms-animation: progress-bar-stripes 2s linear infinite;
+ -o-animation: progress-bar-stripes 2s linear infinite;
+ animation: progress-bar-stripes 2s linear infinite;
}
+
.progress-danger .bar {
background-color: #dd514c;
background-image: -moz-linear-gradient(top, #ee5f5b, #c43c35);
@@ -3764,8 +4689,9 @@ a.thumbnail:hover {
background-image: -o-linear-gradient(top, #ee5f5b, #c43c35);
background-image: linear-gradient(top, #ee5f5b, #c43c35);
background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ee5f5b', endColorstr='#c43c35', GradientType=0);
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#ee5f5b', endColorstr='#c43c35', GradientType=0);
}
+
.progress-danger.progress-striped .bar {
background-color: #ee5f5b;
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
@@ -3775,6 +4701,7 @@ a.thumbnail:hover {
background-image: -o-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);
}
+
.progress-success .bar {
background-color: #5eb95e;
background-image: -moz-linear-gradient(top, #62c462, #57a957);
@@ -3784,8 +4711,9 @@ a.thumbnail:hover {
background-image: -o-linear-gradient(top, #62c462, #57a957);
background-image: linear-gradient(top, #62c462, #57a957);
background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#62c462', endColorstr='#57a957', GradientType=0);
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#62c462', endColorstr='#57a957', GradientType=0);
}
+
.progress-success.progress-striped .bar {
background-color: #62c462;
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
@@ -3795,6 +4723,7 @@ a.thumbnail:hover {
background-image: -o-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);
}
+
.progress-info .bar {
background-color: #4bb1cf;
background-image: -moz-linear-gradient(top, #5bc0de, #339bb9);
@@ -3804,8 +4733,9 @@ a.thumbnail:hover {
background-image: -o-linear-gradient(top, #5bc0de, #339bb9);
background-image: linear-gradient(top, #5bc0de, #339bb9);
background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#5bc0de', endColorstr='#339bb9', GradientType=0);
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#5bc0de', endColorstr='#339bb9', GradientType=0);
}
+
.progress-info.progress-striped .bar {
background-color: #5bc0de;
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
@@ -3815,6 +4745,7 @@ a.thumbnail:hover {
background-image: -o-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);
}
+
.progress-warning .bar {
background-color: #faa732;
background-image: -moz-linear-gradient(top, #fbb450, #f89406);
@@ -3824,8 +4755,9 @@ a.thumbnail:hover {
background-image: -o-linear-gradient(top, #fbb450, #f89406);
background-image: linear-gradient(top, #fbb450, #f89406);
background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fbb450', endColorstr='#f89406', GradientType=0);
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#fbb450', endColorstr='#f89406', GradientType=0);
}
+
.progress-warning.progress-striped .bar {
background-color: #fbb450;
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
@@ -3835,80 +4767,102 @@ a.thumbnail:hover {
background-image: -o-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);
}
+
.accordion {
margin-bottom: 18px;
}
+
.accordion-group {
margin-bottom: 2px;
border: 1px solid #e5e5e5;
-webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
+ -moz-border-radius: 4px;
+ border-radius: 4px;
}
+
.accordion-heading {
border-bottom: 0;
}
+
.accordion-heading .accordion-toggle {
display: block;
padding: 8px 15px;
}
+
+.accordion-toggle {
+ cursor: pointer;
+}
+
.accordion-inner {
padding: 9px 15px;
border-top: 1px solid #e5e5e5;
}
+
.carousel {
position: relative;
margin-bottom: 18px;
line-height: 1;
}
+
.carousel-inner {
- overflow: hidden;
- width: 100%;
position: relative;
+ width: 100%;
+ overflow: hidden;
}
+
.carousel .item {
- display: none;
position: relative;
+ display: none;
-webkit-transition: 0.6s ease-in-out left;
- -moz-transition: 0.6s ease-in-out left;
- -ms-transition: 0.6s ease-in-out left;
- -o-transition: 0.6s ease-in-out left;
- transition: 0.6s ease-in-out left;
+ -moz-transition: 0.6s ease-in-out left;
+ -ms-transition: 0.6s ease-in-out left;
+ -o-transition: 0.6s ease-in-out left;
+ transition: 0.6s ease-in-out left;
}
+
.carousel .item > img {
display: block;
line-height: 1;
}
+
.carousel .active,
.carousel .next,
.carousel .prev {
display: block;
}
+
.carousel .active {
left: 0;
}
+
.carousel .next,
.carousel .prev {
position: absolute;
top: 0;
width: 100%;
}
+
.carousel .next {
left: 100%;
}
+
.carousel .prev {
left: -100%;
}
+
.carousel .next.left,
.carousel .prev.right {
left: 0;
}
+
.carousel .active.left {
left: -100%;
}
+
.carousel .active.right {
left: 100%;
}
+
.carousel-control {
position: absolute;
top: 40%;
@@ -3924,67 +4878,79 @@ a.thumbnail:hover {
background: #222222;
border: 3px solid #ffffff;
-webkit-border-radius: 23px;
- -moz-border-radius: 23px;
- border-radius: 23px;
+ -moz-border-radius: 23px;
+ border-radius: 23px;
opacity: 0.5;
filter: alpha(opacity=50);
}
+
.carousel-control.right {
- left: auto;
right: 15px;
+ left: auto;
}
+
.carousel-control:hover {
color: #ffffff;
text-decoration: none;
opacity: 0.9;
filter: alpha(opacity=90);
}
+
.carousel-caption {
position: absolute;
- left: 0;
right: 0;
bottom: 0;
+ left: 0;
padding: 10px 15px 5px;
background: #333333;
background: rgba(0, 0, 0, 0.75);
}
+
.carousel-caption h4,
.carousel-caption p {
color: #ffffff;
}
+
.hero-unit {
padding: 60px;
margin-bottom: 30px;
background-color: #eeeeee;
-webkit-border-radius: 6px;
- -moz-border-radius: 6px;
- border-radius: 6px;
+ -moz-border-radius: 6px;
+ border-radius: 6px;
}
+
.hero-unit h1 {
margin-bottom: 0;
font-size: 60px;
line-height: 1;
- color: inherit;
letter-spacing: -1px;
+ color: inherit;
}
+
.hero-unit p {
font-size: 18px;
font-weight: 200;
line-height: 27px;
color: inherit;
}
+
.pull-right {
float: right;
}
+
.pull-left {
float: left;
}
+
.hide {
display: none;
}
+
.show {
display: block;
}
+
.invisible {
visibility: hidden;
}
diff --git a/docs/assets/css/docs.css b/docs/assets/css/docs.css
index cb7224e38..b7e0c8dbf 100644
--- a/docs/assets/css/docs.css
+++ b/docs/assets/css/docs.css
@@ -228,7 +228,7 @@ hr.soften {
}
.quick-links li {
display: inline;
- margin: 0 5px;
+ margin: 0 8px;
color: #999;
}
.quick-links .github-btn,
@@ -492,10 +492,6 @@ hr.soften {
/* Misc
-------------------------------------------------- */
-img {
- max-width: 100%;
-}
-
/* Make tables spaced out a bit more */
h2 + table,
h3 + table,
diff --git a/docs/assets/ico/apple-touch-icon-144-precomposed.png b/docs/assets/ico/apple-touch-icon-144-precomposed.png
new file mode 100644
index 000000000..3c80087b1
--- /dev/null
+++ b/docs/assets/ico/apple-touch-icon-144-precomposed.png
Binary files differ
diff --git a/docs/assets/ico/apple-touch-icon-72-precomposed.png b/docs/assets/ico/apple-touch-icon-72-precomposed.png
index 7ec5ff238..f77bd6c99 100644
--- a/docs/assets/ico/apple-touch-icon-72-precomposed.png
+++ b/docs/assets/ico/apple-touch-icon-72-precomposed.png
Binary files differ
diff --git a/docs/assets/img/example-sites/kippt.png b/docs/assets/img/example-sites/kippt.png
index a28a63d2e..4afa772cc 100644
--- a/docs/assets/img/example-sites/kippt.png
+++ b/docs/assets/img/example-sites/kippt.png
Binary files differ
diff --git a/docs/assets/img/glyphicons-halflings-white.png b/docs/assets/img/glyphicons-halflings-white.png
index a20760bfd..3bf6484a2 100644
--- a/docs/assets/img/glyphicons-halflings-white.png
+++ b/docs/assets/img/glyphicons-halflings-white.png
Binary files differ
diff --git a/docs/assets/img/glyphicons-halflings.png b/docs/assets/img/glyphicons-halflings.png
index 92d4445df..79bc568c2 100644
--- a/docs/assets/img/glyphicons-halflings.png
+++ b/docs/assets/img/glyphicons-halflings.png
Binary files differ
diff --git a/docs/assets/js/application.js b/docs/assets/js/application.js
index 732bed458..6463b902f 100644
--- a/docs/assets/js/application.js
+++ b/docs/assets/js/application.js
@@ -51,6 +51,11 @@
processScroll()
+ // hack sad times - holdover until rewrite for 2.1
+ $nav.on('click', function () {
+ if (!isFixed) setTimeout(function () { $win.scrollTop($win.scrollTop() - 47) }, 10)
+ })
+
$win.on('scroll', processScroll)
function processScroll() {
@@ -132,7 +137,7 @@
$.ajax({
type: 'POST'
- , url: 'http://bootstrap.herokuapp.com'
+ , url: /\?dev/.test(window.location) ? 'http://localhost:3000' : 'http://bootstrap.herokuapp.com'
, dataType: 'jsonpi'
, params: {
js: js
@@ -142,7 +147,6 @@
}
})
})
-
})
// Modified from the original jsonpi https://github.com/benvinegar/jquery-jsonpi
diff --git a/docs/assets/js/bootstrap-alert.js b/docs/assets/js/bootstrap-alert.js
index d17f44e15..fa0806ea1 100644
--- a/docs/assets/js/bootstrap-alert.js
+++ b/docs/assets/js/bootstrap-alert.js
@@ -1,5 +1,5 @@
/* ==========================================================
- * bootstrap-alert.js v2.0.2
+ * bootstrap-alert.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#alerts
* ==========================================================
* Copyright 2012 Twitter, Inc.
@@ -18,61 +18,57 @@
* ========================================================== */
-!function( $ ){
+!function ($) {
+
+ "use strict"; // jshint ;_;
- "use strict"
/* ALERT CLASS DEFINITION
* ====================== */
var dismiss = '[data-dismiss="alert"]'
- , Alert = function ( el ) {
+ , Alert = function (el) {
$(el).on('click', dismiss, this.close)
}
- Alert.prototype = {
-
- constructor: Alert
+ Alert.prototype.close = function (e) {
+ var $this = $(this)
+ , selector = $this.attr('data-target')
+ , $parent
- , close: function ( e ) {
- var $this = $(this)
- , selector = $this.attr('data-target')
- , $parent
+ if (!selector) {
+ selector = $this.attr('href')
+ selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
+ }
- if (!selector) {
- selector = $this.attr('href')
- selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
- }
+ $parent = $(selector)
- $parent = $(selector)
- $parent.trigger('close')
+ e && e.preventDefault()
- e && e.preventDefault()
+ $parent.length || ($parent = $this.hasClass('alert') ? $this : $this.parent())
- $parent.length || ($parent = $this.hasClass('alert') ? $this : $this.parent())
+ $parent.trigger(e = $.Event('close'))
- $parent
- .trigger('close')
- .removeClass('in')
+ if (e.isDefaultPrevented()) return
- function removeElement() {
- $parent
- .trigger('closed')
- .remove()
- }
+ $parent.removeClass('in')
- $.support.transition && $parent.hasClass('fade') ?
- $parent.on($.support.transition.end, removeElement) :
- removeElement()
+ function removeElement() {
+ $parent
+ .trigger('closed')
+ .remove()
}
+ $.support.transition && $parent.hasClass('fade') ?
+ $parent.on($.support.transition.end, removeElement) :
+ removeElement()
}
/* ALERT PLUGIN DEFINITION
* ======================= */
- $.fn.alert = function ( option ) {
+ $.fn.alert = function (option) {
return this.each(function () {
var $this = $(this)
, data = $this.data('alert')
@@ -91,4 +87,4 @@
$('body').on('click.alert.data-api', dismiss, Alert.prototype.close)
})
-}( window.jQuery ); \ No newline at end of file
+}(window.jQuery); \ No newline at end of file
diff --git a/docs/assets/js/bootstrap-button.js b/docs/assets/js/bootstrap-button.js
index 6b36753d8..a9e6ba7b1 100644
--- a/docs/assets/js/bootstrap-button.js
+++ b/docs/assets/js/bootstrap-button.js
@@ -1,5 +1,5 @@
/* ============================================================
- * bootstrap-button.js v2.0.2
+ * bootstrap-button.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#buttons
* ============================================================
* Copyright 2012 Twitter, Inc.
@@ -17,58 +17,54 @@
* limitations under the License.
* ============================================================ */
-!function( $ ){
- "use strict"
+!function ($) {
+
+ "use strict"; // jshint ;_;
+
/* BUTTON PUBLIC CLASS DEFINITION
* ============================== */
- var Button = function ( element, options ) {
+ var Button = function (element, options) {
this.$element = $(element)
this.options = $.extend({}, $.fn.button.defaults, options)
}
- Button.prototype = {
-
- constructor: Button
+ Button.prototype.setState = function (state) {
+ var d = 'disabled'
+ , $el = this.$element
+ , data = $el.data()
+ , val = $el.is('input') ? 'val' : 'html'
- , setState: function ( state ) {
- var d = 'disabled'
- , $el = this.$element
- , data = $el.data()
- , val = $el.is('input') ? 'val' : 'html'
+ state = state + 'Text'
+ data.resetText || $el.data('resetText', $el[val]())
- state = state + 'Text'
- data.resetText || $el.data('resetText', $el[val]())
+ $el[val](data[state] || this.options[state])
- $el[val](data[state] || this.options[state])
-
- // push to event loop to allow forms to submit
- setTimeout(function () {
- state == 'loadingText' ?
- $el.addClass(d).attr(d, d) :
- $el.removeClass(d).removeAttr(d)
- }, 0)
- }
-
- , toggle: function () {
- var $parent = this.$element.parent('[data-toggle="buttons-radio"]')
+ // push to event loop to allow forms to submit
+ setTimeout(function () {
+ state == 'loadingText' ?
+ $el.addClass(d).attr(d, d) :
+ $el.removeClass(d).removeAttr(d)
+ }, 0)
+ }
- $parent && $parent
- .find('.active')
- .removeClass('active')
+ Button.prototype.toggle = function () {
+ var $parent = this.$element.parent('[data-toggle="buttons-radio"]')
- this.$element.toggleClass('active')
- }
+ $parent && $parent
+ .find('.active')
+ .removeClass('active')
+ this.$element.toggleClass('active')
}
/* BUTTON PLUGIN DEFINITION
* ======================== */
- $.fn.button = function ( option ) {
+ $.fn.button = function (option) {
return this.each(function () {
var $this = $(this)
, data = $this.data('button')
@@ -97,4 +93,4 @@
})
})
-}( window.jQuery ); \ No newline at end of file
+}(window.jQuery); \ No newline at end of file
diff --git a/docs/assets/js/bootstrap-carousel.js b/docs/assets/js/bootstrap-carousel.js
index 8c0723d28..96e5a8191 100644
--- a/docs/assets/js/bootstrap-carousel.js
+++ b/docs/assets/js/bootstrap-carousel.js
@@ -1,5 +1,5 @@
/* ==========================================================
- * bootstrap-carousel.js v2.0.2
+ * bootstrap-carousel.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#carousel
* ==========================================================
* Copyright 2012 Twitter, Inc.
@@ -18,16 +18,17 @@
* ========================================================== */
-!function( $ ){
+!function ($) {
+
+ "use strict"; // jshint ;_;
- "use strict"
/* CAROUSEL CLASS DEFINITION
* ========================= */
var Carousel = function (element, options) {
this.$element = $(element)
- this.options = $.extend({}, $.fn.carousel.defaults, options)
+ this.options = options
this.options.slide && this.slide(this.options.slide)
this.options.pause == 'hover' && this.$element
.on('mouseenter', $.proxy(this.pause, this))
@@ -36,8 +37,11 @@
Carousel.prototype = {
- cycle: function () {
- this.interval = setInterval($.proxy(this.next, this), this.options.interval)
+ cycle: function (e) {
+ if (!e) this.paused = false
+ this.options.interval
+ && !this.paused
+ && (this.interval = setInterval($.proxy(this.next, this), this.options.interval))
return this
}
@@ -62,7 +66,8 @@
return this.slide(pos > activePos ? 'next' : 'prev', $(children[pos]))
}
- , pause: function () {
+ , pause: function (e) {
+ if (!e) this.paused = true
clearInterval(this.interval)
this.interval = null
return this
@@ -85,6 +90,7 @@
, direction = type == 'next' ? 'left' : 'right'
, fallback = type == 'next' ? 'first' : 'last'
, that = this
+ , e = $.Event('slide')
this.sliding = true
@@ -94,24 +100,26 @@
if ($next.hasClass('active')) return
- if (!$.support.transition && this.$element.hasClass('slide')) {
- this.$element.trigger('slide')
- $active.removeClass('active')
- $next.addClass('active')
- this.sliding = false
- this.$element.trigger('slid')
- } else {
+ if ($.support.transition && this.$element.hasClass('slide')) {
+ this.$element.trigger(e)
+ if (e.isDefaultPrevented()) return
$next.addClass(type)
$next[0].offsetWidth // force reflow
$active.addClass(direction)
$next.addClass(direction)
- this.$element.trigger('slide')
this.$element.one($.support.transition.end, function () {
$next.removeClass([type, direction].join(' ')).addClass('active')
$active.removeClass(['active', direction].join(' '))
that.sliding = false
setTimeout(function () { that.$element.trigger('slid') }, 0)
})
+ } else {
+ this.$element.trigger(e)
+ if (e.isDefaultPrevented()) return
+ $active.removeClass('active')
+ $next.addClass('active')
+ this.sliding = false
+ this.$element.trigger('slid')
}
isCycling && this.cycle()
@@ -125,15 +133,15 @@
/* CAROUSEL PLUGIN DEFINITION
* ========================== */
- $.fn.carousel = function ( option ) {
+ $.fn.carousel = function (option) {
return this.each(function () {
var $this = $(this)
, data = $this.data('carousel')
- , options = typeof option == 'object' && option
+ , options = $.extend({}, $.fn.carousel.defaults, typeof option == 'object' && option)
if (!data) $this.data('carousel', (data = new Carousel(this, options)))
if (typeof option == 'number') data.to(option)
else if (typeof option == 'string' || (option = options.slide)) data[option]()
- else data.cycle()
+ else if (options.interval) data.cycle()
})
}
@@ -158,4 +166,4 @@
})
})
-}( window.jQuery ); \ No newline at end of file
+}(window.jQuery); \ No newline at end of file
diff --git a/docs/assets/js/bootstrap-collapse.js b/docs/assets/js/bootstrap-collapse.js
index 9a364468b..4cd412c73 100644
--- a/docs/assets/js/bootstrap-collapse.js
+++ b/docs/assets/js/bootstrap-collapse.js
@@ -1,5 +1,5 @@
/* =============================================================
- * bootstrap-collapse.js v2.0.2
+ * bootstrap-collapse.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#collapse
* =============================================================
* Copyright 2012 Twitter, Inc.
@@ -17,16 +17,21 @@
* limitations under the License.
* ============================================================ */
-!function( $ ){
- "use strict"
+!function ($) {
- var Collapse = function ( element, options ) {
- this.$element = $(element)
+ "use strict"; // jshint ;_;
+
+
+ /* COLLAPSE PUBLIC CLASS DEFINITION
+ * ================================ */
+
+ var Collapse = function (element, options) {
+ this.$element = $(element)
this.options = $.extend({}, $.fn.collapse.defaults, options)
- if (this.options["parent"]) {
- this.$parent = $(this.options["parent"])
+ if (this.options.parent) {
+ this.$parent = $(this.options.parent)
}
this.options.toggle && this.toggle()
@@ -42,31 +47,39 @@
}
, show: function () {
- var dimension = this.dimension()
- , scroll = $.camelCase(['scroll', dimension].join('-'))
- , actives = this.$parent && this.$parent.find('.in')
+ var dimension
+ , scroll
+ , actives
, hasData
+ if (this.transitioning) return
+
+ dimension = this.dimension()
+ scroll = $.camelCase(['scroll', dimension].join('-'))
+ actives = this.$parent && this.$parent.find('> .accordion-group > .in')
+
if (actives && actives.length) {
hasData = actives.data('collapse')
+ if (hasData && hasData.transitioning) return
actives.collapse('hide')
hasData || actives.data('collapse', null)
}
this.$element[dimension](0)
- this.transition('addClass', 'show', 'shown')
+ this.transition('addClass', $.Event('show'), 'shown')
this.$element[dimension](this.$element[0][scroll])
-
}
, hide: function () {
- var dimension = this.dimension()
+ var dimension
+ if (this.transitioning) return
+ dimension = this.dimension()
this.reset(this.$element[dimension]())
- this.transition('removeClass', 'hide', 'hidden')
+ this.transition('removeClass', $.Event('hide'), 'hidden')
this.$element[dimension](0)
}
- , reset: function ( size ) {
+ , reset: function (size) {
var dimension = this.dimension()
this.$element
@@ -74,37 +87,43 @@
[dimension](size || 'auto')
[0].offsetWidth
- this.$element[size ? 'addClass' : 'removeClass']('collapse')
+ this.$element[size !== null ? 'addClass' : 'removeClass']('collapse')
return this
}
- , transition: function ( method, startEvent, completeEvent ) {
+ , transition: function (method, startEvent, completeEvent) {
var that = this
, complete = function () {
if (startEvent == 'show') that.reset()
+ that.transitioning = 0
that.$element.trigger(completeEvent)
}
- this.$element
- .trigger(startEvent)
- [method]('in')
+ this.$element.trigger(startEvent)
+
+ if (startEvent.isDefaultPrevented()) return
+
+ this.transitioning = 1
+
+ this.$element[method]('in')
$.support.transition && this.$element.hasClass('collapse') ?
this.$element.one($.support.transition.end, complete) :
complete()
- }
+ }
, toggle: function () {
this[this.$element.hasClass('in') ? 'hide' : 'show']()
- }
+ }
}
- /* COLLAPSIBLE PLUGIN DEFINITION
+
+ /* COLLAPSIBLE PLUGIN DEFINITION
* ============================== */
- $.fn.collapse = function ( option ) {
+ $.fn.collapse = function (option) {
return this.each(function () {
var $this = $(this)
, data = $this.data('collapse')
@@ -135,4 +154,4 @@
})
})
-}( window.jQuery ); \ No newline at end of file
+}(window.jQuery); \ No newline at end of file
diff --git a/docs/assets/js/bootstrap-dropdown.js b/docs/assets/js/bootstrap-dropdown.js
index 54b61c5e9..ec0588dc1 100644
--- a/docs/assets/js/bootstrap-dropdown.js
+++ b/docs/assets/js/bootstrap-dropdown.js
@@ -1,5 +1,5 @@
/* ============================================================
- * bootstrap-dropdown.js v2.0.2
+ * bootstrap-dropdown.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#dropdowns
* ============================================================
* Copyright 2012 Twitter, Inc.
@@ -18,15 +18,16 @@
* ============================================================ */
-!function( $ ){
+!function ($) {
+
+ "use strict"; // jshint ;_;
- "use strict"
/* DROPDOWN CLASS DEFINITION
* ========================= */
var toggle = '[data-toggle="dropdown"]'
- , Dropdown = function ( element ) {
+ , Dropdown = function (element) {
var $el = $(element).on('click.dropdown.data-api', this.toggle)
$('html').on('click.dropdown.data-api', function () {
$el.parent().removeClass('open')
@@ -37,12 +38,16 @@
constructor: Dropdown
- , toggle: function ( e ) {
+ , toggle: function (e) {
var $this = $(this)
- , selector = $this.attr('data-target')
, $parent
+ , selector
, isActive
+ if ($this.is('.disabled, :disabled')) return
+
+ selector = $this.attr('data-target')
+
if (!selector) {
selector = $this.attr('href')
selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
@@ -54,7 +59,8 @@
isActive = $parent.hasClass('open')
clearMenus()
- !isActive && $parent.toggleClass('open')
+
+ if (!isActive) $parent.toggleClass('open')
return false
}
@@ -69,7 +75,7 @@
/* DROPDOWN PLUGIN DEFINITION
* ========================== */
- $.fn.dropdown = function ( option ) {
+ $.fn.dropdown = function (option) {
return this.each(function () {
var $this = $(this)
, data = $this.data('dropdown')
@@ -86,7 +92,9 @@
$(function () {
$('html').on('click.dropdown.data-api', clearMenus)
- $('body').on('click.dropdown.data-api', toggle, Dropdown.prototype.toggle)
+ $('body')
+ .on('click.dropdown', '.dropdown form', function (e) { e.stopPropagation() })
+ .on('click.dropdown.data-api', toggle, Dropdown.prototype.toggle)
})
-}( window.jQuery ); \ No newline at end of file
+}(window.jQuery); \ No newline at end of file
diff --git a/docs/assets/js/bootstrap-modal.js b/docs/assets/js/bootstrap-modal.js
index e92970627..c831de6b6 100644
--- a/docs/assets/js/bootstrap-modal.js
+++ b/docs/assets/js/bootstrap-modal.js
@@ -1,5 +1,5 @@
/* =========================================================
- * bootstrap-modal.js v2.0.2
+ * bootstrap-modal.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#modals
* =========================================================
* Copyright 2012 Twitter, Inc.
@@ -18,14 +18,15 @@
* ========================================================= */
-!function( $ ){
+!function ($) {
+
+ "use strict"; // jshint ;_;
- "use strict"
/* MODAL CLASS DEFINITION
* ====================== */
- var Modal = function ( content, options ) {
+ var Modal = function (content, options) {
this.options = options
this.$element = $(content)
.delegate('[data-dismiss="modal"]', 'click.dismiss.modal', $.proxy(this.hide, this))
@@ -41,19 +42,23 @@
, show: function () {
var that = this
+ , e = $.Event('show')
+
+ this.$element.trigger(e)
- if (this.isShown) return
+ if (this.isShown || e.isDefaultPrevented()) return
$('body').addClass('modal-open')
this.isShown = true
- this.$element.trigger('show')
escape.call(this)
backdrop.call(this, function () {
var transition = $.support.transition && that.$element.hasClass('fade')
- !that.$element.parent().length && that.$element.appendTo(document.body) //don't move modals dom position
+ if (!that.$element.parent().length) {
+ that.$element.appendTo(document.body) //don't move modals dom position
+ }
that.$element
.show()
@@ -71,21 +76,24 @@
})
}
- , hide: function ( e ) {
+ , hide: function (e) {
e && e.preventDefault()
- if (!this.isShown) return
-
var that = this
+
+ e = $.Event('hide')
+
+ this.$element.trigger(e)
+
+ if (!this.isShown || e.isDefaultPrevented()) return
+
this.isShown = false
$('body').removeClass('modal-open')
escape.call(this)
- this.$element
- .trigger('hide')
- .removeClass('in')
+ this.$element.removeClass('in')
$.support.transition && this.$element.hasClass('fade') ?
hideWithTransition.call(this) :
@@ -111,7 +119,7 @@
})
}
- function hideModal( that ) {
+ function hideModal(that) {
this.$element
.hide()
.trigger('hidden')
@@ -119,7 +127,7 @@
backdrop.call(this)
}
- function backdrop( callback ) {
+ function backdrop(callback) {
var that = this
, animate = this.$element.hasClass('fade') ? 'fade' : ''
@@ -173,7 +181,7 @@
/* MODAL PLUGIN DEFINITION
* ======================= */
- $.fn.modal = function ( option ) {
+ $.fn.modal = function (option) {
return this.each(function () {
var $this = $(this)
, data = $this.data('modal')
@@ -207,4 +215,4 @@
})
})
-}( window.jQuery ); \ No newline at end of file
+}(window.jQuery); \ No newline at end of file
diff --git a/docs/assets/js/bootstrap-popover.js b/docs/assets/js/bootstrap-popover.js
index e1aa5ac39..d5ecfa920 100644
--- a/docs/assets/js/bootstrap-popover.js
+++ b/docs/assets/js/bootstrap-popover.js
@@ -1,5 +1,5 @@
/* ===========================================================
- * bootstrap-popover.js v2.0.2
+ * bootstrap-popover.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#popovers
* ===========================================================
* Copyright 2012 Twitter, Inc.
@@ -18,14 +18,19 @@
* =========================================================== */
-!function( $ ) {
+!function ($) {
- "use strict"
+ "use strict"; // jshint ;_;
+
+
+ /* POPOVER PUBLIC CLASS DEFINITION
+ * =============================== */
var Popover = function ( element, options ) {
this.init('popover', element, options)
}
+
/* NOTE: POPOVER EXTENDS BOOTSTRAP-TOOLTIP.js
========================================== */
@@ -38,8 +43,8 @@
, title = this.getTitle()
, content = this.getContent()
- $tip.find('.popover-title')[ $.type(title) == 'object' ? 'append' : 'html' ](title)
- $tip.find('.popover-content > *')[ $.type(content) == 'object' ? 'append' : 'html' ](content)
+ $tip.find('.popover-title')[this.isHTML(title) ? 'html' : 'text'](title)
+ $tip.find('.popover-content > *')[this.isHTML(content) ? 'html' : 'text'](content)
$tip.removeClass('fade top bottom left right in')
}
@@ -56,12 +61,10 @@
content = $e.attr('data-content')
|| (typeof o.content == 'function' ? o.content.call($e[0]) : o.content)
- content = content.toString().replace(/(^\s*|\s*$)/, "")
-
return content
}
- , tip: function() {
+ , tip: function () {
if (!this.$tip) {
this.$tip = $(this.options.template)
}
@@ -74,7 +77,7 @@
/* POPOVER PLUGIN DEFINITION
* ======================= */
- $.fn.popover = function ( option ) {
+ $.fn.popover = function (option) {
return this.each(function () {
var $this = $(this)
, data = $this.data('popover')
@@ -92,4 +95,4 @@
, template: '<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'
})
-}( window.jQuery ); \ No newline at end of file
+}(window.jQuery); \ No newline at end of file
diff --git a/docs/assets/js/bootstrap-scrollspy.js b/docs/assets/js/bootstrap-scrollspy.js
index ea29f2f86..f6a24b003 100644
--- a/docs/assets/js/bootstrap-scrollspy.js
+++ b/docs/assets/js/bootstrap-scrollspy.js
@@ -1,5 +1,5 @@
/* =============================================================
- * bootstrap-scrollspy.js v2.0.2
+ * bootstrap-scrollspy.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#scrollspy
* =============================================================
* Copyright 2012 Twitter, Inc.
@@ -17,9 +17,11 @@
* limitations under the License.
* ============================================================== */
-!function ( $ ) {
- "use strict"
+!function ($) {
+
+ "use strict"; // jshint ;_;
+
/* SCROLLSPY CLASS DEFINITION
* ========================== */
@@ -43,25 +45,43 @@
constructor: ScrollSpy
, refresh: function () {
- this.targets = this.$body
+ var self = this
+ , $targets
+
+ this.offsets = $([])
+ this.targets = $([])
+
+ $targets = this.$body
.find(this.selector)
.map(function () {
- var href = $(this).attr('href')
- return /^#\w/.test(href) && $(href).length ? href : null
+ var $el = $(this)
+ , href = $el.data('target') || $el.attr('href')
+ , $href = /^#\w/.test(href) && $(href)
+ return ( $href
+ && href.length
+ && [[ $href.position().top, href ]] ) || null
+ })
+ .sort(function (a, b) { return a[0] - b[0] })
+ .each(function () {
+ self.offsets.push(this[0])
+ self.targets.push(this[1])
})
-
- this.offsets = $.map(this.targets, function (id) {
- return $(id).position().top
- })
}
, process: function () {
var scrollTop = this.$scrollElement.scrollTop() + this.options.offset
+ , scrollHeight = this.$scrollElement[0].scrollHeight || this.$body[0].scrollHeight
+ , maxScroll = scrollHeight - this.$scrollElement.height()
, offsets = this.offsets
, targets = this.targets
, activeTarget = this.activeTarget
, i
+ if (scrollTop >= maxScroll) {
+ return activeTarget != (i = targets.last()[0])
+ && this.activate ( i )
+ }
+
for (i = offsets.length; i--;) {
activeTarget != targets[i]
&& scrollTop >= offsets[i]
@@ -72,21 +92,27 @@
, activate: function (target) {
var active
+ , selector
this.activeTarget = target
- this.$body
- .find(this.selector).parent('.active')
+ $(this.selector)
+ .parent('.active')
.removeClass('active')
- active = this.$body
- .find(this.selector + '[href="' + target + '"]')
+ selector = this.selector
+ + '[data-target="' + target + '"],'
+ + this.selector + '[href="' + target + '"]'
+
+ active = $(selector)
.parent('li')
.addClass('active')
- if ( active.parent('.dropdown-menu') ) {
- active.closest('li.dropdown').addClass('active')
+ if (active.parent('.dropdown-menu')) {
+ active = active.closest('li.dropdown').addClass('active')
}
+
+ active.trigger('activate')
}
}
@@ -122,4 +148,4 @@
})
})
-}( window.jQuery ); \ No newline at end of file
+}(window.jQuery); \ No newline at end of file
diff --git a/docs/assets/js/bootstrap-tab.js b/docs/assets/js/bootstrap-tab.js
index b3938f671..88641de86 100644
--- a/docs/assets/js/bootstrap-tab.js
+++ b/docs/assets/js/bootstrap-tab.js
@@ -1,5 +1,5 @@
/* ========================================================
- * bootstrap-tab.js v2.0.2
+ * bootstrap-tab.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#tabs
* ========================================================
* Copyright 2012 Twitter, Inc.
@@ -18,9 +18,10 @@
* ======================================================== */
-!function( $ ){
+!function ($) {
+
+ "use strict"; // jshint ;_;
- "use strict"
/* TAB CLASS DEFINITION
* ==================== */
@@ -39,6 +40,7 @@
, selector = $this.attr('data-target')
, previous
, $target
+ , e
if (!selector) {
selector = $this.attr('href')
@@ -49,11 +51,14 @@
previous = $ul.find('.active a').last()[0]
- $this.trigger({
- type: 'show'
- , relatedTarget: previous
+ e = $.Event('show', {
+ relatedTarget: previous
})
+ $this.trigger(e)
+
+ if (e.isDefaultPrevented()) return
+
$target = $(selector)
this.activate($this.parent('li'), $ul)
@@ -127,4 +132,4 @@
})
})
-}( window.jQuery ); \ No newline at end of file
+}(window.jQuery); \ No newline at end of file
diff --git a/docs/assets/js/bootstrap-tooltip.js b/docs/assets/js/bootstrap-tooltip.js
index 49b5f7286..577ead48b 100644
--- a/docs/assets/js/bootstrap-tooltip.js
+++ b/docs/assets/js/bootstrap-tooltip.js
@@ -1,5 +1,5 @@
/* ===========================================================
- * bootstrap-tooltip.js v2.0.2
+ * bootstrap-tooltip.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#tooltips
* Inspired by the original jQuery.tipsy by Jason Frame
* ===========================================================
@@ -18,14 +18,16 @@
* limitations under the License.
* ========================================================== */
-!function( $ ) {
- "use strict"
+!function ($) {
+
+ "use strict"; // jshint ;_;
+
/* TOOLTIP PUBLIC CLASS DEFINITION
* =============================== */
- var Tooltip = function ( element, options ) {
+ var Tooltip = function (element, options) {
this.init('tooltip', element, options)
}
@@ -33,7 +35,7 @@
constructor: Tooltip
- , init: function ( type, element, options ) {
+ , init: function (type, element, options) {
var eventIn
, eventOut
@@ -54,7 +56,7 @@
this.fixTitle()
}
- , getOptions: function ( options ) {
+ , getOptions: function (options) {
options = $.extend({}, $.fn[this.type].defaults, options, this.$element.data())
if (options.delay && typeof options.delay == 'number') {
@@ -67,34 +69,28 @@
return options
}
- , enter: function ( e ) {
+ , enter: function (e) {
var self = $(e.currentTarget)[this.type](this._options).data(this.type)
- if (!self.options.delay || !self.options.delay.show) {
- self.show()
- } else {
- self.hoverState = 'in'
- setTimeout(function() {
- if (self.hoverState == 'in') {
- self.show()
- }
- }, self.options.delay.show)
- }
+ if (!self.options.delay || !self.options.delay.show) return self.show()
+
+ clearTimeout(this.timeout)
+ self.hoverState = 'in'
+ this.timeout = setTimeout(function() {
+ if (self.hoverState == 'in') self.show()
+ }, self.options.delay.show)
}
- , leave: function ( e ) {
+ , leave: function (e) {
var self = $(e.currentTarget)[this.type](this._options).data(this.type)
- if (!self.options.delay || !self.options.delay.hide) {
- self.hide()
- } else {
- self.hoverState = 'out'
- setTimeout(function() {
- if (self.hoverState == 'out') {
- self.hide()
- }
- }, self.options.delay.hide)
- }
+ if (!self.options.delay || !self.options.delay.hide) return self.hide()
+
+ clearTimeout(this.timeout)
+ self.hoverState = 'out'
+ this.timeout = setTimeout(function() {
+ if (self.hoverState == 'out') self.hide()
+ }, self.options.delay.hide)
}
, show: function () {
@@ -152,9 +148,20 @@
}
}
+ , isHTML: function(text) {
+ // html string detection logic adapted from jQuery
+ return typeof text != 'string'
+ || ( text.charAt(0) === "<"
+ && text.charAt( text.length - 1 ) === ">"
+ && text.length >= 3
+ ) || /^(?:[^<]*<[\w\W]+>[^>]*$)/.exec(text)
+ }
+
, setContent: function () {
var $tip = this.tip()
- $tip.find('.tooltip-inner').html(this.getTitle())
+ , title = this.getTitle()
+
+ $tip.find('.tooltip-inner')[this.isHTML(title) ? 'html' : 'text'](title)
$tip.removeClass('fade in top bottom left right')
}
@@ -206,8 +213,6 @@
title = $e.attr('data-original-title')
|| (typeof o.title == 'function' ? o.title.call($e[0]) : o.title)
- title = (title || '').toString().replace(/(^\s*|\s*$)/, "")
-
return title
}
@@ -259,12 +264,12 @@
$.fn.tooltip.defaults = {
animation: true
- , delay: 0
- , selector: false
, placement: 'top'
+ , selector: false
+ , template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'
, trigger: 'hover'
, title: ''
- , template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'
+ , delay: 0
}
-}( window.jQuery ); \ No newline at end of file
+}(window.jQuery); \ No newline at end of file
diff --git a/docs/assets/js/bootstrap-transition.js b/docs/assets/js/bootstrap-transition.js
index f5226f96d..7e29b2fd0 100644
--- a/docs/assets/js/bootstrap-transition.js
+++ b/docs/assets/js/bootstrap-transition.js
@@ -1,5 +1,5 @@
/* ===================================================
- * bootstrap-transition.js v2.0.2
+ * bootstrap-transition.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#transitions
* ===================================================
* Copyright 2012 Twitter, Inc.
@@ -17,35 +17,45 @@
* limitations under the License.
* ========================================================== */
-!function( $ ) {
+
+!function ($) {
$(function () {
- "use strict"
+ "use strict"; // jshint ;_;
+
- /* CSS TRANSITION SUPPORT (https://gist.github.com/373874)
+ /* CSS TRANSITION SUPPORT (http://www.modernizr.com/)
* ======================================================= */
$.support.transition = (function () {
- var thisBody = document.body || document.documentElement
- , thisStyle = thisBody.style
- , support = thisStyle.transition !== undefined || thisStyle.WebkitTransition !== undefined || thisStyle.MozTransition !== undefined || thisStyle.MsTransition !== undefined || thisStyle.OTransition !== undefined
-
- return support && {
- end: (function () {
- var transitionEnd = "TransitionEnd"
- if ( $.browser.webkit ) {
- transitionEnd = "webkitTransitionEnd"
- } else if ( $.browser.mozilla ) {
- transitionEnd = "transitionend"
- } else if ( $.browser.opera ) {
- transitionEnd = "oTransitionEnd"
+
+ var transitionEnd = (function () {
+
+ var el = document.createElement('bootstrap')
+ , transEndEventNames = {
+ 'WebkitTransition' : 'webkitTransitionEnd'
+ , 'MozTransition' : 'transitionend'
+ , 'OTransition' : 'oTransitionEnd'
+ , 'msTransition' : 'MSTransitionEnd'
+ , 'transition' : 'transitionend'
+ }
+ , name
+
+ for (name in transEndEventNames){
+ if (el.style[name] !== undefined) {
+ return transEndEventNames[name]
}
- return transitionEnd
- }())
+ }
+
+ }())
+
+ return transitionEnd && {
+ end: transitionEnd
}
+
})()
})
-}( window.jQuery ); \ No newline at end of file
+}(window.jQuery); \ No newline at end of file
diff --git a/docs/assets/js/bootstrap-typeahead.js b/docs/assets/js/bootstrap-typeahead.js
index dc2f88221..ada0526f9 100644
--- a/docs/assets/js/bootstrap-typeahead.js
+++ b/docs/assets/js/bootstrap-typeahead.js
@@ -1,5 +1,5 @@
/* =============================================================
- * bootstrap-typeahead.js v2.0.2
+ * bootstrap-typeahead.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#typeahead
* =============================================================
* Copyright 2012 Twitter, Inc.
@@ -17,16 +17,22 @@
* limitations under the License.
* ============================================================ */
-!function( $ ){
- "use strict"
+!function($){
- var Typeahead = function ( element, options ) {
+ "use strict"; // jshint ;_;
+
+
+ /* TYPEAHEAD PUBLIC CLASS DEFINITION
+ * ================================= */
+
+ var Typeahead = function (element, options) {
this.$element = $(element)
this.options = $.extend({}, $.fn.typeahead.defaults, options)
this.matcher = this.options.matcher || this.matcher
this.sorter = this.options.sorter || this.sorter
this.highlighter = this.options.highlighter || this.highlighter
+ this.updater = this.options.updater || this.updater
this.$menu = $(this.options.menu).appendTo('body')
this.source = this.options.source
this.shown = false
@@ -39,13 +45,18 @@
, select: function () {
var val = this.$menu.find('.active').attr('data-value')
- this.$element.val(val)
- this.$element.change();
+ this.$element
+ .val(this.updater(val))
+ .change()
return this.hide()
}
+ , updater: function (item) {
+ return item
+ }
+
, show: function () {
- var pos = $.extend({}, this.$element.offset(), {
+ var pos = $.extend({}, this.$element.position(), {
height: this.$element[0].offsetHeight
})
@@ -77,7 +88,7 @@
}
items = $.grep(this.source, function (item) {
- if (that.matcher(item)) return item
+ return that.matcher(item)
})
items = this.sorter(items)
@@ -109,7 +120,8 @@
}
, highlighter: function (item) {
- return item.replace(new RegExp('(' + this.query + ')', 'ig'), function ($1, match) {
+ var query = this.query.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, '\\$&')
+ return item.replace(new RegExp('(' + query + ')', 'ig'), function ($1, match) {
return '<strong>' + match + '</strong>'
})
}
@@ -201,11 +213,13 @@
break
case 38: // up arrow
+ if (e.type != 'keydown') break
e.preventDefault()
this.prev()
break
case 40: // down arrow
+ if (e.type != 'keydown') break
e.preventDefault()
this.next()
break
@@ -236,7 +250,7 @@
/* TYPEAHEAD PLUGIN DEFINITION
* =========================== */
- $.fn.typeahead = function ( option ) {
+ $.fn.typeahead = function (option) {
return this.each(function () {
var $this = $(this)
, data = $this.data('typeahead')
@@ -268,4 +282,4 @@
})
})
-}( window.jQuery ); \ No newline at end of file
+}(window.jQuery); \ No newline at end of file
diff --git a/docs/assets/js/bootstrap.js b/docs/assets/js/bootstrap.js
index ca868671c..6944ade95 100644
--- a/docs/assets/js/bootstrap.js
+++ b/docs/assets/js/bootstrap.js
@@ -1,5 +1,5 @@
/* ===================================================
- * bootstrap-transition.js v2.0.2
+ * bootstrap-transition.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#transitions
* ===================================================
* Copyright 2012 Twitter, Inc.
@@ -17,39 +17,49 @@
* limitations under the License.
* ========================================================== */
-!function( $ ) {
+
+!function ($) {
$(function () {
- "use strict"
+ "use strict"; // jshint ;_;
+
- /* CSS TRANSITION SUPPORT (https://gist.github.com/373874)
+ /* CSS TRANSITION SUPPORT (http://www.modernizr.com/)
* ======================================================= */
$.support.transition = (function () {
- var thisBody = document.body || document.documentElement
- , thisStyle = thisBody.style
- , support = thisStyle.transition !== undefined || thisStyle.WebkitTransition !== undefined || thisStyle.MozTransition !== undefined || thisStyle.MsTransition !== undefined || thisStyle.OTransition !== undefined
-
- return support && {
- end: (function () {
- var transitionEnd = "TransitionEnd"
- if ( $.browser.webkit ) {
- transitionEnd = "webkitTransitionEnd"
- } else if ( $.browser.mozilla ) {
- transitionEnd = "transitionend"
- } else if ( $.browser.opera ) {
- transitionEnd = "oTransitionEnd"
+
+ var transitionEnd = (function () {
+
+ var el = document.createElement('bootstrap')
+ , transEndEventNames = {
+ 'WebkitTransition' : 'webkitTransitionEnd'
+ , 'MozTransition' : 'transitionend'
+ , 'OTransition' : 'oTransitionEnd'
+ , 'msTransition' : 'MSTransitionEnd'
+ , 'transition' : 'transitionend'
+ }
+ , name
+
+ for (name in transEndEventNames){
+ if (el.style[name] !== undefined) {
+ return transEndEventNames[name]
}
- return transitionEnd
- }())
+ }
+
+ }())
+
+ return transitionEnd && {
+ end: transitionEnd
}
+
})()
})
-}( window.jQuery );/* ==========================================================
- * bootstrap-alert.js v2.0.2
+}(window.jQuery);/* ==========================================================
+ * bootstrap-alert.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#alerts
* ==========================================================
* Copyright 2012 Twitter, Inc.
@@ -68,61 +78,57 @@
* ========================================================== */
-!function( $ ){
+!function ($) {
+
+ "use strict"; // jshint ;_;
- "use strict"
/* ALERT CLASS DEFINITION
* ====================== */
var dismiss = '[data-dismiss="alert"]'
- , Alert = function ( el ) {
+ , Alert = function (el) {
$(el).on('click', dismiss, this.close)
}
- Alert.prototype = {
+ Alert.prototype.close = function (e) {
+ var $this = $(this)
+ , selector = $this.attr('data-target')
+ , $parent
- constructor: Alert
+ if (!selector) {
+ selector = $this.attr('href')
+ selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
+ }
- , close: function ( e ) {
- var $this = $(this)
- , selector = $this.attr('data-target')
- , $parent
+ $parent = $(selector)
- if (!selector) {
- selector = $this.attr('href')
- selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
- }
+ e && e.preventDefault()
- $parent = $(selector)
- $parent.trigger('close')
-
- e && e.preventDefault()
+ $parent.length || ($parent = $this.hasClass('alert') ? $this : $this.parent())
- $parent.length || ($parent = $this.hasClass('alert') ? $this : $this.parent())
+ $parent.trigger(e = $.Event('close'))
- $parent
- .trigger('close')
- .removeClass('in')
+ if (e.isDefaultPrevented()) return
- function removeElement() {
- $parent
- .trigger('closed')
- .remove()
- }
+ $parent.removeClass('in')
- $.support.transition && $parent.hasClass('fade') ?
- $parent.on($.support.transition.end, removeElement) :
- removeElement()
+ function removeElement() {
+ $parent
+ .trigger('closed')
+ .remove()
}
+ $.support.transition && $parent.hasClass('fade') ?
+ $parent.on($.support.transition.end, removeElement) :
+ removeElement()
}
/* ALERT PLUGIN DEFINITION
* ======================= */
- $.fn.alert = function ( option ) {
+ $.fn.alert = function (option) {
return this.each(function () {
var $this = $(this)
, data = $this.data('alert')
@@ -141,8 +147,8 @@
$('body').on('click.alert.data-api', dismiss, Alert.prototype.close)
})
-}( window.jQuery );/* ============================================================
- * bootstrap-button.js v2.0.2
+}(window.jQuery);/* ============================================================
+ * bootstrap-button.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#buttons
* ============================================================
* Copyright 2012 Twitter, Inc.
@@ -160,58 +166,54 @@
* limitations under the License.
* ============================================================ */
-!function( $ ){
- "use strict"
+!function ($) {
+
+ "use strict"; // jshint ;_;
+
/* BUTTON PUBLIC CLASS DEFINITION
* ============================== */
- var Button = function ( element, options ) {
+ var Button = function (element, options) {
this.$element = $(element)
this.options = $.extend({}, $.fn.button.defaults, options)
}
- Button.prototype = {
+ Button.prototype.setState = function (state) {
+ var d = 'disabled'
+ , $el = this.$element
+ , data = $el.data()
+ , val = $el.is('input') ? 'val' : 'html'
- constructor: Button
+ state = state + 'Text'
+ data.resetText || $el.data('resetText', $el[val]())
- , setState: function ( state ) {
- var d = 'disabled'
- , $el = this.$element
- , data = $el.data()
- , val = $el.is('input') ? 'val' : 'html'
+ $el[val](data[state] || this.options[state])
- state = state + 'Text'
- data.resetText || $el.data('resetText', $el[val]())
-
- $el[val](data[state] || this.options[state])
+ // push to event loop to allow forms to submit
+ setTimeout(function () {
+ state == 'loadingText' ?
+ $el.addClass(d).attr(d, d) :
+ $el.removeClass(d).removeAttr(d)
+ }, 0)
+ }
- // push to event loop to allow forms to submit
- setTimeout(function () {
- state == 'loadingText' ?
- $el.addClass(d).attr(d, d) :
- $el.removeClass(d).removeAttr(d)
- }, 0)
- }
+ Button.prototype.toggle = function () {
+ var $parent = this.$element.parent('[data-toggle="buttons-radio"]')
- , toggle: function () {
- var $parent = this.$element.parent('[data-toggle="buttons-radio"]')
-
- $parent && $parent
- .find('.active')
- .removeClass('active')
-
- this.$element.toggleClass('active')
- }
+ $parent && $parent
+ .find('.active')
+ .removeClass('active')
+ this.$element.toggleClass('active')
}
/* BUTTON PLUGIN DEFINITION
* ======================== */
- $.fn.button = function ( option ) {
+ $.fn.button = function (option) {
return this.each(function () {
var $this = $(this)
, data = $this.data('button')
@@ -240,8 +242,8 @@
})
})
-}( window.jQuery );/* ==========================================================
- * bootstrap-carousel.js v2.0.2
+}(window.jQuery);/* ==========================================================
+ * bootstrap-carousel.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#carousel
* ==========================================================
* Copyright 2012 Twitter, Inc.
@@ -260,16 +262,17 @@
* ========================================================== */
-!function( $ ){
+!function ($) {
+
+ "use strict"; // jshint ;_;
- "use strict"
/* CAROUSEL CLASS DEFINITION
* ========================= */
var Carousel = function (element, options) {
this.$element = $(element)
- this.options = $.extend({}, $.fn.carousel.defaults, options)
+ this.options = options
this.options.slide && this.slide(this.options.slide)
this.options.pause == 'hover' && this.$element
.on('mouseenter', $.proxy(this.pause, this))
@@ -278,8 +281,11 @@
Carousel.prototype = {
- cycle: function () {
- this.interval = setInterval($.proxy(this.next, this), this.options.interval)
+ cycle: function (e) {
+ if (!e) this.paused = false
+ this.options.interval
+ && !this.paused
+ && (this.interval = setInterval($.proxy(this.next, this), this.options.interval))
return this
}
@@ -304,7 +310,8 @@
return this.slide(pos > activePos ? 'next' : 'prev', $(children[pos]))
}
- , pause: function () {
+ , pause: function (e) {
+ if (!e) this.paused = true
clearInterval(this.interval)
this.interval = null
return this
@@ -327,6 +334,7 @@
, direction = type == 'next' ? 'left' : 'right'
, fallback = type == 'next' ? 'first' : 'last'
, that = this
+ , e = $.Event('slide')
this.sliding = true
@@ -336,24 +344,26 @@
if ($next.hasClass('active')) return
- if (!$.support.transition && this.$element.hasClass('slide')) {
- this.$element.trigger('slide')
- $active.removeClass('active')
- $next.addClass('active')
- this.sliding = false
- this.$element.trigger('slid')
- } else {
+ if ($.support.transition && this.$element.hasClass('slide')) {
+ this.$element.trigger(e)
+ if (e.isDefaultPrevented()) return
$next.addClass(type)
$next[0].offsetWidth // force reflow
$active.addClass(direction)
$next.addClass(direction)
- this.$element.trigger('slide')
this.$element.one($.support.transition.end, function () {
$next.removeClass([type, direction].join(' ')).addClass('active')
$active.removeClass(['active', direction].join(' '))
that.sliding = false
setTimeout(function () { that.$element.trigger('slid') }, 0)
})
+ } else {
+ this.$element.trigger(e)
+ if (e.isDefaultPrevented()) return
+ $active.removeClass('active')
+ $next.addClass('active')
+ this.sliding = false
+ this.$element.trigger('slid')
}
isCycling && this.cycle()
@@ -367,15 +377,15 @@
/* CAROUSEL PLUGIN DEFINITION
* ========================== */
- $.fn.carousel = function ( option ) {
+ $.fn.carousel = function (option) {
return this.each(function () {
var $this = $(this)
, data = $this.data('carousel')
- , options = typeof option == 'object' && option
+ , options = $.extend({}, $.fn.carousel.defaults, typeof option == 'object' && option)
if (!data) $this.data('carousel', (data = new Carousel(this, options)))
if (typeof option == 'number') data.to(option)
else if (typeof option == 'string' || (option = options.slide)) data[option]()
- else data.cycle()
+ else if (options.interval) data.cycle()
})
}
@@ -400,8 +410,8 @@
})
})
-}( window.jQuery );/* =============================================================
- * bootstrap-collapse.js v2.0.2
+}(window.jQuery);/* =============================================================
+ * bootstrap-collapse.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#collapse
* =============================================================
* Copyright 2012 Twitter, Inc.
@@ -419,16 +429,21 @@
* limitations under the License.
* ============================================================ */
-!function( $ ){
- "use strict"
+!function ($) {
+
+ "use strict"; // jshint ;_;
- var Collapse = function ( element, options ) {
- this.$element = $(element)
+
+ /* COLLAPSE PUBLIC CLASS DEFINITION
+ * ================================ */
+
+ var Collapse = function (element, options) {
+ this.$element = $(element)
this.options = $.extend({}, $.fn.collapse.defaults, options)
- if (this.options["parent"]) {
- this.$parent = $(this.options["parent"])
+ if (this.options.parent) {
+ this.$parent = $(this.options.parent)
}
this.options.toggle && this.toggle()
@@ -444,31 +459,39 @@
}
, show: function () {
- var dimension = this.dimension()
- , scroll = $.camelCase(['scroll', dimension].join('-'))
- , actives = this.$parent && this.$parent.find('.in')
+ var dimension
+ , scroll
+ , actives
, hasData
+ if (this.transitioning) return
+
+ dimension = this.dimension()
+ scroll = $.camelCase(['scroll', dimension].join('-'))
+ actives = this.$parent && this.$parent.find('> .accordion-group > .in')
+
if (actives && actives.length) {
hasData = actives.data('collapse')
+ if (hasData && hasData.transitioning) return
actives.collapse('hide')
hasData || actives.data('collapse', null)
}
this.$element[dimension](0)
- this.transition('addClass', 'show', 'shown')
+ this.transition('addClass', $.Event('show'), 'shown')
this.$element[dimension](this.$element[0][scroll])
-
}
, hide: function () {
- var dimension = this.dimension()
+ var dimension
+ if (this.transitioning) return
+ dimension = this.dimension()
this.reset(this.$element[dimension]())
- this.transition('removeClass', 'hide', 'hidden')
+ this.transition('removeClass', $.Event('hide'), 'hidden')
this.$element[dimension](0)
}
- , reset: function ( size ) {
+ , reset: function (size) {
var dimension = this.dimension()
this.$element
@@ -476,37 +499,43 @@
[dimension](size || 'auto')
[0].offsetWidth
- this.$element[size ? 'addClass' : 'removeClass']('collapse')
+ this.$element[size !== null ? 'addClass' : 'removeClass']('collapse')
return this
}
- , transition: function ( method, startEvent, completeEvent ) {
+ , transition: function (method, startEvent, completeEvent) {
var that = this
, complete = function () {
if (startEvent == 'show') that.reset()
+ that.transitioning = 0
that.$element.trigger(completeEvent)
}
- this.$element
- .trigger(startEvent)
- [method]('in')
+ this.$element.trigger(startEvent)
+
+ if (startEvent.isDefaultPrevented()) return
+
+ this.transitioning = 1
+
+ this.$element[method]('in')
$.support.transition && this.$element.hasClass('collapse') ?
this.$element.one($.support.transition.end, complete) :
complete()
- }
+ }
, toggle: function () {
this[this.$element.hasClass('in') ? 'hide' : 'show']()
- }
+ }
}
- /* COLLAPSIBLE PLUGIN DEFINITION
+
+ /* COLLAPSIBLE PLUGIN DEFINITION
* ============================== */
- $.fn.collapse = function ( option ) {
+ $.fn.collapse = function (option) {
return this.each(function () {
var $this = $(this)
, data = $this.data('collapse')
@@ -537,8 +566,8 @@
})
})
-}( window.jQuery );/* ============================================================
- * bootstrap-dropdown.js v2.0.2
+}(window.jQuery);/* ============================================================
+ * bootstrap-dropdown.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#dropdowns
* ============================================================
* Copyright 2012 Twitter, Inc.
@@ -557,15 +586,16 @@
* ============================================================ */
-!function( $ ){
+!function ($) {
+
+ "use strict"; // jshint ;_;
- "use strict"
/* DROPDOWN CLASS DEFINITION
* ========================= */
var toggle = '[data-toggle="dropdown"]'
- , Dropdown = function ( element ) {
+ , Dropdown = function (element) {
var $el = $(element).on('click.dropdown.data-api', this.toggle)
$('html').on('click.dropdown.data-api', function () {
$el.parent().removeClass('open')
@@ -576,12 +606,16 @@
constructor: Dropdown
- , toggle: function ( e ) {
+ , toggle: function (e) {
var $this = $(this)
- , selector = $this.attr('data-target')
, $parent
+ , selector
, isActive
+ if ($this.is('.disabled, :disabled')) return
+
+ selector = $this.attr('data-target')
+
if (!selector) {
selector = $this.attr('href')
selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
@@ -593,7 +627,8 @@
isActive = $parent.hasClass('open')
clearMenus()
- !isActive && $parent.toggleClass('open')
+
+ if (!isActive) $parent.toggleClass('open')
return false
}
@@ -608,7 +643,7 @@
/* DROPDOWN PLUGIN DEFINITION
* ========================== */
- $.fn.dropdown = function ( option ) {
+ $.fn.dropdown = function (option) {
return this.each(function () {
var $this = $(this)
, data = $this.data('dropdown')
@@ -625,11 +660,13 @@
$(function () {
$('html').on('click.dropdown.data-api', clearMenus)
- $('body').on('click.dropdown.data-api', toggle, Dropdown.prototype.toggle)
+ $('body')
+ .on('click.dropdown', '.dropdown form', function (e) { e.stopPropagation() })
+ .on('click.dropdown.data-api', toggle, Dropdown.prototype.toggle)
})
-}( window.jQuery );/* =========================================================
- * bootstrap-modal.js v2.0.2
+}(window.jQuery);/* =========================================================
+ * bootstrap-modal.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#modals
* =========================================================
* Copyright 2012 Twitter, Inc.
@@ -648,14 +685,15 @@
* ========================================================= */
-!function( $ ){
+!function ($) {
+
+ "use strict"; // jshint ;_;
- "use strict"
/* MODAL CLASS DEFINITION
* ====================== */
- var Modal = function ( content, options ) {
+ var Modal = function (content, options) {
this.options = options
this.$element = $(content)
.delegate('[data-dismiss="modal"]', 'click.dismiss.modal', $.proxy(this.hide, this))
@@ -671,19 +709,23 @@
, show: function () {
var that = this
+ , e = $.Event('show')
- if (this.isShown) return
+ this.$element.trigger(e)
+
+ if (this.isShown || e.isDefaultPrevented()) return
$('body').addClass('modal-open')
this.isShown = true
- this.$element.trigger('show')
escape.call(this)
backdrop.call(this, function () {
var transition = $.support.transition && that.$element.hasClass('fade')
- !that.$element.parent().length && that.$element.appendTo(document.body) //don't move modals dom position
+ if (!that.$element.parent().length) {
+ that.$element.appendTo(document.body) //don't move modals dom position
+ }
that.$element
.show()
@@ -701,21 +743,24 @@
})
}
- , hide: function ( e ) {
+ , hide: function (e) {
e && e.preventDefault()
- if (!this.isShown) return
-
var that = this
+
+ e = $.Event('hide')
+
+ this.$element.trigger(e)
+
+ if (!this.isShown || e.isDefaultPrevented()) return
+
this.isShown = false
$('body').removeClass('modal-open')
escape.call(this)
- this.$element
- .trigger('hide')
- .removeClass('in')
+ this.$element.removeClass('in')
$.support.transition && this.$element.hasClass('fade') ?
hideWithTransition.call(this) :
@@ -741,7 +786,7 @@
})
}
- function hideModal( that ) {
+ function hideModal(that) {
this.$element
.hide()
.trigger('hidden')
@@ -749,7 +794,7 @@
backdrop.call(this)
}
- function backdrop( callback ) {
+ function backdrop(callback) {
var that = this
, animate = this.$element.hasClass('fade') ? 'fade' : ''
@@ -803,7 +848,7 @@
/* MODAL PLUGIN DEFINITION
* ======================= */
- $.fn.modal = function ( option ) {
+ $.fn.modal = function (option) {
return this.each(function () {
var $this = $(this)
, data = $this.data('modal')
@@ -837,8 +882,8 @@
})
})
-}( window.jQuery );/* ===========================================================
- * bootstrap-tooltip.js v2.0.2
+}(window.jQuery);/* ===========================================================
+ * bootstrap-tooltip.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#tooltips
* Inspired by the original jQuery.tipsy by Jason Frame
* ===========================================================
@@ -857,14 +902,16 @@
* limitations under the License.
* ========================================================== */
-!function( $ ) {
- "use strict"
+!function ($) {
+
+ "use strict"; // jshint ;_;
+
/* TOOLTIP PUBLIC CLASS DEFINITION
* =============================== */
- var Tooltip = function ( element, options ) {
+ var Tooltip = function (element, options) {
this.init('tooltip', element, options)
}
@@ -872,7 +919,7 @@
constructor: Tooltip
- , init: function ( type, element, options ) {
+ , init: function (type, element, options) {
var eventIn
, eventOut
@@ -893,7 +940,7 @@
this.fixTitle()
}
- , getOptions: function ( options ) {
+ , getOptions: function (options) {
options = $.extend({}, $.fn[this.type].defaults, options, this.$element.data())
if (options.delay && typeof options.delay == 'number') {
@@ -906,34 +953,28 @@
return options
}
- , enter: function ( e ) {
+ , enter: function (e) {
var self = $(e.currentTarget)[this.type](this._options).data(this.type)
- if (!self.options.delay || !self.options.delay.show) {
- self.show()
- } else {
- self.hoverState = 'in'
- setTimeout(function() {
- if (self.hoverState == 'in') {
- self.show()
- }
- }, self.options.delay.show)
- }
+ if (!self.options.delay || !self.options.delay.show) return self.show()
+
+ clearTimeout(this.timeout)
+ self.hoverState = 'in'
+ this.timeout = setTimeout(function() {
+ if (self.hoverState == 'in') self.show()
+ }, self.options.delay.show)
}
- , leave: function ( e ) {
+ , leave: function (e) {
var self = $(e.currentTarget)[this.type](this._options).data(this.type)
- if (!self.options.delay || !self.options.delay.hide) {
- self.hide()
- } else {
- self.hoverState = 'out'
- setTimeout(function() {
- if (self.hoverState == 'out') {
- self.hide()
- }
- }, self.options.delay.hide)
- }
+ if (!self.options.delay || !self.options.delay.hide) return self.hide()
+
+ clearTimeout(this.timeout)
+ self.hoverState = 'out'
+ this.timeout = setTimeout(function() {
+ if (self.hoverState == 'out') self.hide()
+ }, self.options.delay.hide)
}
, show: function () {
@@ -991,9 +1032,20 @@
}
}
+ , isHTML: function(text) {
+ // html string detection logic adapted from jQuery
+ return typeof text != 'string'
+ || ( text.charAt(0) === "<"
+ && text.charAt( text.length - 1 ) === ">"
+ && text.length >= 3
+ ) || /^(?:[^<]*<[\w\W]+>[^>]*$)/.exec(text)
+ }
+
, setContent: function () {
var $tip = this.tip()
- $tip.find('.tooltip-inner').html(this.getTitle())
+ , title = this.getTitle()
+
+ $tip.find('.tooltip-inner')[this.isHTML(title) ? 'html' : 'text'](title)
$tip.removeClass('fade in top bottom left right')
}
@@ -1045,8 +1097,6 @@
title = $e.attr('data-original-title')
|| (typeof o.title == 'function' ? o.title.call($e[0]) : o.title)
- title = (title || '').toString().replace(/(^\s*|\s*$)/, "")
-
return title
}
@@ -1098,16 +1148,16 @@
$.fn.tooltip.defaults = {
animation: true
- , delay: 0
- , selector: false
, placement: 'top'
+ , selector: false
+ , template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'
, trigger: 'hover'
, title: ''
- , template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'
+ , delay: 0
}
-}( window.jQuery );/* ===========================================================
- * bootstrap-popover.js v2.0.2
+}(window.jQuery);/* ===========================================================
+ * bootstrap-popover.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#popovers
* ===========================================================
* Copyright 2012 Twitter, Inc.
@@ -1126,14 +1176,19 @@
* =========================================================== */
-!function( $ ) {
+!function ($) {
- "use strict"
+ "use strict"; // jshint ;_;
+
+
+ /* POPOVER PUBLIC CLASS DEFINITION
+ * =============================== */
var Popover = function ( element, options ) {
this.init('popover', element, options)
}
+
/* NOTE: POPOVER EXTENDS BOOTSTRAP-TOOLTIP.js
========================================== */
@@ -1146,8 +1201,8 @@
, title = this.getTitle()
, content = this.getContent()
- $tip.find('.popover-title')[ $.type(title) == 'object' ? 'append' : 'html' ](title)
- $tip.find('.popover-content > *')[ $.type(content) == 'object' ? 'append' : 'html' ](content)
+ $tip.find('.popover-title')[this.isHTML(title) ? 'html' : 'text'](title)
+ $tip.find('.popover-content > *')[this.isHTML(content) ? 'html' : 'text'](content)
$tip.removeClass('fade top bottom left right in')
}
@@ -1164,12 +1219,10 @@
content = $e.attr('data-content')
|| (typeof o.content == 'function' ? o.content.call($e[0]) : o.content)
- content = content.toString().replace(/(^\s*|\s*$)/, "")
-
return content
}
- , tip: function() {
+ , tip: function () {
if (!this.$tip) {
this.$tip = $(this.options.template)
}
@@ -1182,7 +1235,7 @@
/* POPOVER PLUGIN DEFINITION
* ======================= */
- $.fn.popover = function ( option ) {
+ $.fn.popover = function (option) {
return this.each(function () {
var $this = $(this)
, data = $this.data('popover')
@@ -1200,8 +1253,8 @@
, template: '<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'
})
-}( window.jQuery );/* =============================================================
- * bootstrap-scrollspy.js v2.0.2
+}(window.jQuery);/* =============================================================
+ * bootstrap-scrollspy.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#scrollspy
* =============================================================
* Copyright 2012 Twitter, Inc.
@@ -1219,9 +1272,11 @@
* limitations under the License.
* ============================================================== */
-!function ( $ ) {
- "use strict"
+!function ($) {
+
+ "use strict"; // jshint ;_;
+
/* SCROLLSPY CLASS DEFINITION
* ========================== */
@@ -1245,25 +1300,43 @@
constructor: ScrollSpy
, refresh: function () {
- this.targets = this.$body
+ var self = this
+ , $targets
+
+ this.offsets = $([])
+ this.targets = $([])
+
+ $targets = this.$body
.find(this.selector)
.map(function () {
- var href = $(this).attr('href')
- return /^#\w/.test(href) && $(href).length ? href : null
+ var $el = $(this)
+ , href = $el.data('target') || $el.attr('href')
+ , $href = /^#\w/.test(href) && $(href)
+ return ( $href
+ && href.length
+ && [[ $href.position().top, href ]] ) || null
+ })
+ .sort(function (a, b) { return a[0] - b[0] })
+ .each(function () {
+ self.offsets.push(this[0])
+ self.targets.push(this[1])
})
-
- this.offsets = $.map(this.targets, function (id) {
- return $(id).position().top
- })
}
, process: function () {
var scrollTop = this.$scrollElement.scrollTop() + this.options.offset
+ , scrollHeight = this.$scrollElement[0].scrollHeight || this.$body[0].scrollHeight
+ , maxScroll = scrollHeight - this.$scrollElement.height()
, offsets = this.offsets
, targets = this.targets
, activeTarget = this.activeTarget
, i
+ if (scrollTop >= maxScroll) {
+ return activeTarget != (i = targets.last()[0])
+ && this.activate ( i )
+ }
+
for (i = offsets.length; i--;) {
activeTarget != targets[i]
&& scrollTop >= offsets[i]
@@ -1274,21 +1347,27 @@
, activate: function (target) {
var active
+ , selector
this.activeTarget = target
- this.$body
- .find(this.selector).parent('.active')
+ $(this.selector)
+ .parent('.active')
.removeClass('active')
- active = this.$body
- .find(this.selector + '[href="' + target + '"]')
+ selector = this.selector
+ + '[data-target="' + target + '"],'
+ + this.selector + '[href="' + target + '"]'
+
+ active = $(selector)
.parent('li')
.addClass('active')
- if ( active.parent('.dropdown-menu') ) {
- active.closest('li.dropdown').addClass('active')
+ if (active.parent('.dropdown-menu')) {
+ active = active.closest('li.dropdown').addClass('active')
}
+
+ active.trigger('activate')
}
}
@@ -1324,8 +1403,8 @@
})
})
-}( window.jQuery );/* ========================================================
- * bootstrap-tab.js v2.0.2
+}(window.jQuery);/* ========================================================
+ * bootstrap-tab.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#tabs
* ========================================================
* Copyright 2012 Twitter, Inc.
@@ -1344,9 +1423,10 @@
* ======================================================== */
-!function( $ ){
+!function ($) {
+
+ "use strict"; // jshint ;_;
- "use strict"
/* TAB CLASS DEFINITION
* ==================== */
@@ -1365,6 +1445,7 @@
, selector = $this.attr('data-target')
, previous
, $target
+ , e
if (!selector) {
selector = $this.attr('href')
@@ -1375,11 +1456,14 @@
previous = $ul.find('.active a').last()[0]
- $this.trigger({
- type: 'show'
- , relatedTarget: previous
+ e = $.Event('show', {
+ relatedTarget: previous
})
+ $this.trigger(e)
+
+ if (e.isDefaultPrevented()) return
+
$target = $(selector)
this.activate($this.parent('li'), $ul)
@@ -1453,8 +1537,8 @@
})
})
-}( window.jQuery );/* =============================================================
- * bootstrap-typeahead.js v2.0.2
+}(window.jQuery);/* =============================================================
+ * bootstrap-typeahead.js v2.0.3
* http://twitter.github.com/bootstrap/javascript.html#typeahead
* =============================================================
* Copyright 2012 Twitter, Inc.
@@ -1472,16 +1556,22 @@
* limitations under the License.
* ============================================================ */
-!function( $ ){
- "use strict"
+!function($){
+
+ "use strict"; // jshint ;_;
+
+
+ /* TYPEAHEAD PUBLIC CLASS DEFINITION
+ * ================================= */
- var Typeahead = function ( element, options ) {
+ var Typeahead = function (element, options) {
this.$element = $(element)
this.options = $.extend({}, $.fn.typeahead.defaults, options)
this.matcher = this.options.matcher || this.matcher
this.sorter = this.options.sorter || this.sorter
this.highlighter = this.options.highlighter || this.highlighter
+ this.updater = this.options.updater || this.updater
this.$menu = $(this.options.menu).appendTo('body')
this.source = this.options.source
this.shown = false
@@ -1494,13 +1584,18 @@
, select: function () {
var val = this.$menu.find('.active').attr('data-value')
- this.$element.val(val)
- this.$element.change();
+ this.$element
+ .val(this.updater(val))
+ .change()
return this.hide()
}
+ , updater: function (item) {
+ return item
+ }
+
, show: function () {
- var pos = $.extend({}, this.$element.offset(), {
+ var pos = $.extend({}, this.$element.position(), {
height: this.$element[0].offsetHeight
})
@@ -1532,7 +1627,7 @@
}
items = $.grep(this.source, function (item) {
- if (that.matcher(item)) return item
+ return that.matcher(item)
})
items = this.sorter(items)
@@ -1564,7 +1659,8 @@
}
, highlighter: function (item) {
- return item.replace(new RegExp('(' + this.query + ')', 'ig'), function ($1, match) {
+ var query = this.query.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, '\\$&')
+ return item.replace(new RegExp('(' + query + ')', 'ig'), function ($1, match) {
return '<strong>' + match + '</strong>'
})
}
@@ -1656,11 +1752,13 @@
break
case 38: // up arrow
+ if (e.type != 'keydown') break
e.preventDefault()
this.prev()
break
case 40: // down arrow
+ if (e.type != 'keydown') break
e.preventDefault()
this.next()
break
@@ -1691,7 +1789,7 @@
/* TYPEAHEAD PLUGIN DEFINITION
* =========================== */
- $.fn.typeahead = function ( option ) {
+ $.fn.typeahead = function (option) {
return this.each(function () {
var $this = $(this)
, data = $this.data('typeahead')
@@ -1723,4 +1821,4 @@
})
})
-}( window.jQuery ); \ No newline at end of file
+}(window.jQuery); \ No newline at end of file
diff --git a/docs/assets/js/bootstrap.min.js b/docs/assets/js/bootstrap.min.js
index ffaefa691..fcfb38bc6 100644
--- a/docs/assets/js/bootstrap.min.js
+++ b/docs/assets/js/bootstrap.min.js
@@ -3,4 +3,4 @@
* Copyright 2012 Twitter, Inc.
* http://www.apache.org/licenses/LICENSE-2.0.txt
*/
-!function(a){a(function(){"use strict",a.support.transition=function(){var b=document.body||document.documentElement,c=b.style,d=c.transition!==undefined||c.WebkitTransition!==undefined||c.MozTransition!==undefined||c.MsTransition!==undefined||c.OTransition!==undefined;return d&&{end:function(){var b="TransitionEnd";return a.browser.webkit?b="webkitTransitionEnd":a.browser.mozilla?b="transitionend":a.browser.opera&&(b="oTransitionEnd"),b}()}}()})}(window.jQuery),!function(a){"use strict";var b='[data-dismiss="alert"]',c=function(c){a(c).on("click",b,this.close)};c.prototype={constructor:c,close:function(b){function f(){e.trigger("closed").remove()}var c=a(this),d=c.attr("data-target"),e;d||(d=c.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,"")),e=a(d),e.trigger("close"),b&&b.preventDefault(),e.length||(e=c.hasClass("alert")?c:c.parent()),e.trigger("close").removeClass("in"),a.support.transition&&e.hasClass("fade")?e.on(a.support.transition.end,f):f()}},a.fn.alert=function(b){return this.each(function(){var d=a(this),e=d.data("alert");e||d.data("alert",e=new c(this)),typeof b=="string"&&e[b].call(d)})},a.fn.alert.Constructor=c,a(function(){a("body").on("click.alert.data-api",b,c.prototype.close)})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.button.defaults,c)};b.prototype={constructor:b,setState:function(a){var b="disabled",c=this.$element,d=c.data(),e=c.is("input")?"val":"html";a+="Text",d.resetText||c.data("resetText",c[e]()),c[e](d[a]||this.options[a]),setTimeout(function(){a=="loadingText"?c.addClass(b).attr(b,b):c.removeClass(b).removeAttr(b)},0)},toggle:function(){var a=this.$element.parent('[data-toggle="buttons-radio"]');a&&a.find(".active").removeClass("active"),this.$element.toggleClass("active")}},a.fn.button=function(c){return this.each(function(){var d=a(this),e=d.data("button"),f=typeof c=="object"&&c;e||d.data("button",e=new b(this,f)),c=="toggle"?e.toggle():c&&e.setState(c)})},a.fn.button.defaults={loadingText:"loading..."},a.fn.button.Constructor=b,a(function(){a("body").on("click.button.data-api","[data-toggle^=button]",function(b){var c=a(b.target);c.hasClass("btn")||(c=c.closest(".btn")),c.button("toggle")})})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.carousel.defaults,c),this.options.slide&&this.slide(this.options.slide),this.options.pause=="hover"&&this.$element.on("mouseenter",a.proxy(this.pause,this)).on("mouseleave",a.proxy(this.cycle,this))};b.prototype={cycle:function(){return this.interval=setInterval(a.proxy(this.next,this),this.options.interval),this},to:function(b){var c=this.$element.find(".active"),d=c.parent().children(),e=d.index(c),f=this;if(b>d.length-1||b<0)return;return this.sliding?this.$element.one("slid",function(){f.to(b)}):e==b?this.pause().cycle():this.slide(b>e?"next":"prev",a(d[b]))},pause:function(){return clearInterval(this.interval),this.interval=null,this},next:function(){if(this.sliding)return;return this.slide("next")},prev:function(){if(this.sliding)return;return this.slide("prev")},slide:function(b,c){var d=this.$element.find(".active"),e=c||d[b](),f=this.interval,g=b=="next"?"left":"right",h=b=="next"?"first":"last",i=this;this.sliding=!0,f&&this.pause(),e=e.length?e:this.$element.find(".item")[h]();if(e.hasClass("active"))return;return!a.support.transition&&this.$element.hasClass("slide")?(this.$element.trigger("slide"),d.removeClass("active"),e.addClass("active"),this.sliding=!1,this.$element.trigger("slid")):(e.addClass(b),e[0].offsetWidth,d.addClass(g),e.addClass(g),this.$element.trigger("slide"),this.$element.one(a.support.transition.end,function(){e.removeClass([b,g].join(" ")).addClass("active"),d.removeClass(["active",g].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger("slid")},0)})),f&&this.cycle(),this}},a.fn.carousel=function(c){return this.each(function(){var d=a(this),e=d.data("carousel"),f=typeof c=="object"&&c;e||d.data("carousel",e=new b(this,f)),typeof c=="number"?e.to(c):typeof c=="string"||(c=f.slide)?e[c]():e.cycle()})},a.fn.carousel.defaults={interval:5e3,pause:"hover"},a.fn.carousel.Constructor=b,a(function(){a("body").on("click.carousel.data-api","[data-slide]",function(b){var c=a(this),d,e=a(c.attr("data-target")||(d=c.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,"")),f=!e.data("modal")&&a.extend({},e.data(),c.data());e.carousel(f),b.preventDefault()})})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.collapse.defaults,c),this.options.parent&&(this.$parent=a(this.options.parent)),this.options.toggle&&this.toggle()};b.prototype={constructor:b,dimension:function(){var a=this.$element.hasClass("width");return a?"width":"height"},show:function(){var b=this.dimension(),c=a.camelCase(["scroll",b].join("-")),d=this.$parent&&this.$parent.find(".in"),e;d&&d.length&&(e=d.data("collapse"),d.collapse("hide"),e||d.data("collapse",null)),this.$element[b](0),this.transition("addClass","show","shown"),this.$element[b](this.$element[0][c])},hide:function(){var a=this.dimension();this.reset(this.$element[a]()),this.transition("removeClass","hide","hidden"),this.$element[a](0)},reset:function(a){var b=this.dimension();return this.$element.removeClass("collapse")[b](a||"auto")[0].offsetWidth,this.$element[a?"addClass":"removeClass"]("collapse"),this},transition:function(b,c,d){var e=this,f=function(){c=="show"&&e.reset(),e.$element.trigger(d)};this.$element.trigger(c)[b]("in"),a.support.transition&&this.$element.hasClass("collapse")?this.$element.one(a.support.transition.end,f):f()},toggle:function(){this[this.$element.hasClass("in")?"hide":"show"]()}},a.fn.collapse=function(c){return this.each(function(){var d=a(this),e=d.data("collapse"),f=typeof c=="object"&&c;e||d.data("collapse",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.collapse.defaults={toggle:!0},a.fn.collapse.Constructor=b,a(function(){a("body").on("click.collapse.data-api","[data-toggle=collapse]",function(b){var c=a(this),d,e=c.attr("data-target")||b.preventDefault()||(d=c.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""),f=a(e).data("collapse")?"toggle":c.data();a(e).collapse(f)})})}(window.jQuery),!function(a){function d(){a(b).parent().removeClass("open")}"use strict";var b='[data-toggle="dropdown"]',c=function(b){var c=a(b).on("click.dropdown.data-api",this.toggle);a("html").on("click.dropdown.data-api",function(){c.parent().removeClass("open")})};c.prototype={constructor:c,toggle:function(b){var c=a(this),e=c.attr("data-target"),f,g;return e||(e=c.attr("href"),e=e&&e.replace(/.*(?=#[^\s]*$)/,"")),f=a(e),f.length||(f=c.parent()),g=f.hasClass("open"),d(),!g&&f.toggleClass("open"),!1}},a.fn.dropdown=function(b){return this.each(function(){var d=a(this),e=d.data("dropdown");e||d.data("dropdown",e=new c(this)),typeof b=="string"&&e[b].call(d)})},a.fn.dropdown.Constructor=c,a(function(){a("html").on("click.dropdown.data-api",d),a("body").on("click.dropdown.data-api",b,c.prototype.toggle)})}(window.jQuery),!function(a){function c(){var b=this,c=setTimeout(function(){b.$element.off(a.support.transition.end),d.call(b)},500);this.$element.one(a.support.transition.end,function(){clearTimeout(c),d.call(b)})}function d(a){this.$element.hide().trigger("hidden"),e.call(this)}function e(b){var c=this,d=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var e=a.support.transition&&d;this.$backdrop=a('<div class="modal-backdrop '+d+'" />').appendTo(document.body),this.options.backdrop!="static"&&this.$backdrop.click(a.proxy(this.hide,this)),e&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),e?this.$backdrop.one(a.support.transition.end,b):b()}else!this.isShown&&this.$backdrop?(this.$backdrop.removeClass("in"),a.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one(a.support.transition.end,a.proxy(f,this)):f.call(this)):b&&b()}function f(){this.$backdrop.remove(),this.$backdrop=null}function g(){var b=this;this.isShown&&this.options.keyboard?a(document).on("keyup.dismiss.modal",function(a){a.which==27&&b.hide()}):this.isShown||a(document).off("keyup.dismiss.modal")}"use strict";var b=function(b,c){this.options=c,this.$element=a(b).delegate('[data-dismiss="modal"]',"click.dismiss.modal",a.proxy(this.hide,this))};b.prototype={constructor:b,toggle:function(){return this[this.isShown?"hide":"show"]()},show:function(){var b=this;if(this.isShown)return;a("body").addClass("modal-open"),this.isShown=!0,this.$element.trigger("show"),g.call(this),e.call(this,function(){var c=a.support.transition&&b.$element.hasClass("fade");!b.$element.parent().length&&b.$element.appendTo(document.body),b.$element.show(),c&&b.$element[0].offsetWidth,b.$element.addClass("in"),c?b.$element.one(a.support.transition.end,function(){b.$element.trigger("shown")}):b.$element.trigger("shown")})},hide:function(b){b&&b.preventDefault();if(!this.isShown)return;var e=this;this.isShown=!1,a("body").removeClass("modal-open"),g.call(this),this.$element.trigger("hide").removeClass("in"),a.support.transition&&this.$element.hasClass("fade")?c.call(this):d.call(this)}},a.fn.modal=function(c){return this.each(function(){var d=a(this),e=d.data("modal"),f=a.extend({},a.fn.modal.defaults,d.data(),typeof c=="object"&&c);e||d.data("modal",e=new b(this,f)),typeof c=="string"?e[c]():f.show&&e.show()})},a.fn.modal.defaults={backdrop:!0,keyboard:!0,show:!0},a.fn.modal.Constructor=b,a(function(){a("body").on("click.modal.data-api",'[data-toggle="modal"]',function(b){var c=a(this),d,e=a(c.attr("data-target")||(d=c.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,"")),f=e.data("modal")?"toggle":a.extend({},e.data(),c.data());b.preventDefault(),e.modal(f)})})}(window.jQuery),!function(a){"use strict";var b=function(a,b){this.init("tooltip",a,b)};b.prototype={constructor:b,init:function(b,c,d){var e,f;this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.enabled=!0,this.options.trigger!="manual"&&(e=this.options.trigger=="hover"?"mouseenter":"focus",f=this.options.trigger=="hover"?"mouseleave":"blur",this.$element.on(e,this.options.selector,a.proxy(this.enter,this)),this.$element.on(f,this.options.selector,a.proxy(this.leave,this))),this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},getOptions:function(b){return b=a.extend({},a.fn[this.type].defaults,b,this.$element.data()),b.delay&&typeof b.delay=="number"&&(b.delay={show:b.delay,hide:b.delay}),b},enter:function(b){var c=a(b.currentTarget)[this.type](this._options).data(this.type);!c.options.delay||!c.options.delay.show?c.show():(c.hoverState="in",setTimeout(function(){c.hoverState=="in"&&c.show()},c.options.delay.show))},leave:function(b){var c=a(b.currentTarget)[this.type](this._options).data(this.type);!c.options.delay||!c.options.delay.hide?c.hide():(c.hoverState="out",setTimeout(function(){c.hoverState=="out"&&c.hide()},c.options.delay.hide))},show:function(){var a,b,c,d,e,f,g;if(this.hasContent()&&this.enabled){a=this.tip(),this.setContent(),this.options.animation&&a.addClass("fade"),f=typeof this.options.placement=="function"?this.options.placement.call(this,a[0],this.$element[0]):this.options.placement,b=/in/.test(f),a.remove().css({top:0,left:0,display:"block"}).appendTo(b?this.$element:document.body),c=this.getPosition(b),d=a[0].offsetWidth,e=a[0].offsetHeight;switch(b?f.split(" ")[1]:f){case"bottom":g={top:c.top+c.height,left:c.left+c.width/2-d/2};break;case"top":g={top:c.top-e,left:c.left+c.width/2-d/2};break;case"left":g={top:c.top+c.height/2-e/2,left:c.left-d};break;case"right":g={top:c.top+c.height/2-e/2,left:c.left+c.width}}a.css(g).addClass(f).addClass("in")}},setContent:function(){var a=this.tip();a.find(".tooltip-inner").html(this.getTitle()),a.removeClass("fade in top bottom left right")},hide:function(){function d(){var b=setTimeout(function(){c.off(a.support.transition.end).remove()},500);c.one(a.support.transition.end,function(){clearTimeout(b),c.remove()})}var b=this,c=this.tip();c.removeClass("in"),a.support.transition&&this.$tip.hasClass("fade")?d():c.remove()},fixTitle:function(){var a=this.$element;(a.attr("title")||typeof a.attr("data-original-title")!="string")&&a.attr("data-original-title",a.attr("title")||"").removeAttr("title")},hasContent:function(){return this.getTitle()},getPosition:function(b){return a.extend({},b?{top:0,left:0}:this.$element.offset(),{width:this.$element[0].offsetWidth,height:this.$element[0].offsetHeight})},getTitle:function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||(typeof c.title=="function"?c.title.call(b[0]):c.title),a=(a||"").toString().replace(/(^\s*|\s*$)/,""),a},tip:function(){return this.$tip=this.$tip||a(this.options.template)},validate:function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},enable:function(){this.enabled=!0},disable:function(){this.enabled=!1},toggleEnabled:function(){this.enabled=!this.enabled},toggle:function(){this[this.tip().hasClass("in")?"hide":"show"]()}},a.fn.tooltip=function(c){return this.each(function(){var d=a(this),e=d.data("tooltip"),f=typeof c=="object"&&c;e||d.data("tooltip",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.tooltip.Constructor=b,a.fn.tooltip.defaults={animation:!0,delay:0,selector:!1,placement:"top",trigger:"hover",title:"",template:'<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'}}(window.jQuery),!function(a){"use strict";var b=function(a,b){this.init("popover",a,b)};b.prototype=a.extend({},a.fn.tooltip.Constructor.prototype,{constructor:b,setContent:function(){var b=this.tip(),c=this.getTitle(),d=this.getContent();b.find(".popover-title")[a.type(c)=="object"?"append":"html"](c),b.find(".popover-content > *")[a.type(d)=="object"?"append":"html"](d),b.removeClass("fade top bottom left right in")},hasContent:function(){return this.getTitle()||this.getContent()},getContent:function(){var a,b=this.$element,c=this.options;return a=b.attr("data-content")||(typeof c.content=="function"?c.content.call(b[0]):c.content),a=a.toString().replace(/(^\s*|\s*$)/,""),a},tip:function(){return this.$tip||(this.$tip=a(this.options.template)),this.$tip}}),a.fn.popover=function(c){return this.each(function(){var d=a(this),e=d.data("popover"),f=typeof c=="object"&&c;e||d.data("popover",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.popover.Constructor=b,a.fn.popover.defaults=a.extend({},a.fn.tooltip.defaults,{placement:"right",content:"",template:'<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'})}(window.jQuery),!function(a){function b(b,c){var d=a.proxy(this.process,this),e=a(b).is("body")?a(window):a(b),f;this.options=a.extend({},a.fn.scrollspy.defaults,c),this.$scrollElement=e.on("scroll.scroll.data-api",d),this.selector=(this.options.target||(f=a(b).attr("href"))&&f.replace(/.*(?=#[^\s]+$)/,"")||"")+" .nav li > a",this.$body=a("body").on("click.scroll.data-api",this.selector,d),this.refresh(),this.process()}"use strict",b.prototype={constructor:b,refresh:function(){this.targets=this.$body.find(this.selector).map(function(){var b=a(this).attr("href");return/^#\w/.test(b)&&a(b).length?b:null}),this.offsets=a.map(this.targets,function(b){return a(b).position().top})},process:function(){var a=this.$scrollElement.scrollTop()+this.options.offset,b=this.offsets,c=this.targets,d=this.activeTarget,e;for(e=b.length;e--;)d!=c[e]&&a>=b[e]&&(!b[e+1]||a<=b[e+1])&&this.activate(c[e])},activate:function(a){var b;this.activeTarget=a,this.$body.find(this.selector).parent(".active").removeClass("active"),b=this.$body.find(this.selector+'[href="'+a+'"]').parent("li").addClass("active"),b.parent(".dropdown-menu")&&b.closest("li.dropdown").addClass("active")}},a.fn.scrollspy=function(c){return this.each(function(){var d=a(this),e=d.data("scrollspy"),f=typeof c=="object"&&c;e||d.data("scrollspy",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.scrollspy.Constructor=b,a.fn.scrollspy.defaults={offset:10},a(function(){a('[data-spy="scroll"]').each(function(){var b=a(this);b.scrollspy(b.data())})})}(window.jQuery),!function(a){"use strict";var b=function(b){this.element=a(b)};b.prototype={constructor:b,show:function(){var b=this.element,c=b.closest("ul:not(.dropdown-menu)"),d=b.attr("data-target"),e,f;d||(d=b.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,""));if(b.parent("li").hasClass("active"))return;e=c.find(".active a").last()[0],b.trigger({type:"show",relatedTarget:e}),f=a(d),this.activate(b.parent("li"),c),this.activate(f,f.parent(),function(){b.trigger({type:"shown",relatedTarget:e})})},activate:function(b,c,d){function g(){e.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"),b.addClass("active"),f?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu")&&b.closest("li.dropdown").addClass("active"),d&&d()}var e=c.find("> .active"),f=d&&a.support.transition&&e.hasClass("fade");f?e.one(a.support.transition.end,g):g(),e.removeClass("in")}},a.fn.tab=function(c){return this.each(function(){var d=a(this),e=d.data("tab");e||d.data("tab",e=new b(this)),typeof c=="string"&&e[c]()})},a.fn.tab.Constructor=b,a(function(){a("body").on("click.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"]',function(b){b.preventDefault(),a(this).tab("show")})})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.typeahead.defaults,c),this.matcher=this.options.matcher||this.matcher,this.sorter=this.options.sorter||this.sorter,this.highlighter=this.options.highlighter||this.highlighter,this.$menu=a(this.options.menu).appendTo("body"),this.source=this.options.source,this.shown=!1,this.listen()};b.prototype={constructor:b,select:function(){var a=this.$menu.find(".active").attr("data-value");return this.$element.val(a),this.$element.change(),this.hide()},show:function(){var b=a.extend({},this.$element.offset(),{height:this.$element[0].offsetHeight});return this.$menu.css({top:b.top+b.height,left:b.left}),this.$menu.show(),this.shown=!0,this},hide:function(){return this.$menu.hide(),this.shown=!1,this},lookup:function(b){var c=this,d,e;return this.query=this.$element.val(),this.query?(d=a.grep(this.source,function(a){if(c.matcher(a))return a}),d=this.sorter(d),d.length?this.render(d.slice(0,this.options.items)).show():this.shown?this.hide():this):this.shown?this.hide():this},matcher:function(a){return~a.toLowerCase().indexOf(this.query.toLowerCase())},sorter:function(a){var b=[],c=[],d=[],e;while(e=a.shift())e.toLowerCase().indexOf(this.query.toLowerCase())?~e.indexOf(this.query)?c.push(e):d.push(e):b.push(e);return b.concat(c,d)},highlighter:function(a){return a.replace(new RegExp("("+this.query+")","ig"),function(a,b){return"<strong>"+b+"</strong>"})},render:function(b){var c=this;return b=a(b).map(function(b,d){return b=a(c.options.item).attr("data-value",d),b.find("a").html(c.highlighter(d)),b[0]}),b.first().addClass("active"),this.$menu.html(b),this},next:function(b){var c=this.$menu.find(".active").removeClass("active"),d=c.next();d.length||(d=a(this.$menu.find("li")[0])),d.addClass("active")},prev:function(a){var b=this.$menu.find(".active").removeClass("active"),c=b.prev();c.length||(c=this.$menu.find("li").last()),c.addClass("active")},listen:function(){this.$element.on("blur",a.proxy(this.blur,this)).on("keypress",a.proxy(this.keypress,this)).on("keyup",a.proxy(this.keyup,this)),(a.browser.webkit||a.browser.msie)&&this.$element.on("keydown",a.proxy(this.keypress,this)),this.$menu.on("click",a.proxy(this.click,this)).on("mouseenter","li",a.proxy(this.mouseenter,this))},keyup:function(a){switch(a.keyCode){case 40:case 38:break;case 9:case 13:if(!this.shown)return;this.select();break;case 27:if(!this.shown)return;this.hide();break;default:this.lookup()}a.stopPropagation(),a.preventDefault()},keypress:function(a){if(!this.shown)return;switch(a.keyCode){case 9:case 13:case 27:a.preventDefault();break;case 38:a.preventDefault(),this.prev();break;case 40:a.preventDefault(),this.next()}a.stopPropagation()},blur:function(a){var b=this;setTimeout(function(){b.hide()},150)},click:function(a){a.stopPropagation(),a.preventDefault(),this.select()},mouseenter:function(b){this.$menu.find(".active").removeClass("active"),a(b.currentTarget).addClass("active")}},a.fn.typeahead=function(c){return this.each(function(){var d=a(this),e=d.data("typeahead"),f=typeof c=="object"&&c;e||d.data("typeahead",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.typeahead.defaults={source:[],items:8,menu:'<ul class="typeahead dropdown-menu"></ul>',item:'<li><a href="#"></a></li>'},a.fn.typeahead.Constructor=b,a(function(){a("body").on("focus.typeahead.data-api",'[data-provide="typeahead"]',function(b){var c=a(this);if(c.data("typeahead"))return;b.preventDefault(),c.typeahead(c.data())})})}(window.jQuery); \ No newline at end of file
+!function(a){a(function(){"use strict",a.support.transition=function(){var a=function(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd",msTransition:"MSTransitionEnd",transition:"transitionend"},c;for(c in b)if(a.style[c]!==undefined)return b[c]}();return a&&{end:a}}()})}(window.jQuery),!function(a){"use strict";var b='[data-dismiss="alert"]',c=function(c){a(c).on("click",b,this.close)};c.prototype.close=function(b){function f(){e.trigger("closed").remove()}var c=a(this),d=c.attr("data-target"),e;d||(d=c.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,"")),e=a(d),b&&b.preventDefault(),e.length||(e=c.hasClass("alert")?c:c.parent()),e.trigger(b=a.Event("close"));if(b.isDefaultPrevented())return;e.removeClass("in"),a.support.transition&&e.hasClass("fade")?e.on(a.support.transition.end,f):f()},a.fn.alert=function(b){return this.each(function(){var d=a(this),e=d.data("alert");e||d.data("alert",e=new c(this)),typeof b=="string"&&e[b].call(d)})},a.fn.alert.Constructor=c,a(function(){a("body").on("click.alert.data-api",b,c.prototype.close)})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.button.defaults,c)};b.prototype.setState=function(a){var b="disabled",c=this.$element,d=c.data(),e=c.is("input")?"val":"html";a+="Text",d.resetText||c.data("resetText",c[e]()),c[e](d[a]||this.options[a]),setTimeout(function(){a=="loadingText"?c.addClass(b).attr(b,b):c.removeClass(b).removeAttr(b)},0)},b.prototype.toggle=function(){var a=this.$element.parent('[data-toggle="buttons-radio"]');a&&a.find(".active").removeClass("active"),this.$element.toggleClass("active")},a.fn.button=function(c){return this.each(function(){var d=a(this),e=d.data("button"),f=typeof c=="object"&&c;e||d.data("button",e=new b(this,f)),c=="toggle"?e.toggle():c&&e.setState(c)})},a.fn.button.defaults={loadingText:"loading..."},a.fn.button.Constructor=b,a(function(){a("body").on("click.button.data-api","[data-toggle^=button]",function(b){var c=a(b.target);c.hasClass("btn")||(c=c.closest(".btn")),c.button("toggle")})})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=c,this.options.slide&&this.slide(this.options.slide),this.options.pause=="hover"&&this.$element.on("mouseenter",a.proxy(this.pause,this)).on("mouseleave",a.proxy(this.cycle,this))};b.prototype={cycle:function(b){return b||(this.paused=!1),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},to:function(b){var c=this.$element.find(".active"),d=c.parent().children(),e=d.index(c),f=this;if(b>d.length-1||b<0)return;return this.sliding?this.$element.one("slid",function(){f.to(b)}):e==b?this.pause().cycle():this.slide(b>e?"next":"prev",a(d[b]))},pause:function(a){return a||(this.paused=!0),clearInterval(this.interval),this.interval=null,this},next:function(){if(this.sliding)return;return this.slide("next")},prev:function(){if(this.sliding)return;return this.slide("prev")},slide:function(b,c){var d=this.$element.find(".active"),e=c||d[b](),f=this.interval,g=b=="next"?"left":"right",h=b=="next"?"first":"last",i=this,j=a.Event("slide");this.sliding=!0,f&&this.pause(),e=e.length?e:this.$element.find(".item")[h]();if(e.hasClass("active"))return;if(a.support.transition&&this.$element.hasClass("slide")){this.$element.trigger(j);if(j.isDefaultPrevented())return;e.addClass(b),e[0].offsetWidth,d.addClass(g),e.addClass(g),this.$element.one(a.support.transition.end,function(){e.removeClass([b,g].join(" ")).addClass("active"),d.removeClass(["active",g].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger("slid")},0)})}else{this.$element.trigger(j);if(j.isDefaultPrevented())return;d.removeClass("active"),e.addClass("active"),this.sliding=!1,this.$element.trigger("slid")}return f&&this.cycle(),this}},a.fn.carousel=function(c){return this.each(function(){var d=a(this),e=d.data("carousel"),f=a.extend({},a.fn.carousel.defaults,typeof c=="object"&&c);e||d.data("carousel",e=new b(this,f)),typeof c=="number"?e.to(c):typeof c=="string"||(c=f.slide)?e[c]():f.interval&&e.cycle()})},a.fn.carousel.defaults={interval:5e3,pause:"hover"},a.fn.carousel.Constructor=b,a(function(){a("body").on("click.carousel.data-api","[data-slide]",function(b){var c=a(this),d,e=a(c.attr("data-target")||(d=c.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,"")),f=!e.data("modal")&&a.extend({},e.data(),c.data());e.carousel(f),b.preventDefault()})})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.collapse.defaults,c),this.options.parent&&(this.$parent=a(this.options.parent)),this.options.toggle&&this.toggle()};b.prototype={constructor:b,dimension:function(){var a=this.$element.hasClass("width");return a?"width":"height"},show:function(){var b,c,d,e;if(this.transitioning)return;b=this.dimension(),c=a.camelCase(["scroll",b].join("-")),d=this.$parent&&this.$parent.find("> .accordion-group > .in");if(d&&d.length){e=d.data("collapse");if(e&&e.transitioning)return;d.collapse("hide"),e||d.data("collapse",null)}this.$element[b](0),this.transition("addClass",a.Event("show"),"shown"),this.$element[b](this.$element[0][c])},hide:function(){var b;if(this.transitioning)return;b=this.dimension(),this.reset(this.$element[b]()),this.transition("removeClass",a.Event("hide"),"hidden"),this.$element[b](0)},reset:function(a){var b=this.dimension();return this.$element.removeClass("collapse")[b](a||"auto")[0].offsetWidth,this.$element[a!==null?"addClass":"removeClass"]("collapse"),this},transition:function(b,c,d){var e=this,f=function(){c=="show"&&e.reset(),e.transitioning=0,e.$element.trigger(d)};this.$element.trigger(c);if(c.isDefaultPrevented())return;this.transitioning=1,this.$element[b]("in"),a.support.transition&&this.$element.hasClass("collapse")?this.$element.one(a.support.transition.end,f):f()},toggle:function(){this[this.$element.hasClass("in")?"hide":"show"]()}},a.fn.collapse=function(c){return this.each(function(){var d=a(this),e=d.data("collapse"),f=typeof c=="object"&&c;e||d.data("collapse",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.collapse.defaults={toggle:!0},a.fn.collapse.Constructor=b,a(function(){a("body").on("click.collapse.data-api","[data-toggle=collapse]",function(b){var c=a(this),d,e=c.attr("data-target")||b.preventDefault()||(d=c.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""),f=a(e).data("collapse")?"toggle":c.data();a(e).collapse(f)})})}(window.jQuery),!function(a){function d(){a(b).parent().removeClass("open")}"use strict";var b='[data-toggle="dropdown"]',c=function(b){var c=a(b).on("click.dropdown.data-api",this.toggle);a("html").on("click.dropdown.data-api",function(){c.parent().removeClass("open")})};c.prototype={constructor:c,toggle:function(b){var c=a(this),e,f,g;if(c.is(".disabled, :disabled"))return;return f=c.attr("data-target"),f||(f=c.attr("href"),f=f&&f.replace(/.*(?=#[^\s]*$)/,"")),e=a(f),e.length||(e=c.parent()),g=e.hasClass("open"),d(),g||e.toggleClass("open"),!1}},a.fn.dropdown=function(b){return this.each(function(){var d=a(this),e=d.data("dropdown");e||d.data("dropdown",e=new c(this)),typeof b=="string"&&e[b].call(d)})},a.fn.dropdown.Constructor=c,a(function(){a("html").on("click.dropdown.data-api",d),a("body").on("click.dropdown",".dropdown form",function(a){a.stopPropagation()}).on("click.dropdown.data-api",b,c.prototype.toggle)})}(window.jQuery),!function(a){function c(){var b=this,c=setTimeout(function(){b.$element.off(a.support.transition.end),d.call(b)},500);this.$element.one(a.support.transition.end,function(){clearTimeout(c),d.call(b)})}function d(a){this.$element.hide().trigger("hidden"),e.call(this)}function e(b){var c=this,d=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var e=a.support.transition&&d;this.$backdrop=a('<div class="modal-backdrop '+d+'" />').appendTo(document.body),this.options.backdrop!="static"&&this.$backdrop.click(a.proxy(this.hide,this)),e&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),e?this.$backdrop.one(a.support.transition.end,b):b()}else!this.isShown&&this.$backdrop?(this.$backdrop.removeClass("in"),a.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one(a.support.transition.end,a.proxy(f,this)):f.call(this)):b&&b()}function f(){this.$backdrop.remove(),this.$backdrop=null}function g(){var b=this;this.isShown&&this.options.keyboard?a(document).on("keyup.dismiss.modal",function(a){a.which==27&&b.hide()}):this.isShown||a(document).off("keyup.dismiss.modal")}"use strict";var b=function(b,c){this.options=c,this.$element=a(b).delegate('[data-dismiss="modal"]',"click.dismiss.modal",a.proxy(this.hide,this))};b.prototype={constructor:b,toggle:function(){return this[this.isShown?"hide":"show"]()},show:function(){var b=this,c=a.Event("show");this.$element.trigger(c);if(this.isShown||c.isDefaultPrevented())return;a("body").addClass("modal-open"),this.isShown=!0,g.call(this),e.call(this,function(){var c=a.support.transition&&b.$element.hasClass("fade");b.$element.parent().length||b.$element.appendTo(document.body),b.$element.show(),c&&b.$element[0].offsetWidth,b.$element.addClass("in"),c?b.$element.one(a.support.transition.end,function(){b.$element.trigger("shown")}):b.$element.trigger("shown")})},hide:function(b){b&&b.preventDefault();var e=this;b=a.Event("hide"),this.$element.trigger(b);if(!this.isShown||b.isDefaultPrevented())return;this.isShown=!1,a("body").removeClass("modal-open"),g.call(this),this.$element.removeClass("in"),a.support.transition&&this.$element.hasClass("fade")?c.call(this):d.call(this)}},a.fn.modal=function(c){return this.each(function(){var d=a(this),e=d.data("modal"),f=a.extend({},a.fn.modal.defaults,d.data(),typeof c=="object"&&c);e||d.data("modal",e=new b(this,f)),typeof c=="string"?e[c]():f.show&&e.show()})},a.fn.modal.defaults={backdrop:!0,keyboard:!0,show:!0},a.fn.modal.Constructor=b,a(function(){a("body").on("click.modal.data-api",'[data-toggle="modal"]',function(b){var c=a(this),d,e=a(c.attr("data-target")||(d=c.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,"")),f=e.data("modal")?"toggle":a.extend({},e.data(),c.data());b.preventDefault(),e.modal(f)})})}(window.jQuery),!function(a){"use strict";var b=function(a,b){this.init("tooltip",a,b)};b.prototype={constructor:b,init:function(b,c,d){var e,f;this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.enabled=!0,this.options.trigger!="manual"&&(e=this.options.trigger=="hover"?"mouseenter":"focus",f=this.options.trigger=="hover"?"mouseleave":"blur",this.$element.on(e,this.options.selector,a.proxy(this.enter,this)),this.$element.on(f,this.options.selector,a.proxy(this.leave,this))),this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},getOptions:function(b){return b=a.extend({},a.fn[this.type].defaults,b,this.$element.data()),b.delay&&typeof b.delay=="number"&&(b.delay={show:b.delay,hide:b.delay}),b},enter:function(b){var c=a(b.currentTarget)[this.type](this._options).data(this.type);if(!c.options.delay||!c.options.delay.show)return c.show();clearTimeout(this.timeout),c.hoverState="in",this.timeout=setTimeout(function(){c.hoverState=="in"&&c.show()},c.options.delay.show)},leave:function(b){var c=a(b.currentTarget)[this.type](this._options).data(this.type);if(!c.options.delay||!c.options.delay.hide)return c.hide();clearTimeout(this.timeout),c.hoverState="out",this.timeout=setTimeout(function(){c.hoverState=="out"&&c.hide()},c.options.delay.hide)},show:function(){var a,b,c,d,e,f,g;if(this.hasContent()&&this.enabled){a=this.tip(),this.setContent(),this.options.animation&&a.addClass("fade"),f=typeof this.options.placement=="function"?this.options.placement.call(this,a[0],this.$element[0]):this.options.placement,b=/in/.test(f),a.remove().css({top:0,left:0,display:"block"}).appendTo(b?this.$element:document.body),c=this.getPosition(b),d=a[0].offsetWidth,e=a[0].offsetHeight;switch(b?f.split(" ")[1]:f){case"bottom":g={top:c.top+c.height,left:c.left+c.width/2-d/2};break;case"top":g={top:c.top-e,left:c.left+c.width/2-d/2};break;case"left":g={top:c.top+c.height/2-e/2,left:c.left-d};break;case"right":g={top:c.top+c.height/2-e/2,left:c.left+c.width}}a.css(g).addClass(f).addClass("in")}},isHTML:function(a){return typeof a!="string"||a.charAt(0)==="<"&&a.charAt(a.length-1)===">"&&a.length>=3||/^(?:[^<]*<[\w\W]+>[^>]*$)/.exec(a)},setContent:function(){var a=this.tip(),b=this.getTitle();a.find(".tooltip-inner")[this.isHTML(b)?"html":"text"](b),a.removeClass("fade in top bottom left right")},hide:function(){function d(){var b=setTimeout(function(){c.off(a.support.transition.end).remove()},500);c.one(a.support.transition.end,function(){clearTimeout(b),c.remove()})}var b=this,c=this.tip();c.removeClass("in"),a.support.transition&&this.$tip.hasClass("fade")?d():c.remove()},fixTitle:function(){var a=this.$element;(a.attr("title")||typeof a.attr("data-original-title")!="string")&&a.attr("data-original-title",a.attr("title")||"").removeAttr("title")},hasContent:function(){return this.getTitle()},getPosition:function(b){return a.extend({},b?{top:0,left:0}:this.$element.offset(),{width:this.$element[0].offsetWidth,height:this.$element[0].offsetHeight})},getTitle:function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||(typeof c.title=="function"?c.title.call(b[0]):c.title),a},tip:function(){return this.$tip=this.$tip||a(this.options.template)},validate:function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},enable:function(){this.enabled=!0},disable:function(){this.enabled=!1},toggleEnabled:function(){this.enabled=!this.enabled},toggle:function(){this[this.tip().hasClass("in")?"hide":"show"]()}},a.fn.tooltip=function(c){return this.each(function(){var d=a(this),e=d.data("tooltip"),f=typeof c=="object"&&c;e||d.data("tooltip",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.tooltip.Constructor=b,a.fn.tooltip.defaults={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover",title:"",delay:0}}(window.jQuery),!function(a){"use strict";var b=function(a,b){this.init("popover",a,b)};b.prototype=a.extend({},a.fn.tooltip.Constructor.prototype,{constructor:b,setContent:function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(".popover-title")[this.isHTML(b)?"html":"text"](b),a.find(".popover-content > *")[this.isHTML(c)?"html":"text"](c),a.removeClass("fade top bottom left right in")},hasContent:function(){return this.getTitle()||this.getContent()},getContent:function(){var a,b=this.$element,c=this.options;return a=b.attr("data-content")||(typeof c.content=="function"?c.content.call(b[0]):c.content),a},tip:function(){return this.$tip||(this.$tip=a(this.options.template)),this.$tip}}),a.fn.popover=function(c){return this.each(function(){var d=a(this),e=d.data("popover"),f=typeof c=="object"&&c;e||d.data("popover",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.popover.Constructor=b,a.fn.popover.defaults=a.extend({},a.fn.tooltip.defaults,{placement:"right",content:"",template:'<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'})}(window.jQuery),!function(a){function b(b,c){var d=a.proxy(this.process,this),e=a(b).is("body")?a(window):a(b),f;this.options=a.extend({},a.fn.scrollspy.defaults,c),this.$scrollElement=e.on("scroll.scroll.data-api",d),this.selector=(this.options.target||(f=a(b).attr("href"))&&f.replace(/.*(?=#[^\s]+$)/,"")||"")+" .nav li > a",this.$body=a("body").on("click.scroll.data-api",this.selector,d),this.refresh(),this.process()}"use strict",b.prototype={constructor:b,refresh:function(){var b=this,c;this.offsets=a([]),this.targets=a([]),c=this.$body.find(this.selector).map(function(){var b=a(this),c=b.data("target")||b.attr("href"),d=/^#\w/.test(c)&&a(c);return d&&c.length&&[[d.position().top,c]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){b.offsets.push(this[0]),b.targets.push(this[1])})},process:function(){var a=this.$scrollElement.scrollTop()+this.options.offset,b=this.$scrollElement[0].scrollHeight||this.$body[0].scrollHeight,c=b-this.$scrollElement.height(),d=this.offsets,e=this.targets,f=this.activeTarget,g;if(a>=c)return f!=(g=e.last()[0])&&this.activate(g);for(g=d.length;g--;)f!=e[g]&&a>=d[g]&&(!d[g+1]||a<=d[g+1])&&this.activate(e[g])},activate:function(b){var c,d;this.activeTarget=b,a(this.selector).parent(".active").removeClass("active"),d=this.selector+'[data-target="'+b+'"],'+this.selector+'[href="'+b+'"]',c=a(d).parent("li").addClass("active"),c.parent(".dropdown-menu")&&(c=c.closest("li.dropdown").addClass("active")),c.trigger("activate")}},a.fn.scrollspy=function(c){return this.each(function(){var d=a(this),e=d.data("scrollspy"),f=typeof c=="object"&&c;e||d.data("scrollspy",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.scrollspy.Constructor=b,a.fn.scrollspy.defaults={offset:10},a(function(){a('[data-spy="scroll"]').each(function(){var b=a(this);b.scrollspy(b.data())})})}(window.jQuery),!function(a){"use strict";var b=function(b){this.element=a(b)};b.prototype={constructor:b,show:function(){var b=this.element,c=b.closest("ul:not(.dropdown-menu)"),d=b.attr("data-target"),e,f,g;d||(d=b.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,""));if(b.parent("li").hasClass("active"))return;e=c.find(".active a").last()[0],g=a.Event("show",{relatedTarget:e}),b.trigger(g);if(g.isDefaultPrevented())return;f=a(d),this.activate(b.parent("li"),c),this.activate(f,f.parent(),function(){b.trigger({type:"shown",relatedTarget:e})})},activate:function(b,c,d){function g(){e.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"),b.addClass("active"),f?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu")&&b.closest("li.dropdown").addClass("active"),d&&d()}var e=c.find("> .active"),f=d&&a.support.transition&&e.hasClass("fade");f?e.one(a.support.transition.end,g):g(),e.removeClass("in")}},a.fn.tab=function(c){return this.each(function(){var d=a(this),e=d.data("tab");e||d.data("tab",e=new b(this)),typeof c=="string"&&e[c]()})},a.fn.tab.Constructor=b,a(function(){a("body").on("click.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"]',function(b){b.preventDefault(),a(this).tab("show")})})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.typeahead.defaults,c),this.matcher=this.options.matcher||this.matcher,this.sorter=this.options.sorter||this.sorter,this.highlighter=this.options.highlighter||this.highlighter,this.updater=this.options.updater||this.updater,this.$menu=a(this.options.menu).appendTo("body"),this.source=this.options.source,this.shown=!1,this.listen()};b.prototype={constructor:b,select:function(){var a=this.$menu.find(".active").attr("data-value");return this.$element.val(this.updater(a)).change(),this.hide()},updater:function(a){return a},show:function(){var b=a.extend({},this.$element.position(),{height:this.$element[0].offsetHeight});return this.$menu.css({top:b.top+b.height,left:b.left}),this.$menu.show(),this.shown=!0,this},hide:function(){return this.$menu.hide(),this.shown=!1,this},lookup:function(b){var c=this,d,e;return this.query=this.$element.val(),this.query?(d=a.grep(this.source,function(a){return c.matcher(a)}),d=this.sorter(d),d.length?this.render(d.slice(0,this.options.items)).show():this.shown?this.hide():this):this.shown?this.hide():this},matcher:function(a){return~a.toLowerCase().indexOf(this.query.toLowerCase())},sorter:function(a){var b=[],c=[],d=[],e;while(e=a.shift())e.toLowerCase().indexOf(this.query.toLowerCase())?~e.indexOf(this.query)?c.push(e):d.push(e):b.push(e);return b.concat(c,d)},highlighter:function(a){var b=this.query.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&");return a.replace(new RegExp("("+b+")","ig"),function(a,b){return"<strong>"+b+"</strong>"})},render:function(b){var c=this;return b=a(b).map(function(b,d){return b=a(c.options.item).attr("data-value",d),b.find("a").html(c.highlighter(d)),b[0]}),b.first().addClass("active"),this.$menu.html(b),this},next:function(b){var c=this.$menu.find(".active").removeClass("active"),d=c.next();d.length||(d=a(this.$menu.find("li")[0])),d.addClass("active")},prev:function(a){var b=this.$menu.find(".active").removeClass("active"),c=b.prev();c.length||(c=this.$menu.find("li").last()),c.addClass("active")},listen:function(){this.$element.on("blur",a.proxy(this.blur,this)).on("keypress",a.proxy(this.keypress,this)).on("keyup",a.proxy(this.keyup,this)),(a.browser.webkit||a.browser.msie)&&this.$element.on("keydown",a.proxy(this.keypress,this)),this.$menu.on("click",a.proxy(this.click,this)).on("mouseenter","li",a.proxy(this.mouseenter,this))},keyup:function(a){switch(a.keyCode){case 40:case 38:break;case 9:case 13:if(!this.shown)return;this.select();break;case 27:if(!this.shown)return;this.hide();break;default:this.lookup()}a.stopPropagation(),a.preventDefault()},keypress:function(a){if(!this.shown)return;switch(a.keyCode){case 9:case 13:case 27:a.preventDefault();break;case 38:if(a.type!="keydown")break;a.preventDefault(),this.prev();break;case 40:if(a.type!="keydown")break;a.preventDefault(),this.next()}a.stopPropagation()},blur:function(a){var b=this;setTimeout(function(){b.hide()},150)},click:function(a){a.stopPropagation(),a.preventDefault(),this.select()},mouseenter:function(b){this.$menu.find(".active").removeClass("active"),a(b.currentTarget).addClass("active")}},a.fn.typeahead=function(c){return this.each(function(){var d=a(this),e=d.data("typeahead"),f=typeof c=="object"&&c;e||d.data("typeahead",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.typeahead.defaults={source:[],items:8,menu:'<ul class="typeahead dropdown-menu"></ul>',item:'<li><a href="#"></a></li>'},a.fn.typeahead.Constructor=b,a(function(){a("body").on("focus.typeahead.data-api",'[data-provide="typeahead"]',function(b){var c=a(this);if(c.data("typeahead"))return;b.preventDefault(),c.typeahead(c.data())})})}(window.jQuery); \ No newline at end of file
diff --git a/docs/base-css.html b/docs/base-css.html
index d44b65891..5c55e0432 100644
--- a/docs/base-css.html
+++ b/docs/base-css.html
@@ -20,6 +20,7 @@
<!-- Le fav and touch icons -->
<link rel="shortcut icon" href="assets/ico/favicon.ico">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144" href="assets/ico/apple-touch-icon-144-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/ico/apple-touch-icon-114-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
@@ -39,7 +40,7 @@
<span class="icon-bar"></span>
</a>
<a class="brand" href="./index.html">Bootstrap</a>
- <div class="nav-collapse">
+ <div class="nav-collapse collapse">
<ul class="nav">
<li class="">
<a href="./index.html">Overview</a>
@@ -370,7 +371,14 @@
<dd>Donec id elit non mi porta gravida at eget metus.</dd>
<dt>Malesuada porta</dt>
<dd>Etiam porta sem malesuada magna mollis euismod.</dd>
+ <dt>Felis euismod semper eget lacinia</dt>
+ <dd>Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</dd>
</dl>
+ <hr>
+ <p>
+ <span class="label label-info">Heads up!</span>
+ Horizontal description lists will truncate terms that are too long to fit in the left column fix <code>text-overflow</code>. In narrower viewports, they will change to the default stacked layout.
+ </p>
</div>
</div><!-- /row -->
</section>
@@ -874,14 +882,12 @@ For example, &lt;code&gt;section&lt;/code&gt; should be wrapped as inline.
<h2>Example forms <small>using just form controls, no extra markup</small></h2>
<div class="row">
- <div class="span3">
+ <div class="span6">
<h3>Basic form</h3>
- <p>With v2.0, we have lighter and smarter defaults for form styles. No extra markup, just form controls.</p>
- </div>
- <div class="span9">
+ <p>Smart and lightweight defaults without extra markup.</p>
<form class="well">
<label>Label name</label>
- <input type="text" class="span3" placeholder="Type something…"> <span class="help-inline">Associated help text!</span>
+ <input type="text" class="span3" placeholder="Type something…">
<p class="help-block">Example block-level help text here.</p>
<label class="checkbox">
<input type="checkbox"> Check me out
@@ -892,39 +898,30 @@ For example, &lt;code&gt;section&lt;/code&gt; should be wrapped as inline.
&lt;form class="well"&gt;
&lt;label&gt;Label name&lt;/label&gt;
&lt;input type="text" class="span3" placeholder="Type something…"&gt;
- &lt;span class="help-inline"&gt;Associated help text!&lt;/span&gt;
+ &lt;span class="help-block"&gt;Example block-level help text here.&lt;/span&gt;
&lt;label class="checkbox"&gt;
&lt;input type="checkbox"&gt; Check me out
&lt;/label&gt;
&lt;button type="submit" class="btn"&gt;Submit&lt;/button&gt;
&lt;/form&gt;
</pre>
- </div>
- </div> <!-- /row -->
- <div class="row">
- <div class="span3">
- <h3>Search form</h3>
- <p>Reflecting default WebKit styles, just add <code>.form-search</code> for extra rounded search fields.</p>
- </div>
- <div class="span9">
- <form class="well form-search">
- <input type="text" class="input-medium search-query">
- <button type="submit" class="btn">Search</button>
- </form>
+ </div>
+ <div class="span6">
+ <h3>Search form</h3>
+ <p>Add <code>.form-search</code> to the form and <code>.search-query</code> to the <code>input</code>.</p>
+ <form class="well form-search">
+ <input type="text" class="input-medium search-query">
+ <button type="submit" class="btn">Search</button>
+ </form>
<pre class="prettyprint linenums">
&lt;form class="well form-search"&gt;
&lt;input type="text" class="input-medium search-query"&gt;
&lt;button type="submit" class="btn"&gt;Search&lt;/button&gt;
&lt;/form&gt;
</pre>
- </div>
- </div> <!-- /row -->
- <div class="row">
- <div class="span3">
+
<h3>Inline form</h3>
- <p>Inputs are block level to start. For <code>.form-inline</code> and <code>.form-horizontal</code>, we use inline-block.</p>
- </div>
- <div class="span9">
+ <p>Add <code>.form-inline</code> to finesse the vertical alignment and spacing of form controls.</p>
<form class="well form-inline">
<input type="text" class="input-small" placeholder="Email">
<input type="password" class="input-small" placeholder="Password">
@@ -943,17 +940,29 @@ For example, &lt;code&gt;section&lt;/code&gt; should be wrapped as inline.
&lt;button type="submit" class="btn"&gt;Sign in&lt;/button&gt;
&lt;/form&gt;
</pre>
- </div>
+ </div><!-- /.span -->
</div><!-- /row -->
<br>
<h2>Horizontal forms</h2>
<div class="row">
+ <div class="span4">
+ <p></p>
+ <p>Shown on the right are all the default form controls we support. Here's the bulleted list:</p>
+ <ul>
+ <li>text inputs (text, password, email, etc)</li>
+ <li>checkbox</li>
+ <li>radio</li>
+ <li>select</li>
+ <li>multiple select</li>
+ <li>file input</li>
+ <li>textarea</li>
+ </ul>
+ </div><!-- /.span -->
<div class="span8">
<form class="form-horizontal">
<fieldset>
- <legend>Controls Bootstrap supports</legend>
<div class="control-group">
<label class="control-label" for="input01">Text input</label>
<div class="controls">
@@ -1029,31 +1038,27 @@ For example, &lt;code&gt;section&lt;/code&gt; should be wrapped as inline.
&lt;/form&gt;
</pre>
</div>
- <div class="span4">
- <h3>What's included</h3>
- <p>Shown on the left are all the default form controls we support. Here's the bulleted list:</p>
- <ul>
- <li>text inputs (text, password, email, etc)</li>
- <li>checkbox</li>
- <li>radio</li>
- <li>select</li>
- <li>multiple select</li>
- <li>file input</li>
- <li>textarea</li>
- </ul>
- <hr>
- <h3>New defaults with v2.0</h3>
- <p>Up to v1.4, Bootstrap's default form styles used the horizontal layout. With Bootstrap 2, we removed that constraint to have smarter, more scalable defaults for any form.</p>
- </div>
</div>
<br>
+ <h2>Form control states</h2>
<div class="row">
+ <div class="span4">
+ <p>Bootstrap features styles for browser-supported focused and <code>disabled</code> states. We remove the default Webkit <code>outline</code> and apply a <code>box-shadow</code> in its place for <code>:focus</code>.</p>
+ <hr>
+ <h3>Form validation</h3>
+ <p>It also includes validation styles for errors, warnings, and success. To use, add the error class to the surrounding <code>.control-group</code>.</p>
+<pre class="prettyprint linenums">
+&lt;fieldset
+ class="control-group error"&gt;
+ …
+&lt;/fieldset&gt;
+</pre>
+ </div>
<div class="span8">
<form class="form-horizontal">
<fieldset>
- <legend>Form control states</legend>
<div class="control-group">
<label class="control-label" for="focusedInput">Focused input</label>
<div class="controls">
@@ -1122,28 +1127,29 @@ For example, &lt;code&gt;section&lt;/code&gt; should be wrapped as inline.
</fieldset>
</form>
</div>
- <div class="span4">
- <h3>Redesigned browser states</h3>
- <p>Bootstrap features styles for browser-supported focused and <code>disabled</code> states. We remove the default Webkit <code>outline</code> and apply a <code>box-shadow</code> in its place for <code>:focus</code>.</p>
- <hr>
- <h3>Form validation</h3>
- <p>It also includes validation styles for errors, warnings, and success. To use, add the error class to the surrounding <code>.control-group</code>.</p>
-<pre class="prettyprint linenums">
-&lt;fieldset
- class="control-group error"&gt;
- …
-&lt;/fieldset&gt;
-</pre>
- </div>
</div>
<br>
+ <h2>Extending form controls</h2>
<div class="row">
+ <div class="span4">
+ <h3>Prepend &amp; append inputs</h3>
+ <p>Input groups&mdash;with appended or prepended text&mdash;provide an easy way to give more context for your inputs. Great examples include the @ sign for Twitter usernames or $ for finances.</p>
+ <hr>
+ <h3>Checkboxes and radios</h3>
+ <p>Up to v1.4, Bootstrap required extra markup around checkboxes and radios to stack them. Now, it's a simple matter of repeating the <code>&lt;label class="checkbox"&gt;</code> that wraps the <code>&lt;input type="checkbox"&gt;</code>.</p>
+ <p>Inline checkboxes and radios are also supported. Just add <code>.inline</code> to any <code>.checkbox</code> or <code>.radio</code> and you're done.</p>
+ <hr>
+ <h4>Inline forms and append/prepend</h4>
+ <p>To use prepend or append inputs in an inline form, be sure to place the <code>.add-on</code> and <code>input</code> on the same line, without spaces.</p>
+ <hr>
+ <h4>Form help text</h4>
+ <p>To add help text for your form inputs, include inline help text with <code>&lt;span class="help-inline"&gt;</code> or a help text block with <code>&lt;p class="help-block"&gt;</code> after the input element.</p>
+ </div>
<div class="span8">
<form class="form-horizontal">
<fieldset>
- <legend>Extending form controls</legend>
<div class="control-group">
<label class="control-label">Form grid sizes</label>
<div class="controls docs-input-sizes">
@@ -1210,10 +1216,18 @@ For example, &lt;code&gt;section&lt;/code&gt; should be wrapped as inline.
</div>
</div>
<div class="control-group">
- <label class="control-label" for="appendedPrependedInput">Append with button</label>
+ <label class="control-label" for="appendedInputButton">Append with button</label>
+ <div class="controls">
+ <div class="input-append">
+ <input class="span2" id="appendedInputButton" size="16" type="text"><button class="btn" type="button">Go!</button>
+ </div>
+ </div>
+ </div>
+ <div class="control-group">
+ <label class="control-label" for="appendedInputButtons">Two-button append</label>
<div class="controls">
<div class="input-append">
- <input class="span2" id="appendedPrependedInput" size="16" type="text"><button class="btn" type="button">Go!</button>
+ <input class="span2" id="appendedInputButtons" size="16" type="text"><button class="btn" type="button">Search</button><button class="btn" type="button">Options</button>
</div>
</div>
</div>
@@ -1269,20 +1283,6 @@ For example, &lt;code&gt;section&lt;/code&gt; should be wrapped as inline.
</fieldset>
</form>
</div>
- <div class="span4">
- <h3>Prepend &amp; append inputs</h3>
- <p>Input groups&mdash;with appended or prepended text&mdash;provide an easy way to give more context for your inputs. Great examples include the @ sign for Twitter usernames or $ for finances.</p>
- <hr>
- <h3>Checkboxes and radios</h3>
- <p>Up to v1.4, Bootstrap required extra markup around checkboxes and radios to stack them. Now, it's a simple matter of repeating the <code>&lt;label class="checkbox"&gt;</code> that wraps the <code>&lt;input type="checkbox"&gt;</code>.</p>
- <p>Inline checkboxes and radios are also supported. Just add <code>.inline</code> to any <code>.checkbox</code> or <code>.radio</code> and you're done.</p>
- <hr>
- <h4>Inline forms and append/prepend</h4>
- <p>To use prepend or append inputs in an inline form, be sure to place the <code>.add-on</code> and <code>input</code> on the same line, without spaces.</p>
- <hr>
- <h4>Form help text</h4>
- <p>To add help text for your form inputs, include inline help text with <code>&lt;span class="help-inline"&gt;</code> or a help text block with <code>&lt;p class="help-block"&gt;</code> after the input element.</p>
- </div>
</div><!-- /row -->
</section>
@@ -1316,7 +1316,7 @@ For example, &lt;code&gt;section&lt;/code&gt; should be wrapped as inline.
<tr>
<td><button class="btn btn-info" href="#">Info</button></td>
<td><code>btn btn-info</code></td>
- <td>Used as an alternate to the default styles</td>
+ <td>Used as an alternative to the default styles</td>
</tr>
<tr>
<td><button class="btn btn-success" href="#">Success</button></td>
@@ -1445,15 +1445,15 @@ For example, &lt;code&gt;section&lt;/code&gt; should be wrapped as inline.
<li><i class="icon-inbox"></i> icon-inbox</li>
<li><i class="icon-play-circle"></i> icon-play-circle</li>
<li><i class="icon-repeat"></i> icon-repeat</li>
- </ul>
- </div>
- <div class="span3">
- <ul class="the-icons">
<li><i class="icon-refresh"></i> icon-refresh</li>
<li><i class="icon-list-alt"></i> icon-list-alt</li>
<li><i class="icon-lock"></i> icon-lock</li>
<li><i class="icon-flag"></i> icon-flag</li>
<li><i class="icon-headphones"></i> icon-headphones</li>
+ </ul>
+ </div>
+ <div class="span3">
+ <ul class="the-icons">
<li><i class="icon-volume-off"></i> icon-volume-off</li>
<li><i class="icon-volume-down"></i> icon-volume-down</li>
<li><i class="icon-volume-up"></i> icon-volume-up</li>
@@ -1479,10 +1479,6 @@ For example, &lt;code&gt;section&lt;/code&gt; should be wrapped as inline.
<li><i class="icon-indent-right"></i> icon-indent-right</li>
<li><i class="icon-facetime-video"></i> icon-facetime-video</li>
<li><i class="icon-picture"></i> icon-picture</li>
- </ul>
- </div>
- <div class="span3">
- <ul class="the-icons">
<li><i class="icon-pencil"></i> icon-pencil</li>
<li><i class="icon-map-marker"></i> icon-map-marker</li>
<li><i class="icon-adjust"></i> icon-adjust</li>
@@ -1493,6 +1489,10 @@ For example, &lt;code&gt;section&lt;/code&gt; should be wrapped as inline.
<li><i class="icon-move"></i> icon-move</li>
<li><i class="icon-step-backward"></i> icon-step-backward</li>
<li><i class="icon-fast-backward"></i> icon-fast-backward</li>
+ </ul>
+ </div>
+ <div class="span3">
+ <ul class="the-icons">
<li><i class="icon-backward"></i> icon-backward</li>
<li><i class="icon-play"></i> icon-play</li>
<li><i class="icon-pause"></i> icon-pause</li>
@@ -1513,10 +1513,6 @@ For example, &lt;code&gt;section&lt;/code&gt; should be wrapped as inline.
<li><i class="icon-remove-circle"></i> icon-remove-circle</li>
<li><i class="icon-ok-circle"></i> icon-ok-circle</li>
<li><i class="icon-ban-circle"></i> icon-ban-circle</li>
- </ul>
- </div>
- <div class="span3">
- <ul class="the-icons">
<li><i class="icon-arrow-left"></i> icon-arrow-left</li>
<li><i class="icon-arrow-right"></i> icon-arrow-right</li>
<li><i class="icon-arrow-up"></i> icon-arrow-up</li>
@@ -1532,6 +1528,10 @@ For example, &lt;code&gt;section&lt;/code&gt; should be wrapped as inline.
<li><i class="icon-leaf"></i> icon-leaf</li>
<li><i class="icon-fire"></i> icon-fire</li>
<li><i class="icon-eye-open"></i> icon-eye-open</li>
+ </ul>
+ </div>
+ <div class="span3">
+ <ul class="the-icons">
<li><i class="icon-eye-close"></i> icon-eye-close</li>
<li><i class="icon-warning-sign"></i> icon-warning-sign</li>
<li><i class="icon-plane"></i> icon-plane</li>
@@ -1547,6 +1547,26 @@ For example, &lt;code&gt;section&lt;/code&gt; should be wrapped as inline.
<li><i class="icon-folder-open"></i> icon-folder-open</li>
<li><i class="icon-resize-vertical"></i> icon-resize-vertical</li>
<li><i class="icon-resize-horizontal"></i> icon-resize-horizontal</li>
+ <li><i class="icon-hdd"></i> icon-hdd</li>
+ <li><i class="icon-bullhorn"></i> icon-bullhorn</li>
+ <li><i class="icon-bell"></i> icon-bell</li>
+ <li><i class="icon-certificate"></i> icon-certificate</li>
+ <li><i class="icon-thumbs-up"></i> icon-thumbs-up</li>
+ <li><i class="icon-thumbs-down"></i> icon-thumbs-down</li>
+ <li><i class="icon-hand-right"></i> icon-hand-right</li>
+ <li><i class="icon-hand-left"></i> icon-hand-left</li>
+ <li><i class="icon-hand-up"></i> icon-hand-up</li>
+ <li><i class="icon-hand-down"></i> icon-hand-down</li>
+ <li><i class="icon-circle-arrow-right"></i> icon-circle-arrow-right</li>
+ <li><i class="icon-circle-arrow-left"></i> icon-circle-arrow-left</li>
+ <li><i class="icon-circle-arrow-up"></i> icon-circle-arrow-up</li>
+ <li><i class="icon-circle-arrow-down"></i> icon-circle-arrow-down</li>
+ <li><i class="icon-globe"></i> icon-globe</li>
+ <li><i class="icon-wrench"></i> icon-wrench</li>
+ <li><i class="icon-tasks"></i> icon-tasks</li>
+ <li><i class="icon-filter"></i> icon-filter</li>
+ <li><i class="icon-briefcase"></i> icon-briefcase</li>
+ <li><i class="icon-fullscreen"></i> icon-fullscreen</li>
</ul>
</div>
</div>
@@ -1639,8 +1659,7 @@ For example, &lt;code&gt;section&lt;/code&gt; should be wrapped as inline.
<label class="control-label" for="inputIcon">Email address</label>
<div class="controls">
<div class="input-prepend">
- <span class="add-on"><i class="icon-envelope"></i></span>
- <input class="span2" id="inputIcon" type="text">
+ <span class="add-on"><i class="icon-envelope"></i></span><input class="span2" id="inputIcon" type="text">
</div>
</div>
</div>
diff --git a/docs/components.html b/docs/components.html
index 10b2aec20..1678e58aa 100644
--- a/docs/components.html
+++ b/docs/components.html
@@ -20,6 +20,7 @@
<!-- Le fav and touch icons -->
<link rel="shortcut icon" href="assets/ico/favicon.ico">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144" href="assets/ico/apple-touch-icon-144-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/ico/apple-touch-icon-114-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
@@ -39,7 +40,7 @@
<span class="icon-bar"></span>
</a>
<a class="brand" href="./index.html">Bootstrap</a>
- <div class="nav-collapse">
+ <div class="nav-collapse collapse">
<ul class="nav">
<li class="">
<a href="./index.html">Overview</a>
@@ -421,7 +422,7 @@
</div><!-- /btn-group -->
</div><!-- /btn-toolbar -->
<h3>Sizes</h3>
- <p>Utilize the extra button classe <code>.btn-mini</code>, <code>.btn-small</code>, or <code>.btn-large</code> for sizing.</p>
+ <p>Utilize the extra button classes <code>.btn-mini</code>, <code>.btn-small</code>, or <code>.btn-large</code> for sizing.</p>
<div class="btn-toolbar">
<div class="btn-group">
<button class="btn btn-large">Large action</button>
@@ -639,16 +640,6 @@
<li><a href="#">Separated link</a></li>
</ul>
</li>
- <li class="dropdown">
- <a class="dropdown-toggle" data-toggle="dropdown" href="#">Dropup <b class="caret bottom-up"></b></a>
- <ul class="dropdown-menu bottom-up pull-right">
- <li><a href="#">Action</a></li>
- <li><a href="#">Another action</a></li>
- <li><a href="#">Something else here</a></li>
- <li class="divider"></li>
- <li><a href="#">Separated link</a></li>
- </ul>
- </li>
</ul>
<pre class="prettyprint linenums">
&lt;ul class="nav nav-tabs"&gt;
@@ -681,16 +672,6 @@
<li><a href="#">Separated link</a></li>
</ul>
</li>
- <li class="dropdown">
- <a class="dropdown-toggle" data-toggle="dropdown" href="#">Dropup <b class="caret bottom-up"></b></a>
- <ul class="dropdown-menu bottom-up pull-right">
- <li><a href="#">Action</a></li>
- <li><a href="#">Another action</a></li>
- <li><a href="#">Something else here</a></li>
- <li class="divider"></li>
- <li><a href="#">Separated link</a></li>
- </ul>
- </li>
</ul>
<pre class="prettyprint linenums">
&lt;ul class="nav nav-pills"&gt;
@@ -798,54 +779,58 @@
<h3>What's included</h3>
<p>Bring your tabs to life with a simple plugin to toggle between content via tabs. Bootstrap integrates tabbable tabs in four styles: top (default), right, bottom, and left.</p>
<p>Changing between them is easy and only requires changing very little markup.</p>
+ <hr>
+ <h4>Fade in tabs</h4>
+ <p>To make tabs fade in, add <code>.fade</code> to each <code>.tab-pane</code>.</p>
+ <hr>
+ <h4>Requires jQuery plugin</h4>
+ <p>All tabbable tabs are powered by our lightweight jQuery plugin. Read more about how to bring tabbable tabs to life <a href="./javascript.html#tabs">on the javascript docs page</a>.</p>
+ <p><a class="btn" href="./javascript.html#tabs">Get the javascript &rarr;</a></p>
</div>
- <div class="span4">
+ <div class="span8">
<h3>Tabbable example</h3>
- <p>To make tabs tabbable, wrap the <code>.nav-tabs</code> in another div with class <code>.tabbable</code>.</p>
- <div class="tabbable" style="margin-bottom: 9px;">
+ <p>To make tabs tabbable, create a <code>.tab-pane</code> with unique ID for every tab and wrap them in <code>.tab-content</code>.</p>
+ <div class="tabbable" style="margin-bottom: 18px;">
<ul class="nav nav-tabs">
- <li class="active"><a href="#1" data-toggle="tab">Section 1</a></li>
- <li><a href="#2" data-toggle="tab">Section 2</a></li>
- <li><a href="#3" data-toggle="tab">Section 3</a></li>
+ <li class="active"><a href="#tab1" data-toggle="tab">Section 1</a></li>
+ <li><a href="#tab2" data-toggle="tab">Section 2</a></li>
+ <li><a href="#tab3" data-toggle="tab">Section 3</a></li>
</ul>
- <div class="tab-content">
- <div class="tab-pane active" id="1">
+ <div class="tab-content" style="padding-bottom: 9px; border-bottom: 1px solid #ddd;">
+ <div class="tab-pane active" id="tab1">
<p>I'm in Section 1.</p>
</div>
- <div class="tab-pane" id="2">
+ <div class="tab-pane" id="tab2">
<p>Howdy, I'm in Section 2.</p>
</div>
- <div class="tab-pane" id="3">
+ <div class="tab-pane" id="tab3">
<p>What up girl, this is Section 3.</p>
</div>
</div>
</div> <!-- /tabbable -->
- </div>
- <div class="span4">
- <h3>Custom jQuery plugin</h3>
- <p>All tabbable tabs are powered by our lightweight jQuery plugin. Read more about how to bring tabbable tabs to life on the javascript docs page.</p>
- <p><a class="btn" href="./javascript.html#tabs">Get the javascript &rarr;</a></p>
- </div>
- </div>
+ <p>For right or left aligned tabs, wrap the <code>.nav-tabs</code> and <code>.tab-content</code> in <code>.tabbable</code>.</p>
- <h3>Straightforward markup</h3>
- <p>Using tabbable tabs requires a wrapping div, a set of tabs, and a set of tabbable panes of content.</p>
+ <h3>Straightforward markup</h3>
+ <p>Using tabbable tabs requires a wrapping div, a set of tabs, and a set of tabbable panes of content.</p>
<pre class="prettyprint linenums">
-&lt;div class="tabbable"&gt;
+&lt;div class="tabbable"&gt; &lt;-- Only required for left/right tabs --&gt;
&lt;ul class="nav nav-tabs"&gt;
- &lt;li class="active"&gt;&lt;a href="#1" data-toggle="tab"&gt;Section 1&lt;/a&gt;&lt;/li&gt;
- &lt;li&gt;&lt;a href="#2" data-toggle="tab"&gt;Section 2&lt;/a&gt;&lt;/li&gt;
+ &lt;li class="active"&gt;&lt;a href="#tab1" data-toggle="tab"&gt;Section 1&lt;/a&gt;&lt;/li&gt;
+ &lt;li&gt;&lt;a href="#tab2" data-toggle="tab"&gt;Section 2&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="tab-content"&gt;
- &lt;div class="tab-pane active" id="1"&gt;
+ &lt;div class="tab-pane active" id="tab1"&gt;
&lt;p&gt;I'm in Section 1.&lt;/p&gt;
&lt;/div&gt;
- &lt;div class="tab-pane" id="2"&gt;
+ &lt;div class="tab-pane" id="tab2"&gt;
&lt;p&gt;Howdy, I'm in Section 2.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</pre>
+ </div>
+ </div>
+
<h3>Tabbable in any direction</h3>
<div class="row">
@@ -1040,7 +1025,7 @@
</pre>
</div><!--/span-->
</div><!--/row-->
- <p>When you affix the navbar, remember to account for the hidden area underneath. Add 40px or more of apdding to the <code>&lt;body&gt;</code>. Be sure to add this after the core Bootstrap CSS and before the optional responsive CSS.</p>
+ <p>When you affix the navbar, remember to account for the hidden area underneath. Add 40px or more of padding to the <code>&lt;body&gt;</code>. Be sure to add this after the core Bootstrap CSS and before the optional responsive CSS.</p>
<h3>Brand name</h3>
<p>A simple link to show your brand or project name only requires an anchor tag.</p>
<pre class="prettyprint linenums">
@@ -1055,7 +1040,7 @@
&lt;input type="text" class="span2"&gt;
&lt;/form&gt;
</pre>
- <p>For a more customized search form, add the <code>.navbar-search</code> class to receive specialized styles in the navbar.</p>
+ <p>For a more customized search form, add <code>.navbar-search</code> to the <code>form</code> and <code>.search-query</code> to the input for specialized styles in the navbar.</p>
<pre class="prettyprint linenums">
&lt;form class="navbar-search pull-left"&gt;
&lt;input type="text" class="search-query" placeholder="Search"&gt;
@@ -1088,7 +1073,7 @@
&lt;/div&gt;
</pre>
<div class="alert alert-info">
- <strong>Heads up!</strong> The responsive navbar requires the <a href="./javascript.html#collapse">collapse plugin</a>.
+ <strong>Heads up!</strong> The responsive navbar requires the <a href="./javascript.html#collapse">collapse plugin</a> and <a href="./scaffolding.html#responsive">responsive Bootstrap CSS file</a>.
</div>
</div><!-- /.span -->
@@ -1115,7 +1100,7 @@
<h3>Component alignment</h3>
<p>To align a nav, search form, or text, use the <code>.pull-left</code> or <code>.pull-right</code> utility classes. Both classes will add a CSS float in the specified direction.</p>
<h3>Adding dropdown menus</h3>
- <p>Adding dropdowns and dropups to the nav is super simple, but does require the use of <a href="./javascript.html/#dropdown">our javascript plugin</a>.</p>
+ <p>Adding dropdowns and dropups to the nav is super simple, but does require the use of <a href="./javascript.html#dropdowns">our javascript plugin</a>.</p>
<pre class="prettyprint linenums">
&lt;ul class="nav"&gt;
&lt;li class="dropdown"&gt;
@@ -1134,7 +1119,7 @@
<p><a class="btn" href="./javascript.html#dropdowns">Get the javascript &rarr;</a></p>
<hr>
<h3>Text in the navbar</h3>
- <p>Wrap strings of text in a <code>&lt;p&gt;</code> tag for proper leading and color.</p>
+ <p>Wrap strings of text in a <code>&lt;.navbar-text&gt;</code>, usually on a <code>&lt;p&gt;</code> tag for proper leading and color.</p>
</div><!-- /.span -->
</div><!-- /.row -->
@@ -1231,11 +1216,11 @@
</div>
<div class="pagination">
<ul>
- <li><a href="#">&larr;</a></li>
+ <li><a href="#">&laquo;</a></li>
<li class="active"><a href="#">10</a></li>
<li class="disabled"><a href="#">...</a></li>
<li><a href="#">20</a></li>
- <li><a href="#">&rarr;</a></li>
+ <li><a href="#">&raquo;</a></li>
</ul>
</div>
<div class="pagination pagination-centered">
@@ -1442,13 +1427,13 @@
</tr>
<tr>
<td>
- Error
+ Important
</td>
<td>
- <span class="badge badge-error">6</span>
+ <span class="badge badge-important">6</span>
</td>
<td>
- <code>&lt;span class="badge badge-error"&gt;6&lt;/span&gt;</code>
+ <code>&lt;span class="badge badge-important"&gt;6&lt;/span&gt;</code>
</td>
</tr>
<tr>
@@ -1516,7 +1501,7 @@
<h2>Page header</h2>
<div class="row">
<div class="span4">
- <p>A simple shell for an <code>h1</code> to appropratiely space out and segment sections of content on a page. It can utilize the <code>h1</code>'s default <code>small</code>, element as well most other components (with additional styles).</p>
+ <p>A simple shell for an <code>h1</code> to appropriately space out and segment sections of content on a page. It can utilize the <code>h1</code>'s default <code>small</code>, element as well most other components (with additional styles).</p>
</div>
<div class="span8">
<div class="page-header">
@@ -1703,24 +1688,25 @@
<h3>Example alerts</h3>
<p>Wrap your message and an optional close icon in a div with simple class.</p>
<div class="alert">
- <a class="close" data-dismiss="alert">&times;</a>
+ <button class="close" data-dismiss="alert">&times;</button>
<strong>Warning!</strong> Best check yo self, you're not looking too good.
</div>
<pre class="prettyprint linenums">
&lt;div class="alert"&gt;
- &lt;a class="close" data-dismiss="alert"&gt;&times;&lt;/a&gt;
+ &lt;button class="close" data-dismiss="alert"&gt;&times;&lt;/button&gt;
&lt;strong&gt;Warning!&lt;/strong&gt; Best check yo self, you're not looking too good.
&lt;/div&gt;
</pre>
+ <p><span class="label label-info">Heads up!</span> iOS devices require an <code>href="#"</code> for the dismissal of alerts. Be sure to include it and the data attribute for anchor close icons. Alternatively, you may use a <code>button</code> element with the data attribute, which we have opted to do for our docs.</p>
<p>Easily extend the standard alert message with two optional classes: <code>.alert-block</code> for more padding and text controls and <code>.alert-heading</code> for a matching heading.</p>
<div class="alert alert-block">
- <a class="close" data-dismiss="alert">&times;</a>
+ <button class="close" data-dismiss="alert">&times;</button>
<h4 class="alert-heading">Warning!</h4>
<p>Best check yo self, you're not looking too good. Nulla vitae elit libero, a pharetra augue. Praesent commodo cursus magna, vel scelerisque nisl consectetur et.</p>
</div>
<pre class="prettyprint linenums">
&lt;div class="alert alert-block"&gt;
- &lt;a class="close" data-dismiss="alert"&gt;&times;&lt;/a&gt;
+ &lt;a class="close" data-dismiss="alert" href="#"&gt;&times;&lt;/a&gt;
&lt;h4 class="alert-heading"&gt;Warning!&lt;/h4&gt;
Best check yo self, you're not...
&lt;/div&gt;
@@ -1733,7 +1719,7 @@
<div class="span4">
<h3>Error or danger</h3>
<div class="alert alert-error">
- <a class="close" data-dismiss="alert">&times;</a>
+ <button class="close" data-dismiss="alert">&times;</button>
<strong>Oh snap!</strong> Change a few things up and try submitting again.
</div>
<pre class="prettyprint linenums">
@@ -1745,7 +1731,7 @@
<div class="span4">
<h3>Success</h3>
<div class="alert alert-success">
- <a class="close" data-dismiss="alert">&times;</a>
+ <button class="close" data-dismiss="alert">&times;</button>
<strong>Well done!</strong> You successfully read this important alert message.
</div>
<pre class="prettyprint linenums">
@@ -1757,7 +1743,7 @@
<div class="span4">
<h3>Information</h3>
<div class="alert alert-info">
- <a class="close" data-dismiss="alert">&times;</a>
+ <button class="close" data-dismiss="alert">&times;</button>
<strong>Heads up!</strong> This alert needs your attention, but it's not super important.
</div>
<pre class="prettyprint linenums">
@@ -1897,8 +1883,10 @@
<div class="span4">
<h2>Close icon</h2>
<p>Use the generic close icon for dismissing content like modals and alerts.</p>
- <p><a class="close" style="float: none;">&times;</a></p>
-<pre class="prettyprint linenums">&lt;a class="close"&gt;&amp;times;&lt;/a&gt;</pre>
+ <p><button class="close" style="float: none;">&times;</button></p>
+<pre class="prettyprint linenums">&lt;button class="close"&gt;&amp;times;&lt;/button&gt;</pre>
+ <p>iOS devices require an href="#" for click events if you rather use an anchor.</p>
+<pre class="prettyprint linenums">&lt;a class="close" href="#"&gt;&amp;times;&lt;/a&gt;</pre>
</div><!--/span-->
</div><!--/row-->
</section>
diff --git a/docs/download.html b/docs/download.html
index 6aa113001..8b4a385f7 100644
--- a/docs/download.html
+++ b/docs/download.html
@@ -20,6 +20,7 @@
<!-- Le fav and touch icons -->
<link rel="shortcut icon" href="assets/ico/favicon.ico">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144" href="assets/ico/apple-touch-icon-144-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/ico/apple-touch-icon-114-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
@@ -39,7 +40,7 @@
<span class="icon-bar"></span>
</a>
<a class="brand" href="./index.html">Bootstrap</a>
- <div class="nav-collapse">
+ <div class="nav-collapse collapse">
<ul class="nav">
<li class="">
<a href="./index.html">Overview</a>
@@ -107,8 +108,7 @@
<h3>Base CSS</h3>
<label class="checkbox"><input checked="checked" type="checkbox" value="type.less"> Headings, body, etc</label>
<label class="checkbox"><input checked="checked" type="checkbox" value="code.less"> Code and pre</label>
- <label class="checkbox"><input checked="checked" type="checkbox" value="labels.less"> Labels</label>
- <label class="checkbox"><input checked="checked" type="checkbox" value="badges.less"> Badges</label>
+ <label class="checkbox"><input checked="checked" type="checkbox" value="labels-badges.less"> Labels and badges</label>
<label class="checkbox"><input checked="checked" type="checkbox" value="tables.less"> Tables</label>
<label class="checkbox"><input checked="checked" type="checkbox" value="forms.less"> Forms</label>
<label class="checkbox"><input checked="checked" type="checkbox" value="buttons.less"> Buttons</label>
@@ -143,7 +143,11 @@
<label class="checkbox"><input checked="checked" type="checkbox" value="utilities.less"> Utilities</label>
<label class="checkbox"><input checked="checked" type="checkbox" value="component-animations.less"> Component animations</label>
<h3>Responsive</h3>
- <label class="checkbox"><input checked="checked" type="checkbox" value="responsive.less"> Responsive layouts</label>
+ <label class="checkbox"><input checked="checked" type="checkbox" value="responsive-utilities.less"> Visible/hidden classes</label>
+ <label class="checkbox"><input checked="checked" type="checkbox" value="responsive-767px-max.less"> Narrow tablets and below (<767px)</label>
+ <label class="checkbox"><input checked="checked" type="checkbox" value="responsive-768px-979px.less"> Tablets to desktops (767-979px)</label>
+ <label class="checkbox"><input checked="checked" type="checkbox" value="responsive-1200px-min.less"> Large desktops (>1200px)</label>
+ <label class="checkbox"><input checked="checked" type="checkbox" value="responsive-navbar.less"> Responsive navbar</label>
</div><!-- /span -->
</div><!-- /row -->
</section>
@@ -276,14 +280,20 @@
<input type="text" class="span3" placeholder="2.127659574%">
<h3>Typography</h3>
+ <label>@sansFontFamily</label>
+ <input type="text" class="span3" placeholder="'Helvetica Neue', Helvetica, Arial, sans-serif">
+ <label>@serifFontFamily</label>
+ <input type="text" class="span3" placeholder="Georgia, 'Times New Roman', Times, serif">
+ <label>@monoFontFamily</label>
+ <input type="text" class="span3" placeholder="Menlo, Monaco, 'Courier New', monospace">
<label>@baseFontSize</label>
<input type="text" class="span3" placeholder="13px">
<label>@baseFontFamily</label>
- <input type="text" class="span3" placeholder="'Helvetica Neue', Helvetica, Arial, sans-serif">
+ <input type="text" class="span3" placeholder="@sansFontFamily">
<label>@baseLineHeight</label>
<input type="text" class="span3" placeholder="18px">
<label>@altFontFamily</label>
- <input type="text" class="span3" placeholder="Georgia, 'Times New Roman', Times, serif;">
+ <input type="text" class="span3" placeholder="@serifFontFamily">
<label>@headingsFontFamily</label>
<input type="text" class="span3" placeholder="inherit">
<label>@headingsFontWeight</label>
@@ -317,6 +327,8 @@
<input type="text" class="span3" placeholder="@grayDark">
<label>@navbarText</label>
<input type="text" class="span3" placeholder="@grayLight">
+ <label>@navbarBrandColor</label>
+ <input type="text" class="span3" placeholder="@navbarLinkColor">
<label>@navbarLinkColor</label>
<input type="text" class="span3" placeholder="@grayLight">
<label>@navbarLinkColorHover</label>
@@ -356,8 +368,12 @@
<input type="text" class="span3" placeholder="@white">
<label>@inputBorder</label>
<input type="text" class="span3" placeholder="#ccc">
+ <label>@inputBorderRadius</label>
+ <input type="text" class="span3" placeholder="3px">
<label>@inputDisabledBackground</label>
<input type="text" class="span3" placeholder="@grayLighter">
+ <label>@formActionsBackground</label>
+ <input type="text" class="span3" placeholder="#f5f5f5">
<label>@btnPrimaryBackground</label>
<input type="text" class="span3" placeholder="@linkColor">
diff --git a/docs/examples.html b/docs/examples.html
index 947f635b1..7872a39e8 100644
--- a/docs/examples.html
+++ b/docs/examples.html
@@ -20,6 +20,7 @@
<!-- Le fav and touch icons -->
<link rel="shortcut icon" href="assets/ico/favicon.ico">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144" href="assets/ico/apple-touch-icon-144-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/ico/apple-touch-icon-114-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
@@ -39,7 +40,7 @@
<span class="icon-bar"></span>
</a>
<a class="brand" href="./index.html">Bootstrap</a>
- <div class="nav-collapse">
+ <div class="nav-collapse collapse">
<ul class="nav">
<li class="">
<a href="./index.html">Overview</a>
diff --git a/docs/examples/fluid.html b/docs/examples/fluid.html
index e3426c7a9..f235d7614 100644
--- a/docs/examples/fluid.html
+++ b/docs/examples/fluid.html
@@ -27,6 +27,7 @@
<!-- Le fav and touch icons -->
<link rel="shortcut icon" href="../assets/ico/favicon.ico">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144" href="../assets/ico/apple-touch-icon-144-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="../assets/ico/apple-touch-icon-114-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="../assets/ico/apple-touch-icon-72-precomposed.png">
<link rel="apple-touch-icon-precomposed" href="../assets/ico/apple-touch-icon-57-precomposed.png">
@@ -43,13 +44,23 @@
<span class="icon-bar"></span>
</a>
<a class="brand" href="#">Project name</a>
+ <div class="btn-group pull-right">
+ <a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
+ <i class="icon-user"></i> Username
+ <span class="caret"></span>
+ </a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Profile</a></li>
+ <li class="divider"></li>
+ <li><a href="#">Sign Out</a></li>
+ </ul>
+ </div>
<div class="nav-collapse">
<ul class="nav">
<li class="active"><a href="#">Home</a></li>
<li><a href="#about">About</a></li>
<li><a href="#contact">Contact</a></li>
</ul>
- <p class="navbar-text pull-right">Logged in as <a href="#">username</a></p>
</div><!--/.nav-collapse -->
</div>
</div>
diff --git a/docs/examples/hero.html b/docs/examples/hero.html
index 2267a5f3c..7fb3f67b7 100644
--- a/docs/examples/hero.html
+++ b/docs/examples/hero.html
@@ -24,6 +24,7 @@
<!-- Le fav and touch icons -->
<link rel="shortcut icon" href="../assets/ico/favicon.ico">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144" href="../assets/ico/apple-touch-icon-144-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="../assets/ico/apple-touch-icon-114-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="../assets/ico/apple-touch-icon-72-precomposed.png">
<link rel="apple-touch-icon-precomposed" href="../assets/ico/apple-touch-icon-57-precomposed.png">
diff --git a/docs/examples/starter-template.html b/docs/examples/starter-template.html
index af27165f9..538ff08be 100644
--- a/docs/examples/starter-template.html
+++ b/docs/examples/starter-template.html
@@ -23,6 +23,7 @@
<!-- Le fav and touch icons -->
<link rel="shortcut icon" href="../assets/ico/favicon.ico">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144" href="../assets/ico/apple-touch-icon-144-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="../assets/ico/apple-touch-icon-114-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="../assets/ico/apple-touch-icon-72-precomposed.png">
<link rel="apple-touch-icon-precomposed" href="../assets/ico/apple-touch-icon-57-precomposed.png">
diff --git a/docs/index.html b/docs/index.html
index 2dba90a3f..19e6a676a 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -20,6 +20,7 @@
<!-- Le fav and touch icons -->
<link rel="shortcut icon" href="assets/ico/favicon.ico">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144" href="assets/ico/apple-touch-icon-144-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/ico/apple-touch-icon-114-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
@@ -39,7 +40,7 @@
<span class="icon-bar"></span>
</a>
<a class="brand" href="./index.html">Bootstrap</a>
- <div class="nav-collapse">
+ <div class="nav-collapse collapse">
<ul class="nav">
<li class="active">
<a href="./index.html">Overview</a>
@@ -82,7 +83,7 @@
<p>Simple and flexible HTML, CSS, and Javascript for popular user interface components and interactions.</p>
<p class="download-info">
<a href="https://github.com/twitter/bootstrap/" class="btn btn-primary btn-large">View project on GitHub</a>
- <a href="assets/bootstrap.zip" class="btn btn-large">Download Bootstrap <small>(v2.0.2)</small></a>
+ <a href="assets/bootstrap.zip" class="btn btn-large">Download Bootstrap <small>(v2.0.3)</small></a>
</p>
</div>
@@ -90,6 +91,7 @@
<ul class="quick-links">
<li><a href="./upgrading.html">Upgrading from 1.4</a></li>
<li><a href="https://github.com/twitter/bootstrap/zipball/master">Download with docs</a></li>
+ <li><a href="http://blog.getbootstrap.com">Read the blog</a></li>
<li><a href="https://github.com/twitter/bootstrap/issues?state=open">Submit issues</a></li>
<li><a href="https://github.com/twitter/bootstrap/wiki">Roadmap and changelog</a></li>
</ul>
diff --git a/docs/javascript.html b/docs/javascript.html
index a90562767..7ad42ae81 100644
--- a/docs/javascript.html
+++ b/docs/javascript.html
@@ -20,6 +20,7 @@
<!-- Le fav and touch icons -->
<link rel="shortcut icon" href="assets/ico/favicon.ico">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144" href="assets/ico/apple-touch-icon-144-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/ico/apple-touch-icon-114-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
@@ -39,7 +40,7 @@
<span class="icon-bar"></span>
</a>
<a class="brand" href="./index.html">Bootstrap</a>
- <div class="nav-collapse">
+ <div class="nav-collapse collapse">
<ul class="nav">
<li class="">
<a href="./index.html">Overview</a>
@@ -205,9 +206,9 @@
<h2>Static example</h2>
<p>Below is a statically rendered modal.</p>
<div class="well modal-example" style="background-color: #888; border: none;">
- <div class="modal" style="position: relative; top: auto; left: auto; margin: 0 auto; z-index: 1">
+ <div class="modal" style="position: relative; top: auto; left: auto; margin: 0 auto; z-index: 1; max-width: 100%;">
<div class="modal-header">
- <a href="#" class="close" data-dismiss="modal">&times;</a>
+ <button class="close" data-dismiss="modal">&times;</button>
<h3>Modal header</h3>
</div>
<div class="modal-body">
@@ -225,7 +226,7 @@
<!-- sample modal content -->
<div id="myModal" class="modal hide fade">
<div class="modal-header">
- <a class="close" data-dismiss="modal" >&times;</a>
+ <button class="close" data-dismiss="modal">&times;</button>
<h3>Modal Heading</h3>
</div>
<div class="modal-body">
@@ -302,7 +303,7 @@
<pre class="prettyprint linenums">
&lt;div class="modal" id="myModal"&gt;
&lt;div class="modal-header"&gt;
- &lt;a class="close" data-dismiss="modal"&gt;&times;&lt;/a&gt;
+ &lt;button class="close" data-dismiss="modal"&gt;&times;&lt;/button&gt;
&lt;h3&gt;Modal header&lt;/h3&gt;
&lt;/div&gt;
&lt;div class="modal-body"&gt;
@@ -492,6 +493,20 @@ $('#myModal').on('hidden', function () {
&lt;/li&gt;
...
&lt;/ul&gt;</pre>
+ <p>To keep URLs intact, use the <code>data-target</code> attribute instead of <code>href="#"</code>.</p>
+<pre class="prettyprint linenums">
+&lt;ul class="nav nav-pills"&gt;
+ &lt;li class="dropdown"&gt;
+ &lt;a class="dropdown-toggle" data-toggle="dropdown" data-target="#" href="path/to/page.html"&gt;
+ Dropdown
+ &lt;b class="caret"&gt;&lt;/b&gt;
+ &lt;/a&gt;
+ &lt;ul class="dropdown-menu"&gt;
+ ...
+ &lt;/ul&gt;
+ &lt;/li&gt;
+&lt;/ul&gt;
+</pre>
<h3>Methods</h3>
<h4>$().dropdown()</h4>
<p>A programatic api for activating menus for a given navbar or tabbed navigation.</p>
@@ -570,6 +585,14 @@ $('#myModal').on('hidden', function () {
<strong>Heads up!</strong>
Navbar links must have resolvable id targets. For example, a <code>&lt;a href="#home"&gt;home&lt;/a&gt;</code> must correspond to something in the dom like <code>&lt;div id="home"&gt;&lt;/div&gt;</code>.
</div>
+ <h3>Methods</h3>
+ <h4>.scrollspy('refresh')</h4>
+ <p>When using scrollspy in conjunction with adding or removing of elements from the DOM, you'll need to call the refresh method like so:</p>
+<pre class="prettyprint linenums">
+$('[data-spy="scroll"]').each(function () {
+ var $spy = $(this).scrollspy('refresh')
+});
+</pre>
<h3>Options</h3>
<table class="table table-bordered table-striped">
<thead>
@@ -589,6 +612,21 @@ $('#myModal').on('hidden', function () {
</tr>
</tbody>
</table>
+ <h3>Events</h3>
+ <table class="table table-bordered table-striped">
+ <thead>
+ <tr>
+ <th style="width: 150px;">Event</th>
+ <th>Description</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td>activate</td>
+ <td>This event fires whenever a new item becomes activated by the scrollspy.</td>
+ </tr>
+ </tbody>
+ </table>
</div>
</div>
</section>
@@ -609,7 +647,7 @@ $('#myModal').on('hidden', function () {
<div class="span9 columns">
<h2>Example tabs</h2>
<p>Click the tabs below to toggle between hidden panes, even via dropdown menus.</p>
- <ul id="tab" class="nav nav-tabs">
+ <ul id="myTab" class="nav nav-tabs">
<li class="active"><a href="#home" data-toggle="tab">Home</a></li>
<li><a href="#profile" data-toggle="tab">Profile</a></li>
<li class="dropdown">
@@ -636,10 +674,21 @@ $('#myModal').on('hidden', function () {
</div>
<hr>
<h2>Using bootstrap-tab.js</h2>
- <p>Enable tabbable tabs via javascript:</p>
- <pre class="prettyprint linenums">$('#myTab').tab('show')</pre>
+ <p>Enable tabbable tabs via javascript (each tab needs to be activated individually):</p>
+ <pre class="prettyprint linenums">
+$('#myTab a').click(function (e) {
+ e.preventDefault();
+ $(this).tab('show');
+})</pre>
+ <p>You can activate individual tabs in several ways:</p>
+<pre class="prettyprint linenums">
+$('#myTab a[href="#profile"]').tab('show'); // Select tab by name
+$('#myTab a:first').tab('show'); // Select first tab
+$('#myTab a:last').tab('show'); // Select last tab
+$('#myTab li:eq(2) a').tab('show'); // Select third tab (0-indexed)
+</pre>
<h3>Markup</h3>
- <p>You can activate a tab or pill navigation without writing any javascript by simply specifying <code>data-toggle="tab"</code> or <code>data-toggle="pill"</code> on an element.</p>
+ <p>You can activate a tab or pill navigation without writing any javascript by simply specifying <code>data-toggle="tab"</code> or <code>data-toggle="pill"</code> on an element. Adding the <code>nav</code> and <code>nav-tabs</code> classes to the tab <code>ul</code> will apply the bootstrap tab styling.</p>
<pre class="prettyprint linenums">
&lt;ul class="nav nav-tabs"&gt;
&lt;li&gt;&lt;a href="#home" data-toggle="tab"&gt;Home&lt;/a&gt;&lt;/li&gt;
@@ -650,10 +699,10 @@ $('#myModal').on('hidden', function () {
<h3>Methods</h3>
<h4>$().tab</h4>
<p>
- Activates a tab element and content container. Tab should have either a `data-target` or an `href` targeting a container node in the dom.
+ Activates a tab element and content container. Tab should have either a <code>data-target</code> or an <code>href</code> targeting a container node in the DOM.
</p>
<pre class="prettyprint linenums">
-&lt;ul class="nav nav-tabs"&gt;
+&lt;ul class="nav nav-tabs" id="myTab"&gt;
&lt;li class="active"&gt;&lt;a href="#home"&gt;Home&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#profile"&gt;Profile&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#messages"&gt;Messages&lt;/a&gt;&lt;/li&gt;
@@ -669,7 +718,7 @@ $('#myModal').on('hidden', function () {
&lt;script&gt;
$(function () {
- $('.tabs a:last').tab('show')
+ $('#myTab a:last').tab('show');
})
&lt;/script&gt;</pre>
<h3>Events</h3>
@@ -718,7 +767,7 @@ $('a[data-toggle="tab"]').on('shown', function (e) {
<h2>Example use of Tooltips</h2>
<p>Hover over the links below to see tooltips:</p>
<div class="tooltip-demo well">
- <p class="muted" style="margin-bottom: 0;">Tight pants next level keffiyeh <a href="#" rel="tooltip" title="first tooltip">you probably</a> haven't heard of them. Photo booth beard raw denim letterpress vegan messenger bag stumptown. Farm-to-table seitan, mcsweeney's fixie sustainable quinoa 8-bit american apparel <a href="#" rel="tooltip" title="Another tooltip">have a</a> terry richardson vinyl chambray. Beard stumptown, cardigans banh mi lomo thundercats. Tofu biodiesel williamsburg marfa, four loko mcsweeney's cleanse vegan chambray. A <a href="#" rel="tooltip" title="Another one here too">really ironic</a> artisan whatever keytar, scenester farm-to-table banksy Austin <a href="#" rel="tooltip" title="The last tip!">twitter handle</a> freegan cred raw denim single-origin coffee viral.
+ <p class="muted" style="margin-bottom: 0;">Tight pants next level keffiyeh <a href="#" rel="tooltip" title="first tooltip">you probably</a> haven't heard of them. Photo booth beard raw denim letterpress vegan messenger bag stumptown. Farm-to-table seitan, mcsweeney's fixie sustainable quinoa 8-bit american apparel <a href="#" rel="tooltip" title="Another tooltip">have a</a> terry richardson vinyl chambray. Beard stumptown, cardigans banh mi lomo thundercats. Tofu biodiesel williamsburg marfa, four loko mcsweeney's cleanse vegan chambray. A really ironic artisan <a href="#" rel="tooltip" title="Another one here too">whatever keytar</a>, scenester farm-to-table banksy Austin <a href="#" rel="tooltip" title="The last tip!">twitter handle</a> freegan cred raw denim single-origin coffee viral.
</p>
</div>
<hr>
@@ -771,7 +820,7 @@ $('a[data-toggle="tab"]').on('shown', function (e) {
<td>number | object</td>
<td>0</td>
<td>
- <p>delay showing and hiding the tooltip (ms)</p>
+ <p>delay showing and hiding the tooltip (ms) - does not apply to manual trigger type</p>
<p>If a number is supplied, delay is applied to both hide/show</p>
<p>Object structure is: <code>delay: { show: 500, hide: 100 }</code></p>
</td>
@@ -880,7 +929,7 @@ $('a[data-toggle="tab"]').on('shown', function (e) {
<td>number | object</td>
<td>0</td>
<td>
- <p>delay showing and hiding the popover (ms)</p>
+ <p>delay showing and hiding the popover (ms) - does not apply to manual trigger type</p>
<p>If a number is supplied, delay is applied to both hide/show</p>
<p>Object structure is: <code>delay: { show: 500, hide: 100 }</code></p>
</td>
@@ -893,7 +942,7 @@ $('a[data-toggle="tab"]').on('shown', function (e) {
</div>
<h3>Markup</h3>
<p>
- For performance reasons, the Tooltip and Popover data-apis are opt in. If you would like to use them just specify a the selector option.
+ For performance reasons, the Tooltip and Popover data-apis are opt in. If you would like to use them just specify a selector option.
</p>
<h3>Methods</h3>
<h4>$().popover(options)</h4>
@@ -929,11 +978,11 @@ $('a[data-toggle="tab"]').on('shown', function (e) {
<h2>Example alerts</h2>
<p>The alerts plugin works on regular alert messages, and block messages.</p>
<div class="alert fade in">
- <a class="close" data-dismiss="alert" href="#">&times;</a>
+ <button class="close" data-dismiss="alert">&times;</button>
<strong>Holy guacamole!</strong> Best check yo self, you're not looking too good.
</div>
<div class="alert alert-block alert-error fade in">
- <a class="close" data-dismiss="alert" href="#">&times;</a>
+ <button class="close" data-dismiss="alert">&times;</button>
<h4 class="alert-heading">Oh snap! You got an error!</h4>
<p>Change this and that and try again. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras mattis consectetur purus sit amet fermentum.</p>
<p>
@@ -1039,7 +1088,7 @@ $('#my-alert').bind('closed', function () {
<hr>
<h2>Using bootstrap-button.js</h2>
<p>Enable buttons via javascript:</p>
- <pre class="prettyprint linenums">$('.tabs').button()</pre>
+ <pre class="prettyprint linenums">$('.nav-tabs').button()</pre>
<h3>Markup</h3>
<p>Data attributes are integral to the button plugin. Check out the example code below for the various markup types.</p>
<pre class="prettyprint linenums">
@@ -1101,7 +1150,8 @@ $('#my-alert').bind('closed', function () {
<h3>About</h3>
<p>Get base styles and flexible support for collapsible components like accordions and navigation.</p>
<a href="assets/js/bootstrap-collapse.js" target="_blank" class="btn">Download file</a>
- </div>
+ <p class="muted"><strong>*</strong> Requires the Transitions plugin to be included.</p>
+ </div>
<div class="span9 columns">
<h2>Example accordion</h2>
<p>Using the collapse plugin, we built a simple accordion style widget:</p>
@@ -1308,7 +1358,7 @@ $('#myCollapsible').on('hidden', function () {
<td>interval</td>
<td>number</td>
<td>5000</td>
- <td>The amount of time to delay between automatically cycling an item.</td>
+ <td>The amount of time to delay between automatically cycling an item. If false, carousel will not automatically cycle.</td>
</tr>
<tr>
<td>pause</td>
diff --git a/docs/less.html b/docs/less.html
index f8e4d9b33..3fecd1ade 100644
--- a/docs/less.html
+++ b/docs/less.html
@@ -20,6 +20,7 @@
<!-- Le fav and touch icons -->
<link rel="shortcut icon" href="assets/ico/favicon.ico">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144" href="assets/ico/apple-touch-icon-144-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/ico/apple-touch-icon-114-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
@@ -39,7 +40,7 @@
<span class="icon-bar"></span>
</a>
<a class="brand" href="./index.html">Bootstrap</a>
- <div class="nav-collapse">
+ <div class="nav-collapse collapse">
<ul class="nav">
<li class="">
<a href="./index.html">Overview</a>
@@ -139,12 +140,24 @@
<div class="row">
<div class="span6">
- <h3>Hyperlinks</h3>
+ <h3>Scaffolding and links</h3>
<table class="table table-bordered table-striped">
<tbody>
<tr>
- <td class="span2"><code>@linkColor</code></td>
- <td>#08c</td>
+ <td class="span2"><code>@bodyBackground</code></td>
+ <td><code>@white</code></td>
+ <td>Page background color</td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #fff;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@textColor</code></td>
+ <td><code>@grayDark</code></td>
+ <td>Default text color for entire body, headings, and more</td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #333;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@linkColor</code></td>
+ <td><code>#08c</code></td>
<td>Default link text color</td>
<td class="swatch-col"><span class="swatch" style="background-color: #08c;"></span></td>
</tr>
@@ -185,16 +198,69 @@
<table class="table table-bordered table-striped">
<tbody>
<tr>
+ <td class="span2"><code>@sansFontFamily</code></td>
+ <td colspan="2">"Helvetica Neue", Helvetica, Arial, sans-serif</td>
+ </tr>
+ <tr>
+ <td><code>@serifFontFamily</code></td>
+ <td colspan="2"><code>Georgia, "Times New Roman", Times, serif</code></td>
+ </tr>
+ <tr>
+ <td><code>@monoFontFamily</code></td>
+ <td colspan="2">Menlo, Monaco, "Courier New", monospace</td>
+ </tr>
+
+ <tr>
<td class="span2"><code>@baseFontSize</code></td>
<td>13px</td>
+ <td><em class="muted">Must be pixels</em></td>
</tr>
<tr>
<td><code>@baseFontFamily</code></td>
- <td><code>"Helvetica Neue", Helvetica, Arial, sans-serif</code></td>
+ <td colspan="2"><code>@sansFontFamily</code></td>
</tr>
<tr>
<td><code>@baseLineHeight</code></td>
<td>18px</td>
+ <td><em class="muted">Must be pixels</em></td>
+ </tr>
+ <tr>
+ <td><code>@altFontFamily</code></td>
+ <td colspan="2"><code>@serifFontFamily</code></td>
+ </tr>
+
+ <tr>
+ <td class="span2"><code>@headingsFontFamily</code></td>
+ <td colspan="2"><code>inherit</code></td>
+ </tr>
+ <tr>
+ <td><code>@headingsFontWeight</code></td>
+ <td colspan="2"><code>bold</code></td>
+ </tr>
+ <tr>
+ <td><code>@headingsColor</code></td>
+ <td colspan="2"><code>inherit</code></td>
+ </tr>
+ </tbody>
+ </table>
+ <h3>Tables</h3>
+ <table class="table table-bordered table-striped">
+ <tbody>
+ <tr>
+ <td class="span2"><code>@tableBackground</code></td>
+ <td><code>transparent</code></td>
+ </tr>
+ <tr>
+ <td><code>@tableBackgroundAccent</code></td>
+ <td><code>#f9f9f9</code></td>
+ </tr>
+ <tr>
+ <td><code>@tableBackgroundHover</code></td>
+ <td><code>#f5f5f5</code></td>
+ </tr>
+ <tr>
+ <td><code>@tableBorder</code></td>
+ <td><code>ddd</code></td>
</tr>
</tbody>
</table>
@@ -290,10 +356,86 @@
<table class="table table-bordered table-striped">
<tbody>
<tr>
- <td class="span3"><code>@primaryButtonBackground</code></td>
+ <td class="span3"><code>@btnBackground</code></td>
+ <td><code>@white</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #fff;"></span></td>
+ </tr>
+ <tr>
+ <td class="span3"><code>@btnBackgroundHighlight</code></td>
+ <td><code>darken(@white, 10%)</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #e6e6e6;"></span></td>
+ </tr>
+ <tr>
+ <td class="span3"><code>@btnBorder</code></td>
+ <td><code>darken(@white, 20%)</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #ccc;"></span></td>
+ </tr>
+
+ <tr>
+ <td class="span3"><code>@btnPrimaryBackground</code></td>
<td><code>@linkColor</code></td>
<td class="swatch-col"><span class="swatch" style="background-color: #08c;"></span></td>
</tr>
+ <tr>
+ <td class="span3"><code>@btnPrimaryBackgroundHighlight</code></td>
+ <td><code>spin(@btnPrimaryBackground, 15%)</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #05c;"></span></td>
+ </tr>
+
+ <tr>
+ <td class="span3"><code>@btnInfoBackground</code></td>
+ <td><code>#5bc0de</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #5bc0de;"></span></td>
+ </tr>
+ <tr>
+ <td class="span3"><code>@btnInfoBackgroundHighlight</code></td>
+ <td><code>#2f96b4</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #2f96b4;"></span></td>
+ </tr>
+
+ <tr>
+ <td class="span3"><code>@btnSuccessBackground</code></td>
+ <td><code>#62c462</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #62c462;"></span></td>
+ </tr>
+ <tr>
+ <td class="span3"><code>@btnSuccessBackgroundHighlight</code></td>
+ <td><code>51a351</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #51a351;"></span></td>
+ </tr>
+
+ <tr>
+ <td class="span3"><code>@btnWarningBackground</code></td>
+ <td><code>lighten(@orange, 15%)</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #fbb450;"></span></td>
+ </tr>
+ <tr>
+ <td class="span3"><code>@btnWarningBackgroundHighlight</code></td>
+ <td><code>@orange</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #f89406;"></span></td>
+ </tr>
+
+ <tr>
+ <td class="span3"><code>@btnDangerBackground</code></td>
+ <td><code>#ee5f5b</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #ee5f5b;"></span></td>
+ </tr>
+ <tr>
+ <td class="span3"><code>@btnDangerBackgroundHighlight</code></td>
+ <td><code>#bd362f</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #bd362f;"></span></td>
+ </tr>
+
+ <tr>
+ <td class="span3"><code>@btnInverseBackground</code></td>
+ <td><code>@gray</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #555;"></span></td>
+ </tr>
+ <tr>
+ <td class="span3"><code>@btnInverseBackgroundHighlight</code></td>
+ <td><code>@grayDarker</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #222;"></span></td>
+ </tr>
</tbody>
</table>
<h4>Forms</h4>
@@ -302,47 +444,29 @@
<tr>
<td class="span3"><code>@placeholderText</code></td>
<td><code>@grayLight</code></td>
- <td class="swatch-col"><span class="swatch" style="background-color: #999;"></span></td>
- </tr>
- </tbody>
- </table>
- <h4>Navbar</h4>
- <table class="table table-bordered table-striped">
- <tbody>
- <tr>
- <td class="span3"><code>@navbarHeight</code></td>
- <td>40px</td>
- <td class="swatch-col"></td>
</tr>
<tr>
- <td><code>@navbarBackground</code></td>
- <td><code>@grayDarker</code></td>
- <td><span class="swatch" style="background-color: #222;"></span></td>
+ <td><code>@inputBackground</code></td>
+ <td><code>@white</code></td>
</tr>
<tr>
- <td><code>@navbarBackgroundHighlight</code></td>
- <td><code>@grayDark</code></td>
- <td><span class="swatch" style="background-color: #333;"></span></td>
+ <td><code>@inputBorder</code></td>
+ <td><code>#ccc</code></td>
</tr>
<tr>
- <td><code>@navbarText</code></td>
- <td><code>@grayLight</code></td>
- <td><span class="swatch" style="background-color: #999;"></span></td>
+ <td><code>@inputBorderRadius</code></td>
+ <td><code>3px</code></td>
</tr>
<tr>
- <td><code>@navbarLinkColor</code></td>
- <td><code>@grayLight</code></td>
- <td><span class="swatch" style="background-color: #999;"></span></td>
+ <td><code>@inputDisabledBackground</code></td>
+ <td><code>@grayLighter</code></td>
</tr>
<tr>
- <td><code>@navbarLinkColorHover</code></td>
- <td><code>@white</code></td>
- <td><span class="swatch swatch-bordered" style="background-color: #fff;"></span></td>
+ <td><code>@formActionsBackground</code></td>
+ <td><code>#f5f5f5</code></td>
</tr>
</tbody>
</table>
- </div>
- <div class="span6">
<h4>Form states and alerts</h4>
<table class="table table-bordered table-striped">
<tbody>
@@ -389,6 +513,130 @@
</tbody>
</table>
</div>
+ <div class="span6">
+ <h4>Navbar</h4>
+ <table class="table table-bordered table-striped">
+ <tbody>
+ <tr>
+ <td class="span3"><code>@navbarHeight</code></td>
+ <td>40px</td>
+ <td class="swatch-col"></td>
+ </tr>
+ <tr>
+ <td><code>@navbarBackground</code></td>
+ <td><code>@grayDarker</code></td>
+ <td><span class="swatch" style="background-color: #222;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@navbarBackgroundHighlight</code></td>
+ <td><code>@grayDark</code></td>
+ <td><span class="swatch" style="background-color: #333;"></span></td>
+ </tr>
+
+ <tr>
+ <td><code>@navbarText</code></td>
+ <td><code>@grayLight</code></td>
+ <td><span class="swatch" style="background-color: #999;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@navbarLinkColor</code></td>
+ <td><code>@grayLight</code></td>
+ <td><span class="swatch" style="background-color: #999;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@navbarLinkColorHover</code></td>
+ <td><code>@white</code></td>
+ <td><span class="swatch swatch-bordered" style="background-color: #fff;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@navbarLinkColorActive</code></td>
+ <td><code>@navbarLinkColorHover</code></td>
+ <td><span class="swatch swatch-bordered" style="background-color: #fff;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@navbarLinkBackgroundHover</code></td>
+ <td><code>transparent</code></td>
+ <td><span class="swatch swatch-bordered" style="background-color: transparent;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@navbarLinkBackgroundActive</code></td>
+ <td><code>@navbarBackground</code></td>
+ <td><span class="swatch swatch-bordered" style="background-color: #fff;"></span></td>
+ </tr>
+
+ <tr>
+ <td><code>@navbarSearchBackground</code></td>
+ <td><code>lighten(@navbarBackground, 25%)</code></td>
+ <td><span class="swatch" style="background-color: #666;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@navbarSearchBackgroundFocus</code></td>
+ <td><code>@white</code></td>
+ <td><span class="swatch swatch-bordered" style="background-color: #fff;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@navbarSearchBorder</code></td>
+ <td><code>darken(@navbarSearchBackground, 30%)</code></td>
+ <td><span class="swatch" style="background-color: #111;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@navbarSearchPlaceholderColor</code></td>
+ <td><code>#ccc</code></td>
+ <td><span class="swatch" style="background-color: #ccc;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@navbarBrandColor</code></td>
+ <td><code>@navbarLinkColor</code></td>
+ <td><span class="swatch swatch-bordered" style="background-color: #fff;"></span></td>
+ </tr>
+ </tbody>
+ </table>
+ <h4>Dropdowns</h4>
+ <table class="table table-bordered table-striped">
+ <tbody>
+ <tr>
+ <td class="span2"><code>@dropdownBackground</code></td>
+ <td><code>@white</code></td>
+ </tr>
+ <tr>
+ <td><code>@dropdownBorder</code></td>
+ <td><code>rgba(0,0,0,.2)</code></td>
+ </tr>
+ <tr>
+ <td><code>@dropdownLinkColor</code></td>
+ <td><code>@grayDark</code></td>
+ </tr>
+ <tr>
+ <td><code>@dropdownLinkColorHover</code></td>
+ <td><code>@white</code></td>
+ </tr>
+ <tr>
+ <td><code>@dropdownLinkBackgroundHover</code></td>
+ <td><code>@linkColor</code></td>
+ </tr>
+ </tbody>
+ </table>
+ <h4>Hero unit</h4>
+ <table class="table table-bordered table-striped">
+ <tbody>
+ <tr>
+ <td class="span3"><code>@heroUnitBackground</code></td>
+ <td><code>@grayLighter</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #eee;"></span></td>
+ </tr>
+ <tr>
+ <td class="span2"><code>@heroUnitHeadingColor</code></td>
+ <td><code>inherit</code></td>
+ <td></td>
+ </tr>
+ <tr>
+ <td><code>@heroUnitLeadColor</code></td>
+ <td><code>inhereit</code></td>
+ <td></td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
</div><!-- /row -->
</section>
@@ -460,17 +708,17 @@
</tr>
<tr>
<td><code>.size()</code></td>
- <td><code>@height: 5px, @width: 5px</code></td>
+ <td><code>@height @width</code></td>
<td>Quickly set the height and width on one line</td>
</tr>
<tr>
<td><code>.square()</code></td>
- <td><code>@size: 5px</code></td>
+ <td><code>@size</code></td>
<td>Builds on <code>.size()</code> to set the width and height as same value</td>
</tr>
<tr>
<td><code>.opacity()</code></td>
- <td><code>@opacity: 100</code></td>
+ <td><code>@opacity</code></td>
<td>Set, in whole numbers, the opacity percentage (e.g., "50" or "75")</td>
</tr>
</tbody>
@@ -564,6 +812,16 @@
<td><code>@fluidGridColumnWidth, @fluidGridGutterWidth</code></td>
<td>Generate a precent grid system with <em>n</em> columns and <em>x</em> % wide gutter</td>
</tr>
+ <tr>
+ <td><code>#grid > .input()</code></td>
+ <td><code>@gridColumnWidth, @gridGutterWidth</code></td>
+ <td>Generate the pixel grid system for <code>input</code> elements, accounting for padding and borders</td>
+ </tr>
+ <tr>
+ <td><code>.makeColumn</code></td>
+ <td><code>@columns: 1, @offset: 0</code></td>
+ <td>Turn any <code>div</code> into a grid column without the <code>.span*</code> classes</td>
+ </tr>
</tbody>
</table>
<h3>CSS3 properties</h3>
@@ -578,12 +836,12 @@
<tbody>
<tr>
<td><code>.border-radius()</code></td>
- <td><code>@radius: 5px</code></td>
+ <td><code>@radius</code></td>
<td>Round the corners of an element. Can be a single value or four space-separated values</td>
</tr>
<tr>
<td><code>.box-shadow()</code></td>
- <td><code>@shadow: 0 1px 3px rgba(0,0,0,.25)</code></td>
+ <td><code>@shadow</code></td>
<td>Add a drop shadow to an element</td>
</tr>
<tr>
@@ -603,7 +861,7 @@
</tr>
<tr>
<td><code>.translate()</code></td>
- <td><code>@x: 0, @y: 0</code></td>
+ <td><code>@x, @y</code></td>
<td>Move an element on the x and y planes</td>
</tr>
<tr>
@@ -627,13 +885,18 @@
<td>Control cursor selection of text on a page</td>
</tr>
<tr>
+ <td><code>.backface-visibility()</code></td>
+ <td><code>@visibility: visible</code></td>
+ <td>Prevent flickering of content when using CSS 3D transforms</td>
+ </tr>
+ <tr>
<td><code>.resizable()</code></td>
<td><code>@direction: both</code></td>
<td>Make any element resizable on the right and bottom</td>
</tr>
<tr>
<td><code>.content-columns()</code></td>
- <td><code>@columnCount, @columnGap: @gridColumnGutter</code></td>
+ <td><code>@columnCount, @columnGap: @gridGutterWidth</code></td>
<td>Make the content of any element use CSS3 columns</td>
</tr>
</tbody>
@@ -720,7 +983,7 @@
<div class="span4">
<h3>Command line</h3>
<p>Install the LESS command line tool via Node and run the following command:</p>
- <pre>$ lessc ./lib/bootstrap.less > bootstrap.css</pre>
+ <pre>$ lessc ./less/bootstrap.less > bootstrap.css</pre>
<p>Be sure to include <code>--compress</code> in that command if you're trying to save some bytes!</p>
</div><!-- /span4 -->
<div class="span4">
diff --git a/docs/scaffolding.html b/docs/scaffolding.html
index 29491c118..caffa6af6 100644
--- a/docs/scaffolding.html
+++ b/docs/scaffolding.html
@@ -20,6 +20,7 @@
<!-- Le fav and touch icons -->
<link rel="shortcut icon" href="assets/ico/favicon.ico">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144" href="assets/ico/apple-touch-icon-144-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/ico/apple-touch-icon-114-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
@@ -39,7 +40,7 @@
<span class="icon-bar"></span>
</a>
<a class="brand" href="./index.html">Bootstrap</a>
- <div class="nav-collapse">
+ <div class="nav-collapse collapse">
<ul class="nav">
<li class="">
<a href="./index.html">Overview</a>
@@ -172,7 +173,7 @@
<div class="row">
<div class="span4">
<p>The default grid system provided as part of Bootstrap is a <strong>940px-wide, 12-column grid</strong>.</p>
- <p>It also has four responsive variations for various devices and resolutions: phone, tablet portrait, table landscape and small desktops, and large widescreen desktops.</p>
+ <p>It also has four responsive variations for various devices and resolutions: phone, tablet portrait, tablet landscape and small desktops, and large widescreen desktops.</p>
</div><!-- /.span -->
<div class="span4">
<pre class="prettyprint linenums">
@@ -183,7 +184,7 @@
</pre>
</div><!-- /.span -->
<div class="span4">
- <p>As shown here, a basic layout can be created with two "columns," each spanning a number of the 12 foundational columns we defined as part of our grid system.</p>
+ <p>As shown here, a basic layout can be created with two "columns", each spanning a number of the 12 foundational columns we defined as part of our grid system.</p>
</div><!-- /.span -->
</div><!-- /.row -->
@@ -374,11 +375,6 @@
<td>20px</td>
<td>Negative space between columns</td>
</tr>
- <tr>
- <td><code>@siteWidth</code></td>
- <td><em>Computed sum of all columns and gutters</em></td>
- <td>Counts number of columns and gutters to set width of the <code>.container-fixed()</code> mixin</td>
- </tr>
</tbody>
</table>
<div class="row">
@@ -537,13 +533,13 @@
@media (max-width: 480px) { ... }
// Landscape phone to portrait tablet
- @media (max-width: 768px) { ... }
+ @media (max-width: 767px) { ... }
// Portrait tablet to landscape and desktop
- @media (min-width: 768px) and (max-width: 980px) { ... }
+ @media (min-width: 768px) and (max-width: 979px) { ... }
// Large desktop
- @media (min-width: 1200px) { .. }
+ @media (min-width: 1200px) { ... }
</pre>
</div><!-- /.span -->
</div><!-- /.row -->
@@ -554,7 +550,7 @@
<div class="row">
<div class="span4">
<h3>What are they</h2>
- <p>For faster mobile-friendly development, use these basic utility classes for showing and hidding content by device.</p>
+ <p>For faster mobile-friendly development, use these basic utility classes for showing and hiding content by device.</p>
<h3>When to use</h2>
<p>Use on a limited basis and avoid creating entirely different versions of the same site. Instead, use them to complement each device's presentation.</p>
<p>For example, you might show a <code>&lt;select&gt;</code> element for nav on mobile layouts, but not on tablets or desktops.</p>
@@ -611,14 +607,16 @@
</tbody>
</table>
<h3>Test case</h3>
- <p>Resize your browser or load on different devices to test the above clases.</p>
+ <p>Resize your browser or load on different devices to test the above classes.</p>
<h4>Visible on...</h4>
+ <p>Green checkmarks indicate that class is visible in your current viewport.</p>
<ul class="responsive-utilities-test">
<li>Phone<span class="visible-phone">&#10004; Phone</span></li>
<li>Tablet<span class="visible-tablet">&#10004; Tablet</span></li>
<li>Desktop<span class="visible-desktop">&#10004; Desktop</span></li>
</ul>
<h4>Hidden on...</h4>
+ <p>Here, green checkmarks indicate that class is hidden in your current viewport.</p>
<ul class="responsive-utilities-test hidden-on">
<li>Phone<span class="hidden-phone">&#10004; Phone</span></li>
<li>Tablet<span class="hidden-tablet">&#10004; Tablet</span></li>
@@ -627,7 +625,7 @@
</div><!-- /.span -->
</div><!-- /.row -->
-
+
<div class="row">
<div class="span4">
</div><!-- /.span -->
diff --git a/docs/templates/layout.mustache b/docs/templates/layout.mustache
index 3434bdcbf..4fdaadb3b 100644
--- a/docs/templates/layout.mustache
+++ b/docs/templates/layout.mustache
@@ -20,6 +20,7 @@
<!-- Le fav and touch icons -->
<link rel="shortcut icon" href="assets/ico/favicon.ico">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144" href="assets/ico/apple-touch-icon-144-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/ico/apple-touch-icon-114-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
@@ -39,7 +40,7 @@
<span class="icon-bar"></span>
</a>
<a class="brand" href="./index.html">Bootstrap</a>
- <div class="nav-collapse">
+ <div class="nav-collapse collapse">
<ul class="nav">
<li class="{{index}}">
<a href="./index.html">{{_i}}Overview{{/i}}</a>
diff --git a/docs/templates/pages/base-css.mustache b/docs/templates/pages/base-css.mustache
index 9b2964d74..3524ac985 100644
--- a/docs/templates/pages/base-css.mustache
+++ b/docs/templates/pages/base-css.mustache
@@ -294,7 +294,14 @@
<dd>Donec id elit non mi porta gravida at eget metus.</dd>
<dt>Malesuada porta</dt>
<dd>Etiam porta sem malesuada magna mollis euismod.</dd>
+ <dt>Felis euismod semper eget lacinia</dt>
+ <dd>Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</dd>
</dl>
+ <hr>
+ <p>
+ <span class="label label-info">{{_i}}Heads up!{{/i}}</span>
+ {{_i}}Horizontal description lists will truncate terms that are too long to fit in the left column fix <code>text-overflow</code>. In narrower viewports, they will change to the default stacked layout.{{/i}}
+ </p>
</div>
</div><!-- /row -->
</section>
@@ -798,14 +805,12 @@
<h2>{{_i}}Example forms <small>using just form controls, no extra markup</small>{{/i}}</h2>
<div class="row">
- <div class="span3">
+ <div class="span6">
<h3>{{_i}}Basic form{{/i}}</h3>
- <p>{{_i}}With v2.0, we have lighter and smarter defaults for form styles. No extra markup, just form controls.{{/i}}</p>
- </div>
- <div class="span9">
+ <p>{{_i}}Smart and lightweight defaults without extra markup.{{/i}}</p>
<form class="well">
<label>{{_i}}Label name{{/i}}</label>
- <input type="text" class="span3" placeholder="{{_i}}Type something…{{/i}}"> <span class="help-inline">Associated help text!</span>
+ <input type="text" class="span3" placeholder="{{_i}}Type something…{{/i}}">
<p class="help-block">{{_i}}Example block-level help text here.{{/i}}</p>
<label class="checkbox">
<input type="checkbox"> {{_i}}Check me out{{/i}}
@@ -816,39 +821,30 @@
&lt;form class="well"&gt;
&lt;label&gt;{{_i}}Label name{{/i}}&lt;/label&gt;
&lt;input type="text" class="span3" placeholder="{{_i}}Type something…{{/i}}"&gt;
- &lt;span class="help-inline"&gt;Associated help text!&lt;/span&gt;
+ &lt;span class="help-block"&gt;Example block-level help text here.&lt;/span&gt;
&lt;label class="checkbox"&gt;
&lt;input type="checkbox"&gt; {{_i}}Check me out{{/i}}
&lt;/label&gt;
&lt;button type="submit" class="btn"&gt;{{_i}}Submit{{/i}}&lt;/button&gt;
&lt;/form&gt;
</pre>
- </div>
- </div> <!-- /row -->
- <div class="row">
- <div class="span3">
- <h3>{{_i}}Search form{{/i}}</h3>
- <p>{{_i}}Reflecting default WebKit styles, just add <code>.form-search</code> for extra rounded search fields.{{/i}}</p>
- </div>
- <div class="span9">
- <form class="well form-search">
- <input type="text" class="input-medium search-query">
- <button type="submit" class="btn">{{_i}}Search{{/i}}</button>
- </form>
+ </div>
+ <div class="span6">
+ <h3>{{_i}}Search form{{/i}}</h3>
+ <p>{{_i}}Add <code>.form-search</code> to the form and <code>.search-query</code> to the <code>input</code>.{{/i}}</p>
+ <form class="well form-search">
+ <input type="text" class="input-medium search-query">
+ <button type="submit" class="btn">{{_i}}Search{{/i}}</button>
+ </form>
<pre class="prettyprint linenums">
&lt;form class="well form-search"&gt;
&lt;input type="text" class="input-medium search-query"&gt;
&lt;button type="submit" class="btn"&gt;{{_i}}Search{{/i}}&lt;/button&gt;
&lt;/form&gt;
</pre>
- </div>
- </div> <!-- /row -->
- <div class="row">
- <div class="span3">
+
<h3>{{_i}}Inline form{{/i}}</h3>
- <p>{{_i}}Inputs are block level to start. For <code>.form-inline</code> and <code>.form-horizontal</code>, we use inline-block.{{/i}}</p>
- </div>
- <div class="span9">
+ <p>{{_i}}Add <code>.form-inline</code> to finesse the vertical alignment and spacing of form controls.{{/i}}</p>
<form class="well form-inline">
<input type="text" class="input-small" placeholder="{{_i}}Email{{/i}}">
<input type="password" class="input-small" placeholder="{{_i}}Password{{/i}}">
@@ -867,17 +863,29 @@
&lt;button type="submit" class="btn"&gt;{{_i}}Sign in{{/i}}&lt;/button&gt;
&lt;/form&gt;
</pre>
- </div>
+ </div><!-- /.span -->
</div><!-- /row -->
<br>
<h2>{{_i}}Horizontal forms{{/i}}</h2>
<div class="row">
+ <div class="span4">
+ <p>{{_i}}{{/i}}</p>
+ <p>{{_i}}Shown on the right are all the default form controls we support. Here's the bulleted list:{{/i}}</p>
+ <ul>
+ <li>{{_i}}text inputs (text, password, email, etc){{/i}}</li>
+ <li>{{_i}}checkbox{{/i}}</li>
+ <li>{{_i}}radio{{/i}}</li>
+ <li>{{_i}}select{{/i}}</li>
+ <li>{{_i}}multiple select{{/i}}</li>
+ <li>{{_i}}file input{{/i}}</li>
+ <li>{{_i}}textarea{{/i}}</li>
+ </ul>
+ </div><!-- /.span -->
<div class="span8">
<form class="form-horizontal">
<fieldset>
- <legend>{{_i}}Controls Bootstrap supports{{/i}}</legend>
<div class="control-group">
<label class="control-label" for="input01">{{_i}}Text input{{/i}}</label>
<div class="controls">
@@ -953,31 +961,27 @@
&lt;/form&gt;
</pre>
</div>
- <div class="span4">
- <h3>{{_i}}What's included{{/i}}</h3>
- <p>{{_i}}Shown on the left are all the default form controls we support. Here's the bulleted list:{{/i}}</p>
- <ul>
- <li>{{_i}}text inputs (text, password, email, etc){{/i}}</li>
- <li>{{_i}}checkbox{{/i}}</li>
- <li>{{_i}}radio{{/i}}</li>
- <li>{{_i}}select{{/i}}</li>
- <li>{{_i}}multiple select{{/i}}</li>
- <li>{{_i}}file input{{/i}}</li>
- <li>{{_i}}textarea{{/i}}</li>
- </ul>
- <hr>
- <h3>{{_i}}New defaults with v2.0{{/i}}</h3>
- <p>{{_i}}Up to v1.4, Bootstrap's default form styles used the horizontal layout. With Bootstrap 2, we removed that constraint to have smarter, more scalable defaults for any form.{{/i}}</p>
- </div>
</div>
<br>
+ <h2>{{_i}}Form control states{{/i}}</h2>
<div class="row">
+ <div class="span4">
+ <p>{{_i}}Bootstrap features styles for browser-supported focused and <code>disabled</code> states. We remove the default Webkit <code>outline</code> and apply a <code>box-shadow</code> in its place for <code>:focus</code>.{{/i}}</p>
+ <hr>
+ <h3>{{_i}}Form validation{{/i}}</h3>
+ <p>{{_i}}It also includes validation styles for errors, warnings, and success. To use, add the error class to the surrounding <code>.control-group</code>.{{/i}}</p>
+<pre class="prettyprint linenums">
+&lt;fieldset
+ class="control-group error"&gt;
+ …
+&lt;/fieldset&gt;
+</pre>
+ </div>
<div class="span8">
<form class="form-horizontal">
<fieldset>
- <legend>{{_i}}Form control states{{/i}}</legend>
<div class="control-group">
<label class="control-label" for="focusedInput">{{_i}}Focused input{{/i}}</label>
<div class="controls">
@@ -1046,28 +1050,29 @@
</fieldset>
</form>
</div>
- <div class="span4">
- <h3>{{_i}}Redesigned browser states{{/i}}</h3>
- <p>{{_i}}Bootstrap features styles for browser-supported focused and <code>disabled</code> states. We remove the default Webkit <code>outline</code> and apply a <code>box-shadow</code> in its place for <code>:focus</code>.{{/i}}</p>
- <hr>
- <h3>{{_i}}Form validation{{/i}}</h3>
- <p>{{_i}}It also includes validation styles for errors, warnings, and success. To use, add the error class to the surrounding <code>.control-group</code>.{{/i}}</p>
-<pre class="prettyprint linenums">
-&lt;fieldset
- class="control-group error"&gt;
- …
-&lt;/fieldset&gt;
-</pre>
- </div>
</div>
<br>
+ <h2>{{_i}}Extending form controls{{/i}}</h2>
<div class="row">
+ <div class="span4">
+ <h3>{{_i}}Prepend &amp; append inputs{{/i}}</h3>
+ <p>{{_i}}Input groups&mdash;with appended or prepended text&mdash;provide an easy way to give more context for your inputs. Great examples include the @ sign for Twitter usernames or $ for finances.{{/i}}</p>
+ <hr>
+ <h3>{{_i}}Checkboxes and radios{{/i}}</h3>
+ <p>{{_i}}Up to v1.4, Bootstrap required extra markup around checkboxes and radios to stack them. Now, it's a simple matter of repeating the <code>&lt;label class="checkbox"&gt;</code> that wraps the <code>&lt;input type="checkbox"&gt;</code>.{{/i}}</p>
+ <p>{{_i}}Inline checkboxes and radios are also supported. Just add <code>.inline</code> to any <code>.checkbox</code> or <code>.radio</code> and you're done.{{/i}}</p>
+ <hr>
+ <h4>{{_i}}Inline forms and append/prepend{{/i}}</h4>
+ <p>{{_i}}To use prepend or append inputs in an inline form, be sure to place the <code>.add-on</code> and <code>input</code> on the same line, without spaces.{{/i}}</p>
+ <hr>
+ <h4>{{_i}}Form help text{{/i}}</h4>
+ <p>{{_i}}To add help text for your form inputs, include inline help text with <code>&lt;span class="help-inline"&gt;</code> or a help text block with <code>&lt;p class="help-block"&gt;</code> after the input element.{{/i}}</p>
+ </div>
<div class="span8">
<form class="form-horizontal">
<fieldset>
- <legend>{{_i}}Extending form controls{{/i}}</legend>
<div class="control-group">
<label class="control-label">{{_i}}Form grid sizes{{/i}}</label>
<div class="controls docs-input-sizes">
@@ -1134,10 +1139,18 @@
</div>
</div>
<div class="control-group">
- <label class="control-label" for="appendedPrependedInput">{{_i}}Append with button{{/i}}</label>
+ <label class="control-label" for="appendedInputButton">{{_i}}Append with button{{/i}}</label>
+ <div class="controls">
+ <div class="input-append">
+ <input class="span2" id="appendedInputButton" size="16" type="text"><button class="btn" type="button">Go!</button>
+ </div>
+ </div>
+ </div>
+ <div class="control-group">
+ <label class="control-label" for="appendedInputButtons">{{_i}}Two-button append{{/i}}</label>
<div class="controls">
<div class="input-append">
- <input class="span2" id="appendedPrependedInput" size="16" type="text"><button class="btn" type="button">Go!</button>
+ <input class="span2" id="appendedInputButtons" size="16" type="text"><button class="btn" type="button">Search</button><button class="btn" type="button">Options</button>
</div>
</div>
</div>
@@ -1193,20 +1206,6 @@
</fieldset>
</form>
</div>
- <div class="span4">
- <h3>{{_i}}Prepend &amp; append inputs{{/i}}</h3>
- <p>{{_i}}Input groups&mdash;with appended or prepended text&mdash;provide an easy way to give more context for your inputs. Great examples include the @ sign for Twitter usernames or $ for finances.{{/i}}</p>
- <hr>
- <h3>{{_i}}Checkboxes and radios{{/i}}</h3>
- <p>{{_i}}Up to v1.4, Bootstrap required extra markup around checkboxes and radios to stack them. Now, it's a simple matter of repeating the <code>&lt;label class="checkbox"&gt;</code> that wraps the <code>&lt;input type="checkbox"&gt;</code>.{{/i}}</p>
- <p>{{_i}}Inline checkboxes and radios are also supported. Just add <code>.inline</code> to any <code>.checkbox</code> or <code>.radio</code> and you're done.{{/i}}</p>
- <hr>
- <h4>{{_i}}Inline forms and append/prepend{{/i}}</h4>
- <p>{{_i}}To use prepend or append inputs in an inline form, be sure to place the <code>.add-on</code> and <code>input</code> on the same line, without spaces.{{/i}}</p>
- <hr>
- <h4>{{_i}}Form help text{{/i}}</h4>
- <p>{{_i}}To add help text for your form inputs, include inline help text with <code>&lt;span class="help-inline"&gt;</code> or a help text block with <code>&lt;p class="help-block"&gt;</code> after the input element.{{/i}}</p>
- </div>
</div><!-- /row -->
</section>
@@ -1240,7 +1239,7 @@
<tr>
<td><button class="btn btn-info" href="#">{{_i}}Info{{/i}}</button></td>
<td><code>btn btn-info</code></td>
- <td>{{_i}}Used as an alternate to the default styles{{/i}}</td>
+ <td>{{_i}}Used as an alternative to the default styles{{/i}}</td>
</tr>
<tr>
<td><button class="btn btn-success" href="#">{{_i}}Success{{/i}}</button></td>
@@ -1369,15 +1368,15 @@
<li><i class="icon-inbox"></i> icon-inbox</li>
<li><i class="icon-play-circle"></i> icon-play-circle</li>
<li><i class="icon-repeat"></i> icon-repeat</li>
- </ul>
- </div>
- <div class="span3">
- <ul class="the-icons">
<li><i class="icon-refresh"></i> icon-refresh</li>
<li><i class="icon-list-alt"></i> icon-list-alt</li>
<li><i class="icon-lock"></i> icon-lock</li>
<li><i class="icon-flag"></i> icon-flag</li>
<li><i class="icon-headphones"></i> icon-headphones</li>
+ </ul>
+ </div>
+ <div class="span3">
+ <ul class="the-icons">
<li><i class="icon-volume-off"></i> icon-volume-off</li>
<li><i class="icon-volume-down"></i> icon-volume-down</li>
<li><i class="icon-volume-up"></i> icon-volume-up</li>
@@ -1403,10 +1402,6 @@
<li><i class="icon-indent-right"></i> icon-indent-right</li>
<li><i class="icon-facetime-video"></i> icon-facetime-video</li>
<li><i class="icon-picture"></i> icon-picture</li>
- </ul>
- </div>
- <div class="span3">
- <ul class="the-icons">
<li><i class="icon-pencil"></i> icon-pencil</li>
<li><i class="icon-map-marker"></i> icon-map-marker</li>
<li><i class="icon-adjust"></i> icon-adjust</li>
@@ -1417,6 +1412,10 @@
<li><i class="icon-move"></i> icon-move</li>
<li><i class="icon-step-backward"></i> icon-step-backward</li>
<li><i class="icon-fast-backward"></i> icon-fast-backward</li>
+ </ul>
+ </div>
+ <div class="span3">
+ <ul class="the-icons">
<li><i class="icon-backward"></i> icon-backward</li>
<li><i class="icon-play"></i> icon-play</li>
<li><i class="icon-pause"></i> icon-pause</li>
@@ -1437,10 +1436,6 @@
<li><i class="icon-remove-circle"></i> icon-remove-circle</li>
<li><i class="icon-ok-circle"></i> icon-ok-circle</li>
<li><i class="icon-ban-circle"></i> icon-ban-circle</li>
- </ul>
- </div>
- <div class="span3">
- <ul class="the-icons">
<li><i class="icon-arrow-left"></i> icon-arrow-left</li>
<li><i class="icon-arrow-right"></i> icon-arrow-right</li>
<li><i class="icon-arrow-up"></i> icon-arrow-up</li>
@@ -1456,6 +1451,10 @@
<li><i class="icon-leaf"></i> icon-leaf</li>
<li><i class="icon-fire"></i> icon-fire</li>
<li><i class="icon-eye-open"></i> icon-eye-open</li>
+ </ul>
+ </div>
+ <div class="span3">
+ <ul class="the-icons">
<li><i class="icon-eye-close"></i> icon-eye-close</li>
<li><i class="icon-warning-sign"></i> icon-warning-sign</li>
<li><i class="icon-plane"></i> icon-plane</li>
@@ -1471,6 +1470,26 @@
<li><i class="icon-folder-open"></i> icon-folder-open</li>
<li><i class="icon-resize-vertical"></i> icon-resize-vertical</li>
<li><i class="icon-resize-horizontal"></i> icon-resize-horizontal</li>
+ <li><i class="icon-hdd"></i> icon-hdd</li>
+ <li><i class="icon-bullhorn"></i> icon-bullhorn</li>
+ <li><i class="icon-bell"></i> icon-bell</li>
+ <li><i class="icon-certificate"></i> icon-certificate</li>
+ <li><i class="icon-thumbs-up"></i> icon-thumbs-up</li>
+ <li><i class="icon-thumbs-down"></i> icon-thumbs-down</li>
+ <li><i class="icon-hand-right"></i> icon-hand-right</li>
+ <li><i class="icon-hand-left"></i> icon-hand-left</li>
+ <li><i class="icon-hand-up"></i> icon-hand-up</li>
+ <li><i class="icon-hand-down"></i> icon-hand-down</li>
+ <li><i class="icon-circle-arrow-right"></i> icon-circle-arrow-right</li>
+ <li><i class="icon-circle-arrow-left"></i> icon-circle-arrow-left</li>
+ <li><i class="icon-circle-arrow-up"></i> icon-circle-arrow-up</li>
+ <li><i class="icon-circle-arrow-down"></i> icon-circle-arrow-down</li>
+ <li><i class="icon-globe"></i> icon-globe</li>
+ <li><i class="icon-wrench"></i> icon-wrench</li>
+ <li><i class="icon-tasks"></i> icon-tasks</li>
+ <li><i class="icon-filter"></i> icon-filter</li>
+ <li><i class="icon-briefcase"></i> icon-briefcase</li>
+ <li><i class="icon-fullscreen"></i> icon-fullscreen</li>
</ul>
</div>
</div>
@@ -1563,8 +1582,7 @@
<label class="control-label" for="inputIcon">{{_i}}Email address{{/i}}</label>
<div class="controls">
<div class="input-prepend">
- <span class="add-on"><i class="icon-envelope"></i></span>
- <input class="span2" id="inputIcon" type="text">
+ <span class="add-on"><i class="icon-envelope"></i></span><input class="span2" id="inputIcon" type="text">
</div>
</div>
</div>
diff --git a/docs/templates/pages/components.mustache b/docs/templates/pages/components.mustache
index 1a7f5b91a..8e81a95df 100644
--- a/docs/templates/pages/components.mustache
+++ b/docs/templates/pages/components.mustache
@@ -345,7 +345,7 @@
</div><!-- /btn-group -->
</div><!-- /btn-toolbar -->
<h3>{{_i}}Sizes{{/i}}</h3>
- <p>{{_i}}Utilize the extra button classe <code>.btn-mini</code>, <code>.btn-small</code>, or <code>.btn-large</code> for sizing.{{/i}}</p>
+ <p>{{_i}}Utilize the extra button classes <code>.btn-mini</code>, <code>.btn-small</code>, or <code>.btn-large</code> for sizing.{{/i}}</p>
<div class="btn-toolbar">
<div class="btn-group">
<button class="btn btn-large">{{_i}}Large action{{/i}}</button>
@@ -563,16 +563,6 @@
<li><a href="#">{{_i}}Separated link{{/i}}</a></li>
</ul>
</li>
- <li class="dropdown">
- <a class="dropdown-toggle" data-toggle="dropdown" href="#">{{_i}}Dropup{{/i}} <b class="caret bottom-up"></b></a>
- <ul class="dropdown-menu bottom-up pull-right">
- <li><a href="#">{{_i}}Action{{/i}}</a></li>
- <li><a href="#">{{_i}}Another action{{/i}}</a></li>
- <li><a href="#">{{_i}}Something else here{{/i}}</a></li>
- <li class="divider"></li>
- <li><a href="#">{{_i}}Separated link{{/i}}</a></li>
- </ul>
- </li>
</ul>
<pre class="prettyprint linenums">
&lt;ul class="nav nav-tabs"&gt;
@@ -605,16 +595,6 @@
<li><a href="#">{{_i}}Separated link{{/i}}</a></li>
</ul>
</li>
- <li class="dropdown">
- <a class="dropdown-toggle" data-toggle="dropdown" href="#">{{_i}}Dropup{{/i}} <b class="caret bottom-up"></b></a>
- <ul class="dropdown-menu bottom-up pull-right">
- <li><a href="#">{{_i}}Action{{/i}}</a></li>
- <li><a href="#">{{_i}}Another action{{/i}}</a></li>
- <li><a href="#">{{_i}}Something else here{{/i}}</a></li>
- <li class="divider"></li>
- <li><a href="#">{{_i}}Separated link{{/i}}</a></li>
- </ul>
- </li>
</ul>
<pre class="prettyprint linenums">
&lt;ul class="nav nav-pills"&gt;
@@ -722,54 +702,58 @@
<h3>{{_i}}What's included{{/i}}</h3>
<p>{{_i}}Bring your tabs to life with a simple plugin to toggle between content via tabs. Bootstrap integrates tabbable tabs in four styles: top (default), right, bottom, and left.{{/i}}</p>
<p>{{_i}}Changing between them is easy and only requires changing very little markup.{{/i}}</p>
+ <hr>
+ <h4>{{_i}}Fade in tabs{{/i}}</h4>
+ <p>{{_i}}To make tabs fade in, add <code>.fade</code> to each <code>.tab-pane</code>.{{/i}}</p>
+ <hr>
+ <h4>{{_i}}Requires jQuery plugin{{/i}}</h4>
+ <p>{{_i}}All tabbable tabs are powered by our lightweight jQuery plugin. Read more about how to bring tabbable tabs to life <a href="./javascript.html#tabs">on the javascript docs page</a>.{{/i}}</p>
+ <p><a class="btn" href="./javascript.html#tabs">{{_i}}Get the javascript &rarr;{{/i}}</a></p>
</div>
- <div class="span4">
+ <div class="span8">
<h3>{{_i}}Tabbable example{{/i}}</h3>
- <p>{{_i}}To make tabs tabbable, wrap the <code>.nav-tabs</code> in another div with class <code>.tabbable</code>.{{/i}}</p>
- <div class="tabbable" style="margin-bottom: 9px;">
+ <p>{{_i}}To make tabs tabbable, create a <code>.tab-pane</code> with unique ID for every tab and wrap them in <code>.tab-content</code>.{{/i}}</p>
+ <div class="tabbable" style="margin-bottom: 18px;">
<ul class="nav nav-tabs">
- <li class="active"><a href="#1" data-toggle="tab">{{_i}}Section 1{{/i}}</a></li>
- <li><a href="#2" data-toggle="tab">{{_i}}Section 2{{/i}}</a></li>
- <li><a href="#3" data-toggle="tab">{{_i}}Section 3{{/i}}</a></li>
+ <li class="active"><a href="#tab1" data-toggle="tab">{{_i}}Section 1{{/i}}</a></li>
+ <li><a href="#tab2" data-toggle="tab">{{_i}}Section 2{{/i}}</a></li>
+ <li><a href="#tab3" data-toggle="tab">{{_i}}Section 3{{/i}}</a></li>
</ul>
- <div class="tab-content">
- <div class="tab-pane active" id="1">
+ <div class="tab-content" style="padding-bottom: 9px; border-bottom: 1px solid #ddd;">
+ <div class="tab-pane active" id="tab1">
<p>{{_i}}I'm in Section 1.{{/i}}</p>
</div>
- <div class="tab-pane" id="2">
+ <div class="tab-pane" id="tab2">
<p>{{_i}}Howdy, I'm in Section 2.{{/i}}</p>
</div>
- <div class="tab-pane" id="3">
+ <div class="tab-pane" id="tab3">
<p>{{_i}}What up girl, this is Section 3.{{/i}}</p>
</div>
</div>
</div> <!-- /tabbable -->
- </div>
- <div class="span4">
- <h3>{{_i}}Custom jQuery plugin{{/i}}</h3>
- <p>{{_i}}All tabbable tabs are powered by our lightweight jQuery plugin. Read more about how to bring tabbable tabs to life on the javascript docs page.{{/i}}</p>
- <p><a class="btn" href="./javascript.html#tabs">{{_i}}Get the javascript &rarr;{{/i}}</a></p>
- </div>
- </div>
+ <p>{{_i}}For right or left aligned tabs, wrap the <code>.nav-tabs</code> and <code>.tab-content</code> in <code>.tabbable</code>.{{/i}}</p>
- <h3>{{_i}}Straightforward markup{{/i}}</h3>
- <p>{{_i}}Using tabbable tabs requires a wrapping div, a set of tabs, and a set of tabbable panes of content.{{/i}}</p>
+ <h3>{{_i}}Straightforward markup{{/i}}</h3>
+ <p>{{_i}}Using tabbable tabs requires a wrapping div, a set of tabs, and a set of tabbable panes of content.{{/i}}</p>
<pre class="prettyprint linenums">
-&lt;div class="tabbable"&gt;
+&lt;div class="tabbable"&gt; &lt;-- Only required for left/right tabs --&gt;
&lt;ul class="nav nav-tabs"&gt;
- &lt;li class="active"&gt;&lt;a href="#1" data-toggle="tab"&gt;{{_i}}Section 1{{/i}}&lt;/a&gt;&lt;/li&gt;
- &lt;li&gt;&lt;a href="#2" data-toggle="tab"&gt;{{_i}}Section 2{{/i}}&lt;/a&gt;&lt;/li&gt;
+ &lt;li class="active"&gt;&lt;a href="#tab1" data-toggle="tab"&gt;{{_i}}Section 1{{/i}}&lt;/a&gt;&lt;/li&gt;
+ &lt;li&gt;&lt;a href="#tab2" data-toggle="tab"&gt;{{_i}}Section 2{{/i}}&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="tab-content"&gt;
- &lt;div class="tab-pane active" id="1"&gt;
+ &lt;div class="tab-pane active" id="tab1"&gt;
&lt;p&gt;{{_i}}I'm in Section 1.{{/i}}&lt;/p&gt;
&lt;/div&gt;
- &lt;div class="tab-pane" id="2"&gt;
+ &lt;div class="tab-pane" id="tab2"&gt;
&lt;p&gt;{{_i}}Howdy, I'm in Section 2.{{/i}}&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</pre>
+ </div>
+ </div>
+
<h3>{{_i}}Tabbable in any direction{{/i}}</h3>
<div class="row">
@@ -964,7 +948,7 @@
</pre>
</div><!--/span-->
</div><!--/row-->
- <p>{{_i}}When you affix the navbar, remember to account for the hidden area underneath. Add 40px or more of apdding to the <code>&lt;body&gt;</code>. Be sure to add this after the core Bootstrap CSS and before the optional responsive CSS.{{/i}}</p>
+ <p>{{_i}}When you affix the navbar, remember to account for the hidden area underneath. Add 40px or more of padding to the <code>&lt;body&gt;</code>. Be sure to add this after the core Bootstrap CSS and before the optional responsive CSS.{{/i}}</p>
<h3>{{_i}}Brand name{{/i}}</h3>
<p>{{_i}}A simple link to show your brand or project name only requires an anchor tag.{{/i}}</p>
<pre class="prettyprint linenums">
@@ -979,7 +963,7 @@
&lt;input type="text" class="span2"&gt;
&lt;/form&gt;
</pre>
- <p>{{_i}}For a more customized search form, add the <code>.navbar-search</code> class to receive specialized styles in the navbar.{{/i}}</p>
+ <p>{{_i}}For a more customized search form, add <code>.navbar-search</code> to the <code>form</code> and <code>.search-query</code> to the input for specialized styles in the navbar.{{/i}}</p>
<pre class="prettyprint linenums">
&lt;form class="navbar-search pull-left"&gt;
&lt;input type="text" class="search-query" placeholder="{{_i}}Search{{/i}}"&gt;
@@ -1012,7 +996,7 @@
&lt;/div&gt;
</pre>
<div class="alert alert-info">
- <strong>{{_i}}Heads up!{{/i}}</strong> The responsive navbar requires the <a href="./javascript.html#collapse">collapse plugin</a>.
+ <strong>{{_i}}Heads up!{{/i}}</strong> The responsive navbar requires the <a href="./javascript.html#collapse">collapse plugin</a> and <a href="./scaffolding.html#responsive">responsive Bootstrap CSS file</a>.
</div>
</div><!-- /.span -->
@@ -1039,7 +1023,7 @@
<h3>{{_i}}Component alignment{{/i}}</h3>
<p>{{_i}}To align a nav, search form, or text, use the <code>.pull-left</code> or <code>.pull-right</code> utility classes. Both classes will add a CSS float in the specified direction.{{/i}}</p>
<h3>{{_i}}Adding dropdown menus{{/i}}</h3>
- <p>{{_i}}Adding dropdowns and dropups to the nav is super simple, but does require the use of <a href="./javascript.html/#dropdown">our javascript plugin</a>.{{/i}}</p>
+ <p>{{_i}}Adding dropdowns and dropups to the nav is super simple, but does require the use of <a href="./javascript.html#dropdowns">our javascript plugin</a>.{{/i}}</p>
<pre class="prettyprint linenums">
&lt;ul class="nav"&gt;
&lt;li class="dropdown"&gt;
@@ -1058,7 +1042,7 @@
<p><a class="btn" href="./javascript.html#dropdowns">{{_i}}Get the javascript &rarr;{{/i}}</a></p>
<hr>
<h3>{{_i}}Text in the navbar{{/i}}</h3>
- <p>{{_i}}Wrap strings of text in a <code>&lt;p&gt;</code> tag for proper leading and color.{{/i}}</p>
+ <p>{{_i}}Wrap strings of text in a <code>&lt;.navbar-text&gt;</code>, usually on a <code>&lt;p&gt;</code> tag for proper leading and color.{{/i}}</p>
</div><!-- /.span -->
</div><!-- /.row -->
@@ -1155,11 +1139,11 @@
</div>
<div class="pagination">
<ul>
- <li><a href="#">&larr;</a></li>
+ <li><a href="#">&laquo;</a></li>
<li class="active"><a href="#">10</a></li>
<li class="disabled"><a href="#">...</a></li>
<li><a href="#">20</a></li>
- <li><a href="#">&rarr;</a></li>
+ <li><a href="#">&raquo;</a></li>
</ul>
</div>
<div class="pagination pagination-centered">
@@ -1366,13 +1350,13 @@
</tr>
<tr>
<td>
- {{_i}}Error{{/i}}
+ {{_i}}Important{{/i}}
</td>
<td>
- <span class="badge badge-error">6</span>
+ <span class="badge badge-important">6</span>
</td>
<td>
- <code>&lt;span class="badge badge-error"&gt;6&lt;/span&gt;</code>
+ <code>&lt;span class="badge badge-important"&gt;6&lt;/span&gt;</code>
</td>
</tr>
<tr>
@@ -1440,7 +1424,7 @@
<h2>{{_i}}Page header{{/i}}</h2>
<div class="row">
<div class="span4">
- <p>{{_i}}A simple shell for an <code>h1</code> to appropratiely space out and segment sections of content on a page. It can utilize the <code>h1</code>'s default <code>small</code>, element as well most other components (with additional styles).{{/i}}</p>
+ <p>{{_i}}A simple shell for an <code>h1</code> to appropriately space out and segment sections of content on a page. It can utilize the <code>h1</code>'s default <code>small</code>, element as well most other components (with additional styles).{{/i}}</p>
</div>
<div class="span8">
<div class="page-header">
@@ -1627,24 +1611,25 @@
<h3>{{_i}}Example alerts{{/i}}</h3>
<p>{{_i}}Wrap your message and an optional close icon in a div with simple class.{{/i}}</p>
<div class="alert">
- <a class="close" data-dismiss="alert">&times;</a>
+ <button class="close" data-dismiss="alert">&times;</button>
<strong>{{_i}}Warning!{{/i}}</strong> {{_i}}Best check yo self, you're not looking too good.{{/i}}
</div>
<pre class="prettyprint linenums">
&lt;div class="alert"&gt;
- &lt;a class="close" data-dismiss="alert"&gt;&times;&lt;/a&gt;
+ &lt;button class="close" data-dismiss="alert"&gt;&times;&lt;/button&gt;
&lt;strong&gt;{{_i}}Warning!{{/i}}&lt;/strong&gt; {{_i}}Best check yo self, you're not looking too good.{{/i}}
&lt;/div&gt;
</pre>
+ <p><span class="label label-info">{{_i}}Heads up!{{/i}}</span> {{_i}}iOS devices require an <code>href="#"</code> for the dismissal of alerts. Be sure to include it and the data attribute for anchor close icons. Alternatively, you may use a <code>button</code> element with the data attribute, which we have opted to do for our docs.{{/i}}</p>
<p>{{_i}}Easily extend the standard alert message with two optional classes: <code>.alert-block</code> for more padding and text controls and <code>.alert-heading</code> for a matching heading.{{/i}}</p>
<div class="alert alert-block">
- <a class="close" data-dismiss="alert">&times;</a>
+ <button class="close" data-dismiss="alert">&times;</button>
<h4 class="alert-heading">{{_i}}Warning!{{/i}}</h4>
<p>{{_i}}Best check yo self, you're not looking too good.{{/i}} Nulla vitae elit libero, a pharetra augue. Praesent commodo cursus magna, vel scelerisque nisl consectetur et.</p>
</div>
<pre class="prettyprint linenums">
&lt;div class="alert alert-block"&gt;
- &lt;a class="close" data-dismiss="alert"&gt;&times;&lt;/a&gt;
+ &lt;a class="close" data-dismiss="alert" href="#"&gt;&times;&lt;/a&gt;
&lt;h4 class="alert-heading"&gt;{{_i}}Warning!{{/i}}&lt;/h4&gt;
{{_i}}Best check yo self, you're not...{{/i}}
&lt;/div&gt;
@@ -1657,7 +1642,7 @@
<div class="span4">
<h3>{{_i}}Error or danger{{/i}}</h3>
<div class="alert alert-error">
- <a class="close" data-dismiss="alert">&times;</a>
+ <button class="close" data-dismiss="alert">&times;</button>
<strong>{{_i}}Oh snap!{{/i}}</strong> {{_i}}Change a few things up and try submitting again.{{/i}}
</div>
<pre class="prettyprint linenums">
@@ -1669,7 +1654,7 @@
<div class="span4">
<h3>{{_i}}Success{{/i}}</h3>
<div class="alert alert-success">
- <a class="close" data-dismiss="alert">&times;</a>
+ <button class="close" data-dismiss="alert">&times;</button>
<strong>{{_i}}Well done!{{/i}}</strong> {{_i}}You successfully read this important alert message.{{/i}}
</div>
<pre class="prettyprint linenums">
@@ -1681,7 +1666,7 @@
<div class="span4">
<h3>{{_i}}Information{{/i}}</h3>
<div class="alert alert-info">
- <a class="close" data-dismiss="alert">&times;</a>
+ <button class="close" data-dismiss="alert">&times;</button>
<strong>{{_i}}Heads up!{{/i}}</strong> {{_i}}This alert needs your attention, but it's not super important.{{/i}}
</div>
<pre class="prettyprint linenums">
@@ -1821,8 +1806,10 @@
<div class="span4">
<h2>{{_i}}Close icon{{/i}}</h2>
<p>{{_i}}Use the generic close icon for dismissing content like modals and alerts.{{/i}}</p>
- <p><a class="close" style="float: none;">&times;</a></p>
-<pre class="prettyprint linenums">&lt;a class="close"&gt;&amp;times;&lt;/a&gt;</pre>
+ <p><button class="close" style="float: none;">&times;</button></p>
+<pre class="prettyprint linenums">&lt;button class="close"&gt;&amp;times;&lt;/button&gt;</pre>
+ <p>{{_i}}iOS devices require an href="#" for click events if you rather use an anchor.{{/i}}</p>
+<pre class="prettyprint linenums">&lt;a class="close" href="#"&gt;&amp;times;&lt;/a&gt;</pre>
</div><!--/span-->
</div><!--/row-->
</section>
diff --git a/docs/templates/pages/download.mustache b/docs/templates/pages/download.mustache
index 87fdc6a38..ffade0977 100644
--- a/docs/templates/pages/download.mustache
+++ b/docs/templates/pages/download.mustache
@@ -31,8 +31,7 @@
<h3>{{_i}}Base CSS{{/i}}</h3>
<label class="checkbox"><input checked="checked" type="checkbox" value="type.less"> {{_i}}Headings, body, etc{{/i}}</label>
<label class="checkbox"><input checked="checked" type="checkbox" value="code.less"> {{_i}}Code and pre{{/i}}</label>
- <label class="checkbox"><input checked="checked" type="checkbox" value="labels.less"> {{_i}}Labels{{/i}}</label>
- <label class="checkbox"><input checked="checked" type="checkbox" value="badges.less"> {{_i}}Badges{{/i}}</label>
+ <label class="checkbox"><input checked="checked" type="checkbox" value="labels-badges.less"> {{_i}}Labels and badges{{/i}}</label>
<label class="checkbox"><input checked="checked" type="checkbox" value="tables.less"> {{_i}}Tables{{/i}}</label>
<label class="checkbox"><input checked="checked" type="checkbox" value="forms.less"> {{_i}}Forms{{/i}}</label>
<label class="checkbox"><input checked="checked" type="checkbox" value="buttons.less"> {{_i}}Buttons{{/i}}</label>
@@ -67,7 +66,11 @@
<label class="checkbox"><input checked="checked" type="checkbox" value="utilities.less"> {{_i}}Utilities{{/i}}</label>
<label class="checkbox"><input checked="checked" type="checkbox" value="component-animations.less"> {{_i}}Component animations{{/i}}</label>
<h3>{{_i}}Responsive{{/i}}</h3>
- <label class="checkbox"><input checked="checked" type="checkbox" value="responsive.less"> {{_i}}Responsive layouts{{/i}}</label>
+ <label class="checkbox"><input checked="checked" type="checkbox" value="responsive-utilities.less"> {{_i}}Visible/hidden classes{{/i}}</label>
+ <label class="checkbox"><input checked="checked" type="checkbox" value="responsive-767px-max.less"> {{_i}}Narrow tablets and below (<767px){{/i}}</label>
+ <label class="checkbox"><input checked="checked" type="checkbox" value="responsive-768px-979px.less"> {{_i}}Tablets to desktops (767-979px){{/i}}</label>
+ <label class="checkbox"><input checked="checked" type="checkbox" value="responsive-1200px-min.less"> {{_i}}Large desktops (>1200px){{/i}}</label>
+ <label class="checkbox"><input checked="checked" type="checkbox" value="responsive-navbar.less"> {{_i}}Responsive navbar{{/i}}</label>
</div><!-- /span -->
</div><!-- /row -->
</section>
@@ -200,14 +203,20 @@
<input type="text" class="span3" placeholder="2.127659574%">
<h3>{{_i}}Typography{{/i}}</h3>
+ <label>@sansFontFamily</label>
+ <input type="text" class="span3" placeholder="'Helvetica Neue', Helvetica, Arial, sans-serif">
+ <label>@serifFontFamily</label>
+ <input type="text" class="span3" placeholder="Georgia, 'Times New Roman', Times, serif">
+ <label>@monoFontFamily</label>
+ <input type="text" class="span3" placeholder="Menlo, Monaco, 'Courier New', monospace">
<label>@baseFontSize</label>
<input type="text" class="span3" placeholder="13px">
<label>@baseFontFamily</label>
- <input type="text" class="span3" placeholder="'Helvetica Neue', Helvetica, Arial, sans-serif">
+ <input type="text" class="span3" placeholder="@sansFontFamily">
<label>@baseLineHeight</label>
<input type="text" class="span3" placeholder="18px">
<label>@altFontFamily</label>
- <input type="text" class="span3" placeholder="Georgia, 'Times New Roman', Times, serif;">
+ <input type="text" class="span3" placeholder="@serifFontFamily">
<label>@headingsFontFamily</label>
<input type="text" class="span3" placeholder="inherit">
<label>@headingsFontWeight</label>
@@ -241,6 +250,8 @@
<input type="text" class="span3" placeholder="@grayDark">
<label>@navbarText</label>
<input type="text" class="span3" placeholder="@grayLight">
+ <label>@navbarBrandColor</label>
+ <input type="text" class="span3" placeholder="@navbarLinkColor">
<label>@navbarLinkColor</label>
<input type="text" class="span3" placeholder="@grayLight">
<label>@navbarLinkColorHover</label>
@@ -280,8 +291,12 @@
<input type="text" class="span3" placeholder="@white">
<label>@inputBorder</label>
<input type="text" class="span3" placeholder="#ccc">
+ <label>@inputBorderRadius</label>
+ <input type="text" class="span3" placeholder="3px">
<label>@inputDisabledBackground</label>
<input type="text" class="span3" placeholder="@grayLighter">
+ <label>@formActionsBackground</label>
+ <input type="text" class="span3" placeholder="#f5f5f5">
<label>@btnPrimaryBackground</label>
<input type="text" class="span3" placeholder="@linkColor">
diff --git a/docs/templates/pages/index.mustache b/docs/templates/pages/index.mustache
index 9d8253df1..41a89e07a 100644
--- a/docs/templates/pages/index.mustache
+++ b/docs/templates/pages/index.mustache
@@ -6,7 +6,7 @@
<p>{{_i}}Simple and flexible HTML, CSS, and Javascript for popular user interface components and interactions.{{/i}}</p>
<p class="download-info">
<a href="https://github.com/twitter/bootstrap/" class="btn btn-primary btn-large">{{_i}}View project on GitHub{{/i}}</a>
- <a href="assets/bootstrap.zip" class="btn btn-large">{{_i}}Download Bootstrap <small>(v2.0.2)</small>{{/i}}</a>
+ <a href="assets/bootstrap.zip" class="btn btn-large">{{_i}}Download Bootstrap <small>(v2.0.3)</small>{{/i}}</a>
</p>
</div>
@@ -14,6 +14,7 @@
<ul class="quick-links">
<li><a href="./upgrading.html">{{_i}}Upgrading from 1.4{{/i}}</a></li>
<li><a href="https://github.com/twitter/bootstrap/zipball/master">{{_i}}Download with docs{{/i}}</a></li>
+ <li><a href="http://blog.getbootstrap.com">{{_i}}Read the blog{{/i}}</a></li>
<li><a href="https://github.com/twitter/bootstrap/issues?state=open">{{_i}}Submit issues{{/i}}</a></li>
<li><a href="https://github.com/twitter/bootstrap/wiki">{{_i}}Roadmap and changelog{{/i}}</a></li>
</ul>
diff --git a/docs/templates/pages/javascript.mustache b/docs/templates/pages/javascript.mustache
index 7fd4c98d0..1ae3ffa5a 100644
--- a/docs/templates/pages/javascript.mustache
+++ b/docs/templates/pages/javascript.mustache
@@ -129,9 +129,9 @@
<h2>{{_i}}Static example{{/i}}</h2>
<p>{{_i}}Below is a statically rendered modal.{{/i}}</p>
<div class="well modal-example" style="background-color: #888; border: none;">
- <div class="modal" style="position: relative; top: auto; left: auto; margin: 0 auto; z-index: 1">
+ <div class="modal" style="position: relative; top: auto; left: auto; margin: 0 auto; z-index: 1; max-width: 100%;">
<div class="modal-header">
- <a href="#" class="close" data-dismiss="modal">&times;</a>
+ <button class="close" data-dismiss="modal">&times;</button>
<h3>{{_i}}Modal header{{/i}}</h3>
</div>
<div class="modal-body">
@@ -149,7 +149,7 @@
<!-- sample modal content -->
<div id="myModal" class="modal hide fade">
<div class="modal-header">
- <a class="close" data-dismiss="modal" >&times;</a>
+ <button class="close" data-dismiss="modal">&times;</button>
<h3>{{_i}}Modal Heading{{/i}}</h3>
</div>
<div class="modal-body">
@@ -226,7 +226,7 @@
<pre class="prettyprint linenums">
&lt;div class="modal" id="myModal"&gt;
&lt;div class="modal-header"&gt;
- &lt;a class="close" data-dismiss="modal"&gt;&times;&lt;/a&gt;
+ &lt;button class="close" data-dismiss="modal"&gt;&times;&lt;/button&gt;
&lt;h3&gt;Modal header&lt;/h3&gt;
&lt;/div&gt;
&lt;div class="modal-body"&gt;
@@ -416,6 +416,20 @@ $('#myModal').on('hidden', function () {
&lt;/li&gt;
...
&lt;/ul&gt;</pre>
+ <p>{{_i}}To keep URLs intact, use the <code>data-target</code> attribute instead of <code>href="#"</code>.{{/i}}</p>
+<pre class="prettyprint linenums">
+&lt;ul class="nav nav-pills"&gt;
+ &lt;li class="dropdown"&gt;
+ &lt;a class="dropdown-toggle" data-toggle="dropdown" data-target="#" href="path/to/page.html"&gt;
+ {{_i}}Dropdown{{/i}}
+ &lt;b class="caret"&gt;&lt;/b&gt;
+ &lt;/a&gt;
+ &lt;ul class="dropdown-menu"&gt;
+ ...
+ &lt;/ul&gt;
+ &lt;/li&gt;
+&lt;/ul&gt;
+</pre>
<h3>{{_i}}Methods{{/i}}</h3>
<h4>$().dropdown()</h4>
<p>{{_i}}A programatic api for activating menus for a given navbar or tabbed navigation.{{/i}}</p>
@@ -494,6 +508,14 @@ $('#myModal').on('hidden', function () {
<strong>{{_i}}Heads up!{{/i}}</strong>
{{_i}}Navbar links must have resolvable id targets. For example, a <code>&lt;a href="#home"&gt;home&lt;/a&gt;</code> must correspond to something in the dom like <code>&lt;div id="home"&gt;&lt;/div&gt;</code>.{{/i}}
</div>
+ <h3>{{_i}}Methods{{/i}}</h3>
+ <h4>.scrollspy('refresh')</h4>
+ <p>{{_i}}When using scrollspy in conjunction with adding or removing of elements from the DOM, you'll need to call the refresh method like so:{{/i}}</p>
+<pre class="prettyprint linenums">
+$('[data-spy="scroll"]').each(function () {
+ var $spy = $(this).scrollspy('refresh')
+});
+</pre>
<h3>{{_i}}Options{{/i}}</h3>
<table class="table table-bordered table-striped">
<thead>
@@ -513,6 +535,21 @@ $('#myModal').on('hidden', function () {
</tr>
</tbody>
</table>
+ <h3>{{_i}}Events{{/i}}</h3>
+ <table class="table table-bordered table-striped">
+ <thead>
+ <tr>
+ <th style="width: 150px;">{{_i}}Event{{/i}}</th>
+ <th>{{_i}}Description{{/i}}</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td>{{_i}}activate{{/i}}</td>
+ <td>{{_i}}This event fires whenever a new item becomes activated by the scrollspy.{{/i}}</td>
+ </tr>
+ </tbody>
+ </table>
</div>
</div>
</section>
@@ -533,7 +570,7 @@ $('#myModal').on('hidden', function () {
<div class="span9 columns">
<h2>{{_i}}Example tabs{{/i}}</h2>
<p>{{_i}}Click the tabs below to toggle between hidden panes, even via dropdown menus.{{/i}}</p>
- <ul id="tab" class="nav nav-tabs">
+ <ul id="myTab" class="nav nav-tabs">
<li class="active"><a href="#home" data-toggle="tab">{{_i}}Home{{/i}}</a></li>
<li><a href="#profile" data-toggle="tab">{{_i}}Profile{{/i}}</a></li>
<li class="dropdown">
@@ -560,10 +597,21 @@ $('#myModal').on('hidden', function () {
</div>
<hr>
<h2>{{_i}}Using bootstrap-tab.js{{/i}}</h2>
- <p>{{_i}}Enable tabbable tabs via javascript:{{/i}}</p>
- <pre class="prettyprint linenums">$('#myTab').tab('show')</pre>
+ <p>{{_i}}Enable tabbable tabs via javascript (each tab needs to be activated individually):{{/i}}</p>
+ <pre class="prettyprint linenums">
+$('#myTab a').click(function (e) {
+ e.preventDefault();
+ $(this).tab('show');
+})</pre>
+ <p>{{_i}}You can activate individual tabs in several ways:{{/i}}</p>
+<pre class="prettyprint linenums">
+$('#myTab a[href="#profile"]').tab('show'); // Select tab by name
+$('#myTab a:first').tab('show'); // Select first tab
+$('#myTab a:last').tab('show'); // Select last tab
+$('#myTab li:eq(2) a').tab('show'); // Select third tab (0-indexed)
+</pre>
<h3>{{_i}}Markup{{/i}}</h3>
- <p>{{_i}}You can activate a tab or pill navigation without writing any javascript by simply specifying <code>data-toggle="tab"</code> or <code>data-toggle="pill"</code> on an element.{{/i}}</p>
+ <p>{{_i}}You can activate a tab or pill navigation without writing any javascript by simply specifying <code>data-toggle="tab"</code> or <code>data-toggle="pill"</code> on an element. Adding the <code>nav</code> and <code>nav-tabs</code> classes to the tab <code>ul</code> will apply the bootstrap tab styling.{{/i}}</p>
<pre class="prettyprint linenums">
&lt;ul class="nav nav-tabs"&gt;
&lt;li&gt;&lt;a href="#home" data-toggle="tab"&gt;{{_i}}Home{{/i}}&lt;/a&gt;&lt;/li&gt;
@@ -574,10 +622,10 @@ $('#myModal').on('hidden', function () {
<h3>{{_i}}Methods{{/i}}</h3>
<h4>$().tab</h4>
<p>
- {{_i}}Activates a tab element and content container. Tab should have either a `data-target` or an `href` targeting a container node in the dom.{{/i}}
+ {{_i}}Activates a tab element and content container. Tab should have either a <code>data-target</code> or an <code>href</code> targeting a container node in the DOM.{{/i}}
</p>
<pre class="prettyprint linenums">
-&lt;ul class="nav nav-tabs"&gt;
+&lt;ul class="nav nav-tabs" id="myTab"&gt;
&lt;li class="active"&gt;&lt;a href="#home"&gt;{{_i}}Home{{/i}}&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#profile"&gt;{{_i}}Profile{{/i}}&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#messages"&gt;{{_i}}Messages{{/i}}&lt;/a&gt;&lt;/li&gt;
@@ -593,7 +641,7 @@ $('#myModal').on('hidden', function () {
&lt;script&gt;
$(function () {
- $('.tabs a:last').tab('show')
+ $('#myTab a:last').tab('show');
})
&lt;/script&gt;</pre>
<h3>{{_i}}Events{{/i}}</h3>
@@ -642,7 +690,7 @@ $('a[data-toggle="tab"]').on('shown', function (e) {
<h2>{{_i}}Example use of Tooltips{{/i}}</h2>
<p>{{_i}}Hover over the links below to see tooltips:{{/i}}</p>
<div class="tooltip-demo well">
- <p class="muted" style="margin-bottom: 0;">{{_i}}Tight pants next level keffiyeh <a href="#" rel="tooltip" title="first tooltip">you probably</a> haven't heard of them. Photo booth beard raw denim letterpress vegan messenger bag stumptown. Farm-to-table seitan, mcsweeney's fixie sustainable quinoa 8-bit american apparel <a href="#" rel="tooltip" title="Another tooltip">have a</a> terry richardson vinyl chambray. Beard stumptown, cardigans banh mi lomo thundercats. Tofu biodiesel williamsburg marfa, four loko mcsweeney's cleanse vegan chambray. A <a href="#" rel="tooltip" title="Another one here too">really ironic</a> artisan whatever keytar, scenester farm-to-table banksy Austin <a href="#" rel="tooltip" title="The last tip!">twitter handle</a> freegan cred raw denim single-origin coffee viral.{{/i}}
+ <p class="muted" style="margin-bottom: 0;">{{_i}}Tight pants next level keffiyeh <a href="#" rel="tooltip" title="first tooltip">you probably</a> haven't heard of them. Photo booth beard raw denim letterpress vegan messenger bag stumptown. Farm-to-table seitan, mcsweeney's fixie sustainable quinoa 8-bit american apparel <a href="#" rel="tooltip" title="Another tooltip">have a</a> terry richardson vinyl chambray. Beard stumptown, cardigans banh mi lomo thundercats. Tofu biodiesel williamsburg marfa, four loko mcsweeney's cleanse vegan chambray. A really ironic artisan <a href="#" rel="tooltip" title="Another one here too">whatever keytar</a>, scenester farm-to-table banksy Austin <a href="#" rel="tooltip" title="The last tip!">twitter handle</a> freegan cred raw denim single-origin coffee viral.{{/i}}
</p>
</div>
<hr>
@@ -695,7 +743,7 @@ $('a[data-toggle="tab"]').on('shown', function (e) {
<td>{{_i}}number | object{{/i}}</td>
<td>0</td>
<td>
- <p>{{_i}}delay showing and hiding the tooltip (ms){{/i}}</p>
+ <p>{{_i}}delay showing and hiding the tooltip (ms) - does not apply to manual trigger type{{/i}}</p>
<p>{{_i}}If a number is supplied, delay is applied to both hide/show{{/i}}</p>
<p>{{_i}}Object structure is: <code>delay: { show: 500, hide: 100 }</code>{{/i}}</p>
</td>
@@ -804,7 +852,7 @@ $('a[data-toggle="tab"]').on('shown', function (e) {
<td>{{_i}}number | object{{/i}}</td>
<td>0</td>
<td>
- <p>{{_i}}delay showing and hiding the popover (ms){{/i}}</p>
+ <p>{{_i}}delay showing and hiding the popover (ms) - does not apply to manual trigger type{{/i}}</p>
<p>{{_i}}If a number is supplied, delay is applied to both hide/show{{/i}}</p>
<p>{{_i}}Object structure is: <code>delay: { show: 500, hide: 100 }</code>{{/i}}</p>
</td>
@@ -817,7 +865,7 @@ $('a[data-toggle="tab"]').on('shown', function (e) {
</div>
<h3>{{_i}}Markup{{/i}}</h3>
<p>
- {{_i}}For performance reasons, the Tooltip and Popover data-apis are opt in. If you would like to use them just specify a the selector option.{{/i}}
+ {{_i}}For performance reasons, the Tooltip and Popover data-apis are opt in. If you would like to use them just specify a selector option.{{/i}}
</p>
<h3>{{_i}}Methods{{/i}}</h3>
<h4>$().popover({{_i}}options{{/i}})</h4>
@@ -853,11 +901,11 @@ $('a[data-toggle="tab"]').on('shown', function (e) {
<h2>{{_i}}Example alerts{{/i}}</h2>
<p>{{_i}}The alerts plugin works on regular alert messages, and block messages.{{/i}}</p>
<div class="alert fade in">
- <a class="close" data-dismiss="alert" href="#">&times;</a>
+ <button class="close" data-dismiss="alert">&times;</button>
<strong>{{_i}}Holy guacamole!{{/i}}</strong> {{_i}}Best check yo self, you're not looking too good.{{/i}}
</div>
<div class="alert alert-block alert-error fade in">
- <a class="close" data-dismiss="alert" href="#">&times;</a>
+ <button class="close" data-dismiss="alert">&times;</button>
<h4 class="alert-heading">{{_i}}Oh snap! You got an error!{{/i}}</h4>
<p>{{_i}}Change this and that and try again. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras mattis consectetur purus sit amet fermentum.{{/i}}</p>
<p>
@@ -963,7 +1011,7 @@ $('#my-alert').bind('closed', function () {
<hr>
<h2>{{_i}}Using bootstrap-button.js{{/i}}</h2>
<p>{{_i}}Enable buttons via javascript:{{/i}}</p>
- <pre class="prettyprint linenums">$('.tabs').button()</pre>
+ <pre class="prettyprint linenums">$('.nav-tabs').button()</pre>
<h3>{{_i}}Markup{{/i}}</h3>
<p>{{_i}}Data attributes are integral to the button plugin. Check out the example code below for the various markup types.{{/i}}</p>
<pre class="prettyprint linenums">
@@ -1025,7 +1073,8 @@ $('#my-alert').bind('closed', function () {
<h3>{{_i}}About{{/i}}</h3>
<p>{{_i}}Get base styles and flexible support for collapsible components like accordions and navigation.{{/i}}</p>
<a href="assets/js/bootstrap-collapse.js" target="_blank" class="btn">{{_i}}Download file{{/i}}</a>
- </div>
+ <p class="muted"><strong>*</strong> {{_i}}Requires the Transitions plugin to be included.{{/i}}</p>
+ </div>
<div class="span9 columns">
<h2>{{_i}}Example accordion{{/i}}</h2>
<p>{{_i}}Using the collapse plugin, we built a simple accordion style widget:{{/i}}</p>
@@ -1232,7 +1281,7 @@ $('#myCollapsible').on('hidden', function () {
<td>{{_i}}interval{{/i}}</td>
<td>{{_i}}number{{/i}}</td>
<td>5000</td>
- <td>{{_i}}The amount of time to delay between automatically cycling an item.{{/i}}</td>
+ <td>{{_i}}The amount of time to delay between automatically cycling an item. If false, carousel will not automatically cycle.{{/i}}</td>
</tr>
<tr>
<td>{{_i}}pause{{/i}}</td>
diff --git a/docs/templates/pages/less.mustache b/docs/templates/pages/less.mustache
index 23a4486a1..7698dd290 100644
--- a/docs/templates/pages/less.mustache
+++ b/docs/templates/pages/less.mustache
@@ -63,12 +63,24 @@
<div class="row">
<div class="span6">
- <h3>{{_i}}Hyperlinks{{/i}}</h3>
+ <h3>{{_i}}Scaffolding and links{{/i}}</h3>
<table class="table table-bordered table-striped">
<tbody>
<tr>
- <td class="span2"><code>@linkColor</code></td>
- <td>#08c</td>
+ <td class="span2"><code>@bodyBackground</code></td>
+ <td><code>@white</code></td>
+ <td>{{_i}}Page background color{{/i}}</td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #fff;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@textColor</code></td>
+ <td><code>@grayDark</code></td>
+ <td>{{_i}}Default text color for entire body, headings, and more{{/i}}</td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #333;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@linkColor</code></td>
+ <td><code>#08c</code></td>
<td>{{_i}}Default link text color{{/i}}</td>
<td class="swatch-col"><span class="swatch" style="background-color: #08c;"></span></td>
</tr>
@@ -109,16 +121,69 @@
<table class="table table-bordered table-striped">
<tbody>
<tr>
+ <td class="span2"><code>@sansFontFamily</code></td>
+ <td colspan="2">"Helvetica Neue", Helvetica, Arial, sans-serif</td>
+ </tr>
+ <tr>
+ <td><code>@serifFontFamily</code></td>
+ <td colspan="2"><code>Georgia, "Times New Roman", Times, serif</code></td>
+ </tr>
+ <tr>
+ <td><code>@monoFontFamily</code></td>
+ <td colspan="2">Menlo, Monaco, "Courier New", monospace</td>
+ </tr>
+
+ <tr>
<td class="span2"><code>@baseFontSize</code></td>
<td>13px</td>
+ <td><em class="muted">Must be pixels</em></td>
</tr>
<tr>
<td><code>@baseFontFamily</code></td>
- <td><code>"Helvetica Neue", Helvetica, Arial, sans-serif</code></td>
+ <td colspan="2"><code>@sansFontFamily</code></td>
</tr>
<tr>
<td><code>@baseLineHeight</code></td>
<td>18px</td>
+ <td><em class="muted">Must be pixels</em></td>
+ </tr>
+ <tr>
+ <td><code>@altFontFamily</code></td>
+ <td colspan="2"><code>@serifFontFamily</code></td>
+ </tr>
+
+ <tr>
+ <td class="span2"><code>@headingsFontFamily</code></td>
+ <td colspan="2"><code>inherit</code></td>
+ </tr>
+ <tr>
+ <td><code>@headingsFontWeight</code></td>
+ <td colspan="2"><code>bold</code></td>
+ </tr>
+ <tr>
+ <td><code>@headingsColor</code></td>
+ <td colspan="2"><code>inherit</code></td>
+ </tr>
+ </tbody>
+ </table>
+ <h3>{{_i}}Tables{{/i}}</h3>
+ <table class="table table-bordered table-striped">
+ <tbody>
+ <tr>
+ <td class="span2"><code>@tableBackground</code></td>
+ <td><code>transparent</code></td>
+ </tr>
+ <tr>
+ <td><code>@tableBackgroundAccent</code></td>
+ <td><code>#f9f9f9</code></td>
+ </tr>
+ <tr>
+ <td><code>@tableBackgroundHover</code></td>
+ <td><code>#f5f5f5</code></td>
+ </tr>
+ <tr>
+ <td><code>@tableBorder</code></td>
+ <td><code>ddd</code></td>
</tr>
</tbody>
</table>
@@ -214,10 +279,86 @@
<table class="table table-bordered table-striped">
<tbody>
<tr>
- <td class="span3"><code>@primaryButtonBackground</code></td>
+ <td class="span3"><code>@btnBackground</code></td>
+ <td><code>@white</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #fff;"></span></td>
+ </tr>
+ <tr>
+ <td class="span3"><code>@btnBackgroundHighlight</code></td>
+ <td><code>darken(@white, 10%)</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #e6e6e6;"></span></td>
+ </tr>
+ <tr>
+ <td class="span3"><code>@btnBorder</code></td>
+ <td><code>darken(@white, 20%)</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #ccc;"></span></td>
+ </tr>
+
+ <tr>
+ <td class="span3"><code>@btnPrimaryBackground</code></td>
<td><code>@linkColor</code></td>
<td class="swatch-col"><span class="swatch" style="background-color: #08c;"></span></td>
</tr>
+ <tr>
+ <td class="span3"><code>@btnPrimaryBackgroundHighlight</code></td>
+ <td><code>spin(@btnPrimaryBackground, 15%)</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #05c;"></span></td>
+ </tr>
+
+ <tr>
+ <td class="span3"><code>@btnInfoBackground</code></td>
+ <td><code>#5bc0de</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #5bc0de;"></span></td>
+ </tr>
+ <tr>
+ <td class="span3"><code>@btnInfoBackgroundHighlight</code></td>
+ <td><code>#2f96b4</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #2f96b4;"></span></td>
+ </tr>
+
+ <tr>
+ <td class="span3"><code>@btnSuccessBackground</code></td>
+ <td><code>#62c462</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #62c462;"></span></td>
+ </tr>
+ <tr>
+ <td class="span3"><code>@btnSuccessBackgroundHighlight</code></td>
+ <td><code>51a351</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #51a351;"></span></td>
+ </tr>
+
+ <tr>
+ <td class="span3"><code>@btnWarningBackground</code></td>
+ <td><code>lighten(@orange, 15%)</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #fbb450;"></span></td>
+ </tr>
+ <tr>
+ <td class="span3"><code>@btnWarningBackgroundHighlight</code></td>
+ <td><code>@orange</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #f89406;"></span></td>
+ </tr>
+
+ <tr>
+ <td class="span3"><code>@btnDangerBackground</code></td>
+ <td><code>#ee5f5b</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #ee5f5b;"></span></td>
+ </tr>
+ <tr>
+ <td class="span3"><code>@btnDangerBackgroundHighlight</code></td>
+ <td><code>#bd362f</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #bd362f;"></span></td>
+ </tr>
+
+ <tr>
+ <td class="span3"><code>@btnInverseBackground</code></td>
+ <td><code>@gray</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #555;"></span></td>
+ </tr>
+ <tr>
+ <td class="span3"><code>@btnInverseBackgroundHighlight</code></td>
+ <td><code>@grayDarker</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #222;"></span></td>
+ </tr>
</tbody>
</table>
<h4>{{_i}}Forms{{/i}}</h4>
@@ -226,47 +367,29 @@
<tr>
<td class="span3"><code>@placeholderText</code></td>
<td><code>@grayLight</code></td>
- <td class="swatch-col"><span class="swatch" style="background-color: #999;"></span></td>
- </tr>
- </tbody>
- </table>
- <h4>{{_i}}Navbar{{/i}}</h4>
- <table class="table table-bordered table-striped">
- <tbody>
- <tr>
- <td class="span3"><code>@navbarHeight</code></td>
- <td>40px</td>
- <td class="swatch-col"></td>
</tr>
<tr>
- <td><code>@navbarBackground</code></td>
- <td><code>@grayDarker</code></td>
- <td><span class="swatch" style="background-color: #222;"></span></td>
+ <td><code>@inputBackground</code></td>
+ <td><code>@white</code></td>
</tr>
<tr>
- <td><code>@navbarBackgroundHighlight</code></td>
- <td><code>@grayDark</code></td>
- <td><span class="swatch" style="background-color: #333;"></span></td>
+ <td><code>@inputBorder</code></td>
+ <td><code>#ccc</code></td>
</tr>
<tr>
- <td><code>@navbarText</code></td>
- <td><code>@grayLight</code></td>
- <td><span class="swatch" style="background-color: #999;"></span></td>
+ <td><code>@inputBorderRadius</code></td>
+ <td><code>3px</code></td>
</tr>
<tr>
- <td><code>@navbarLinkColor</code></td>
- <td><code>@grayLight</code></td>
- <td><span class="swatch" style="background-color: #999;"></span></td>
+ <td><code>@inputDisabledBackground</code></td>
+ <td><code>@grayLighter</code></td>
</tr>
<tr>
- <td><code>@navbarLinkColorHover</code></td>
- <td><code>@white</code></td>
- <td><span class="swatch swatch-bordered" style="background-color: #fff;"></span></td>
+ <td><code>@formActionsBackground</code></td>
+ <td><code>#f5f5f5</code></td>
</tr>
</tbody>
</table>
- </div>
- <div class="span6">
<h4>{{_i}}Form states and alerts{{/i}}</h4>
<table class="table table-bordered table-striped">
<tbody>
@@ -313,6 +436,130 @@
</tbody>
</table>
</div>
+ <div class="span6">
+ <h4>{{_i}}Navbar{{/i}}</h4>
+ <table class="table table-bordered table-striped">
+ <tbody>
+ <tr>
+ <td class="span3"><code>@navbarHeight</code></td>
+ <td>40px</td>
+ <td class="swatch-col"></td>
+ </tr>
+ <tr>
+ <td><code>@navbarBackground</code></td>
+ <td><code>@grayDarker</code></td>
+ <td><span class="swatch" style="background-color: #222;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@navbarBackgroundHighlight</code></td>
+ <td><code>@grayDark</code></td>
+ <td><span class="swatch" style="background-color: #333;"></span></td>
+ </tr>
+
+ <tr>
+ <td><code>@navbarText</code></td>
+ <td><code>@grayLight</code></td>
+ <td><span class="swatch" style="background-color: #999;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@navbarLinkColor</code></td>
+ <td><code>@grayLight</code></td>
+ <td><span class="swatch" style="background-color: #999;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@navbarLinkColorHover</code></td>
+ <td><code>@white</code></td>
+ <td><span class="swatch swatch-bordered" style="background-color: #fff;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@navbarLinkColorActive</code></td>
+ <td><code>@navbarLinkColorHover</code></td>
+ <td><span class="swatch swatch-bordered" style="background-color: #fff;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@navbarLinkBackgroundHover</code></td>
+ <td><code>transparent</code></td>
+ <td><span class="swatch swatch-bordered" style="background-color: transparent;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@navbarLinkBackgroundActive</code></td>
+ <td><code>@navbarBackground</code></td>
+ <td><span class="swatch swatch-bordered" style="background-color: #fff;"></span></td>
+ </tr>
+
+ <tr>
+ <td><code>@navbarSearchBackground</code></td>
+ <td><code>lighten(@navbarBackground, 25%)</code></td>
+ <td><span class="swatch" style="background-color: #666;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@navbarSearchBackgroundFocus</code></td>
+ <td><code>@white</code></td>
+ <td><span class="swatch swatch-bordered" style="background-color: #fff;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@navbarSearchBorder</code></td>
+ <td><code>darken(@navbarSearchBackground, 30%)</code></td>
+ <td><span class="swatch" style="background-color: #111;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@navbarSearchPlaceholderColor</code></td>
+ <td><code>#ccc</code></td>
+ <td><span class="swatch" style="background-color: #ccc;"></span></td>
+ </tr>
+ <tr>
+ <td><code>@navbarBrandColor</code></td>
+ <td><code>@navbarLinkColor</code></td>
+ <td><span class="swatch swatch-bordered" style="background-color: #fff;"></span></td>
+ </tr>
+ </tbody>
+ </table>
+ <h4>{{_i}}Dropdowns{{/i}}</h4>
+ <table class="table table-bordered table-striped">
+ <tbody>
+ <tr>
+ <td class="span2"><code>@dropdownBackground</code></td>
+ <td><code>@white</code></td>
+ </tr>
+ <tr>
+ <td><code>@dropdownBorder</code></td>
+ <td><code>rgba(0,0,0,.2)</code></td>
+ </tr>
+ <tr>
+ <td><code>@dropdownLinkColor</code></td>
+ <td><code>@grayDark</code></td>
+ </tr>
+ <tr>
+ <td><code>@dropdownLinkColorHover</code></td>
+ <td><code>@white</code></td>
+ </tr>
+ <tr>
+ <td><code>@dropdownLinkBackgroundHover</code></td>
+ <td><code>@linkColor</code></td>
+ </tr>
+ </tbody>
+ </table>
+ <h4>{{_i}}Hero unit{{/i}}</h4>
+ <table class="table table-bordered table-striped">
+ <tbody>
+ <tr>
+ <td class="span3"><code>@heroUnitBackground</code></td>
+ <td><code>@grayLighter</code></td>
+ <td class="swatch-col"><span class="swatch" style="background-color: #eee;"></span></td>
+ </tr>
+ <tr>
+ <td class="span2"><code>@heroUnitHeadingColor</code></td>
+ <td><code>inherit</code></td>
+ <td></td>
+ </tr>
+ <tr>
+ <td><code>@heroUnitLeadColor</code></td>
+ <td><code>inhereit</code></td>
+ <td></td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
</div><!-- /row -->
</section>
@@ -384,17 +631,17 @@
</tr>
<tr>
<td><code>.size()</code></td>
- <td><code>@height: 5px, @width: 5px</code></td>
+ <td><code>@height @width</code></td>
<td>{{_i}}Quickly set the height and width on one line{{/i}}</td>
</tr>
<tr>
<td><code>.square()</code></td>
- <td><code>@size: 5px</code></td>
+ <td><code>@size</code></td>
<td>{{_i}}Builds on <code>.size()</code> to set the width and height as same value{{/i}}</td>
</tr>
<tr>
<td><code>.opacity()</code></td>
- <td><code>@opacity: 100</code></td>
+ <td><code>@opacity</code></td>
<td>{{_i}}Set, in whole numbers, the opacity percentage (e.g., "50" or "75"){{/i}}</td>
</tr>
</tbody>
@@ -488,6 +735,16 @@
<td><code>@fluidGridColumnWidth, @fluidGridGutterWidth</code></td>
<td>{{_i}}Generate a precent grid system with <em>n</em> columns and <em>x</em> % wide gutter{{/i}}</td>
</tr>
+ <tr>
+ <td><code>#grid > .input()</code></td>
+ <td><code>@gridColumnWidth, @gridGutterWidth</code></td>
+ <td>{{_i}}Generate the pixel grid system for <code>input</code> elements, accounting for padding and borders{{/i}}</td>
+ </tr>
+ <tr>
+ <td><code>.makeColumn</code></td>
+ <td><code>@columns: 1, @offset: 0</code></td>
+ <td>{{_i}}Turn any <code>div</code> into a grid column without the <code>.span*</code> classes{{/i}}</td>
+ </tr>
</tbody>
</table>
<h3>{{_i}}CSS3 properties{{/i}}</h3>
@@ -502,12 +759,12 @@
<tbody>
<tr>
<td><code>.border-radius()</code></td>
- <td><code>@radius: 5px</code></td>
+ <td><code>@radius</code></td>
<td>{{_i}}Round the corners of an element. Can be a single value or four space-separated values{{/i}}</td>
</tr>
<tr>
<td><code>.box-shadow()</code></td>
- <td><code>@shadow: 0 1px 3px rgba(0,0,0,.25)</code></td>
+ <td><code>@shadow</code></td>
<td>{{_i}}Add a drop shadow to an element{{/i}}</td>
</tr>
<tr>
@@ -527,7 +784,7 @@
</tr>
<tr>
<td><code>.translate()</code></td>
- <td><code>@x: 0, @y: 0</code></td>
+ <td><code>@x, @y</code></td>
<td>{{_i}}Move an element on the x and y planes{{/i}}</td>
</tr>
<tr>
@@ -551,13 +808,18 @@
<td>{{_i}}Control cursor selection of text on a page{{/i}}</td>
</tr>
<tr>
+ <td><code>.backface-visibility()</code></td>
+ <td><code>@visibility: visible</code></td>
+ <td>{{_i}}Prevent flickering of content when using CSS 3D transforms{{/i}}</td>
+ </tr>
+ <tr>
<td><code>.resizable()</code></td>
<td><code>@direction: both</code></td>
<td>{{_i}}Make any element resizable on the right and bottom{{/i}}</td>
</tr>
<tr>
<td><code>.content-columns()</code></td>
- <td><code>@columnCount, @columnGap: @gridColumnGutter</code></td>
+ <td><code>@columnCount, @columnGap: @gridGutterWidth</code></td>
<td>{{_i}}Make the content of any element use CSS3 columns{{/i}}</td>
</tr>
</tbody>
@@ -644,7 +906,7 @@
<div class="span4">
<h3>{{_i}}Command line{{/i}}</h3>
<p>{{_i}}Install the LESS command line tool via Node and run the following command:{{/i}}</p>
- <pre>$ lessc ./lib/bootstrap.less > bootstrap.css</pre>
+ <pre>$ lessc ./less/bootstrap.less > bootstrap.css</pre>
<p>{{_i}}Be sure to include <code>--compress</code> in that command if you're trying to save some bytes!{{/i}}</p>
</div><!-- /span4 -->
<div class="span4">
diff --git a/docs/templates/pages/scaffolding.mustache b/docs/templates/pages/scaffolding.mustache
index 97131fdf2..13c777a26 100644
--- a/docs/templates/pages/scaffolding.mustache
+++ b/docs/templates/pages/scaffolding.mustache
@@ -96,7 +96,7 @@
<div class="row">
<div class="span4">
<p>{{_i}}The default grid system provided as part of Bootstrap is a <strong>940px-wide, 12-column grid</strong>.{{/i}}</p>
- <p>{{_i}}It also has four responsive variations for various devices and resolutions: phone, tablet portrait, table landscape and small desktops, and large widescreen desktops.{{/i}}</p>
+ <p>{{_i}}It also has four responsive variations for various devices and resolutions: phone, tablet portrait, tablet landscape and small desktops, and large widescreen desktops.{{/i}}</p>
</div><!-- /.span -->
<div class="span4">
<pre class="prettyprint linenums">
@@ -107,7 +107,7 @@
</pre>
</div><!-- /.span -->
<div class="span4">
- <p>{{_i}}As shown here, a basic layout can be created with two "columns," each spanning a number of the 12 foundational columns we defined as part of our grid system.{{/i}}</p>
+ <p>{{_i}}As shown here, a basic layout can be created with two "columns", each spanning a number of the 12 foundational columns we defined as part of our grid system.{{/i}}</p>
</div><!-- /.span -->
</div><!-- /.row -->
@@ -298,11 +298,6 @@
<td>20px</td>
<td>{{_i}}Negative space between columns{{/i}}</td>
</tr>
- <tr>
- <td><code>@siteWidth</code></td>
- <td><em>{{_i}}Computed sum of all columns and gutters{{/i}}</em></td>
- <td>{{_i}}Counts number of columns and gutters to set width of the <code>.container-fixed()</code> mixin{{/i}}</td>
- </tr>
</tbody>
</table>
<div class="row">
@@ -461,13 +456,13 @@
@media (max-width: 480px) { ... }
// {{_i}}Landscape phone to portrait tablet{{/i}}
- @media (max-width: 768px) { ... }
+ @media (max-width: 767px) { ... }
// {{_i}}Portrait tablet to landscape and desktop{{/i}}
- @media (min-width: 768px) and (max-width: 980px) { ... }
+ @media (min-width: 768px) and (max-width: 979px) { ... }
// {{_i}}Large desktop{{/i}}
- @media (min-width: 1200px) { .. }
+ @media (min-width: 1200px) { ... }
</pre>
</div><!-- /.span -->
</div><!-- /.row -->
@@ -478,7 +473,7 @@
<div class="row">
<div class="span4">
<h3>{{_i}}What are they{{/i}}</h2>
- <p>{{_i}}For faster mobile-friendly development, use these basic utility classes for showing and hidding content by device.{{/i}}</p>
+ <p>{{_i}}For faster mobile-friendly development, use these basic utility classes for showing and hiding content by device.{{/i}}</p>
<h3>{{_i}}When to use{{/i}}</h2>
<p>{{_i}}Use on a limited basis and avoid creating entirely different versions of the same site. Instead, use them to complement each device's presentation.{{/i}}</p>
<p>{{_i}}For example, you might show a <code>&lt;select&gt;</code> element for nav on mobile layouts, but not on tablets or desktops.{{/i}}</p>
@@ -535,23 +530,25 @@
</tbody>
</table>
<h3>{{_i}}Test case{{/i}}</h3>
- <p>{{_i}}Resize your browser or load on different devices to test the above clases.{{/i}}</p>
+ <p>{{_i}}Resize your browser or load on different devices to test the above classes.{{/i}}</p>
<h4>{{_i}}Visible on...{{/i}}</h4>
+ <p>{{_i}}Green checkmarks indicate that class is visible in your current viewport.{{/i}}</p>
<ul class="responsive-utilities-test">
- <li>Phone<span class="visible-phone">&#10004; Phone</span></li>
- <li>Tablet<span class="visible-tablet">&#10004; Tablet</span></li>
- <li>Desktop<span class="visible-desktop">&#10004; Desktop</span></li>
+ <li>{{_i}}Phone{{/i}}<span class="visible-phone">&#10004; {{_i}}Phone{{/i}}</span></li>
+ <li>{{_i}}Tablet{{/i}}<span class="visible-tablet">&#10004; {{_i}}Tablet{{/i}}</span></li>
+ <li>{{_i}}Desktop{{/i}}<span class="visible-desktop">&#10004; {{_i}}Desktop{{/i}}</span></li>
</ul>
<h4>{{_i}}Hidden on...{{/i}}</h4>
+ <p>{{_i}}Here, green checkmarks indicate that class is hidden in your current viewport.{{/i}}</p>
<ul class="responsive-utilities-test hidden-on">
- <li>Phone<span class="hidden-phone">&#10004; Phone</span></li>
- <li>Tablet<span class="hidden-tablet">&#10004; Tablet</span></li>
- <li>Desktop<span class="hidden-desktop">&#10004; Desktop</span></li>
+ <li>{{_i}}Phone{{/i}}<span class="hidden-phone">&#10004; {{_i}}Phone{{/i}}</span></li>
+ <li>{{_i}}Tablet{{/i}}<span class="hidden-tablet">&#10004; {{_i}}Tablet{{/i}}</span></li>
+ <li>{{_i}}Desktop{{/i}}<span class="hidden-desktop">&#10004; {{_i}}Desktop{{/i}}</span></li>
</ul>
</div><!-- /.span -->
</div><!-- /.row -->
-
+
<div class="row">
<div class="span4">
</div><!-- /.span -->
diff --git a/docs/upgrading.html b/docs/upgrading.html
index 01dd02aee..2a27b00e6 100644
--- a/docs/upgrading.html
+++ b/docs/upgrading.html
@@ -20,6 +20,7 @@
<!-- Le fav and touch icons -->
<link rel="shortcut icon" href="assets/ico/favicon.ico">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144" href="assets/ico/apple-touch-icon-144-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/ico/apple-touch-icon-114-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
@@ -39,7 +40,7 @@
<span class="icon-bar"></span>
</a>
<a class="brand" href="./index.html">Bootstrap</a>
- <div class="nav-collapse">
+ <div class="nav-collapse collapse">
<ul class="nav">
<li class="">
<a href="./index.html">Overview</a>