bootstrap-sass 2.0.2 → 2.0.3

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of bootstrap-sass might be problematic. Click here for more details.

Files changed (44) hide show
  1. data/README.md +26 -10
  2. data/lib/bootstrap-sass.rb +24 -13
  3. data/lib/bootstrap-sass/{compass_extensions.rb → compass_functions.rb} +0 -0
  4. data/lib/bootstrap-sass/engine.rb +0 -2
  5. data/lib/bootstrap-sass/{config/sass_extentions.rb → rails_functions.rb} +0 -0
  6. data/vendor/assets/images/glyphicons-halflings-white.png +0 -0
  7. data/vendor/assets/images/glyphicons-halflings.png +0 -0
  8. data/vendor/assets/javascripts/bootstrap-alert.js +28 -32
  9. data/vendor/assets/javascripts/bootstrap-button.js +29 -33
  10. data/vendor/assets/javascripts/bootstrap-carousel.js +27 -19
  11. data/vendor/assets/javascripts/bootstrap-collapse.js +45 -26
  12. data/vendor/assets/javascripts/bootstrap-dropdown.js +18 -10
  13. data/vendor/assets/javascripts/bootstrap-modal.js +25 -17
  14. data/vendor/assets/javascripts/bootstrap-popover.js +13 -10
  15. data/vendor/assets/javascripts/bootstrap-scrollspy.js +43 -17
  16. data/vendor/assets/javascripts/bootstrap-tab.js +12 -7
  17. data/vendor/assets/javascripts/bootstrap-tooltip.js +40 -35
  18. data/vendor/assets/javascripts/bootstrap-transition.js +30 -20
  19. data/vendor/assets/javascripts/bootstrap-typeahead.js +24 -10
  20. data/vendor/assets/stylesheets/_bootstrap-responsive.scss +100 -68
  21. data/vendor/assets/stylesheets/_bootstrap.scss +11 -2
  22. data/vendor/assets/stylesheets/bootstrap/_accordion.scss +5 -0
  23. data/vendor/assets/stylesheets/bootstrap/_button-groups.scss +51 -31
  24. data/vendor/assets/stylesheets/bootstrap/_buttons.scss +15 -11
  25. data/vendor/assets/stylesheets/bootstrap/_close.scss +12 -1
  26. data/vendor/assets/stylesheets/bootstrap/_code.scss +4 -4
  27. data/vendor/assets/stylesheets/bootstrap/_component-animations.scss +4 -4
  28. data/vendor/assets/stylesheets/bootstrap/_dropdowns.scss +16 -22
  29. data/vendor/assets/stylesheets/bootstrap/_forms.scss +58 -37
  30. data/vendor/assets/stylesheets/bootstrap/_labels-badges.scss +50 -0
  31. data/vendor/assets/stylesheets/bootstrap/_layouts.scss +1 -1
  32. data/vendor/assets/stylesheets/bootstrap/_mixins.scss +99 -73
  33. data/vendor/assets/stylesheets/bootstrap/_navbar.scss +61 -40
  34. data/vendor/assets/stylesheets/bootstrap/_navs.scss +27 -26
  35. data/vendor/assets/stylesheets/bootstrap/_progress-bars.scss +15 -6
  36. data/vendor/assets/stylesheets/bootstrap/_reset.scss +3 -3
  37. data/vendor/assets/stylesheets/bootstrap/_sprites.scss +25 -5
  38. data/vendor/assets/stylesheets/bootstrap/_tables.scss +17 -6
  39. data/vendor/assets/stylesheets/bootstrap/_thumbnails.scss +14 -0
  40. data/vendor/assets/stylesheets/bootstrap/_type.scss +7 -6
  41. data/vendor/assets/stylesheets/bootstrap/_variables.scss +52 -9
  42. metadata +10 -22
  43. data/vendor/assets/stylesheets/bootstrap/_badges.scss +0 -36
  44. data/vendor/assets/stylesheets/bootstrap/_labels.scss +0 -38
@@ -1,5 +1,5 @@
1
1
  /* ========================================================
2
- * bootstrap-tab.js v2.0.2
2
+ * bootstrap-tab.js v2.0.3
3
3
  * http://twitter.github.com/bootstrap/javascript.html#tabs
4
4
  * ========================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -18,9 +18,10 @@
18
18
  * ======================================================== */
19
19
 
20
20
 
21
- !function( $ ){
21
+ !function ($) {
22
+
23
+ "use strict"; // jshint ;_;
22
24
 
23
- "use strict"
24
25
 
25
26
  /* TAB CLASS DEFINITION
26
27
  * ==================== */
@@ -39,6 +40,7 @@
39
40
  , selector = $this.attr('data-target')
40
41
  , previous
41
42
  , $target
43
+ , e
42
44
 
43
45
  if (!selector) {
44
46
  selector = $this.attr('href')
@@ -49,11 +51,14 @@
49
51
 
50
52
  previous = $ul.find('.active a').last()[0]
51
53
 
52
- $this.trigger({
53
- type: 'show'
54
- , relatedTarget: previous
54
+ e = $.Event('show', {
55
+ relatedTarget: previous
55
56
  })
56
57
 
58
+ $this.trigger(e)
59
+
60
+ if (e.isDefaultPrevented()) return
61
+
57
62
  $target = $(selector)
58
63
 
59
64
  this.activate($this.parent('li'), $ul)
@@ -127,4 +132,4 @@
127
132
  })
128
133
  })
129
134
 
130
- }( window.jQuery );
135
+ }(window.jQuery);
@@ -1,5 +1,5 @@
1
1
  /* ===========================================================
2
- * bootstrap-tooltip.js v2.0.2
2
+ * bootstrap-tooltip.js v2.0.3
3
3
  * http://twitter.github.com/bootstrap/javascript.html#tooltips
4
4
  * Inspired by the original jQuery.tipsy by Jason Frame
5
5
  * ===========================================================
@@ -18,14 +18,16 @@
18
18
  * limitations under the License.
19
19
  * ========================================================== */
20
20
 
21
- !function( $ ) {
22
21
 
23
- "use strict"
22
+ !function ($) {
23
+
24
+ "use strict"; // jshint ;_;
25
+
24
26
 
25
27
  /* TOOLTIP PUBLIC CLASS DEFINITION
26
28
  * =============================== */
27
29
 
28
- var Tooltip = function ( element, options ) {
30
+ var Tooltip = function (element, options) {
29
31
  this.init('tooltip', element, options)
30
32
  }
31
33
 
@@ -33,7 +35,7 @@
33
35
 
34
36
  constructor: Tooltip
35
37
 
36
- , init: function ( type, element, options ) {
38
+ , init: function (type, element, options) {
37
39
  var eventIn
38
40
  , eventOut
39
41
 
@@ -54,7 +56,7 @@
54
56
  this.fixTitle()
55
57
  }
56
58
 
57
- , getOptions: function ( options ) {
59
+ , getOptions: function (options) {
58
60
  options = $.extend({}, $.fn[this.type].defaults, options, this.$element.data())
59
61
 
60
62
  if (options.delay && typeof options.delay == 'number') {
@@ -67,34 +69,28 @@
67
69
  return options
68
70
  }
69
71
 
70
- , enter: function ( e ) {
72
+ , enter: function (e) {
71
73
  var self = $(e.currentTarget)[this.type](this._options).data(this.type)
72
74
 
73
- if (!self.options.delay || !self.options.delay.show) {
74
- self.show()
75
- } else {
76
- self.hoverState = 'in'
77
- setTimeout(function() {
78
- if (self.hoverState == 'in') {
79
- self.show()
80
- }
81
- }, self.options.delay.show)
82
- }
75
+ if (!self.options.delay || !self.options.delay.show) return self.show()
76
+
77
+ clearTimeout(this.timeout)
78
+ self.hoverState = 'in'
79
+ this.timeout = setTimeout(function() {
80
+ if (self.hoverState == 'in') self.show()
81
+ }, self.options.delay.show)
83
82
  }
84
83
 
85
- , leave: function ( e ) {
84
+ , leave: function (e) {
86
85
  var self = $(e.currentTarget)[this.type](this._options).data(this.type)
87
86
 
88
- if (!self.options.delay || !self.options.delay.hide) {
89
- self.hide()
90
- } else {
91
- self.hoverState = 'out'
92
- setTimeout(function() {
93
- if (self.hoverState == 'out') {
94
- self.hide()
95
- }
96
- }, self.options.delay.hide)
97
- }
87
+ if (!self.options.delay || !self.options.delay.hide) return self.hide()
88
+
89
+ clearTimeout(this.timeout)
90
+ self.hoverState = 'out'
91
+ this.timeout = setTimeout(function() {
92
+ if (self.hoverState == 'out') self.hide()
93
+ }, self.options.delay.hide)
98
94
  }
99
95
 
100
96
  , show: function () {
@@ -152,9 +148,20 @@
152
148
  }
153
149
  }
154
150
 
151
+ , isHTML: function(text) {
152
+ // html string detection logic adapted from jQuery
153
+ return typeof text != 'string'
154
+ || ( text.charAt(0) === "<"
155
+ && text.charAt( text.length - 1 ) === ">"
156
+ && text.length >= 3
157
+ ) || /^(?:[^<]*<[\w\W]+>[^>]*$)/.exec(text)
158
+ }
159
+
155
160
  , setContent: function () {
156
161
  var $tip = this.tip()
157
- $tip.find('.tooltip-inner').html(this.getTitle())
162
+ , title = this.getTitle()
163
+
164
+ $tip.find('.tooltip-inner')[this.isHTML(title) ? 'html' : 'text'](title)
158
165
  $tip.removeClass('fade in top bottom left right')
159
166
  }
160
167
 
@@ -206,8 +213,6 @@
206
213
  title = $e.attr('data-original-title')
207
214
  || (typeof o.title == 'function' ? o.title.call($e[0]) : o.title)
208
215
 
209
- title = (title || '').toString().replace(/(^\s*|\s*$)/, "")
210
-
211
216
  return title
212
217
  }
213
218
 
@@ -259,12 +264,12 @@
259
264
 
260
265
  $.fn.tooltip.defaults = {
261
266
  animation: true
262
- , delay: 0
263
- , selector: false
264
267
  , placement: 'top'
268
+ , selector: false
269
+ , template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'
265
270
  , trigger: 'hover'
266
271
  , title: ''
267
- , template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'
272
+ , delay: 0
268
273
  }
269
274
 
270
- }( window.jQuery );
275
+ }(window.jQuery);
@@ -1,5 +1,5 @@
1
1
  /* ===================================================
2
- * bootstrap-transition.js v2.0.2
2
+ * bootstrap-transition.js v2.0.3
3
3
  * http://twitter.github.com/bootstrap/javascript.html#transitions
4
4
  * ===================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -17,35 +17,45 @@
17
17
  * limitations under the License.
18
18
  * ========================================================== */
19
19
 
20
- !function( $ ) {
20
+
21
+ !function ($) {
21
22
 
22
23
  $(function () {
23
24
 
24
- "use strict"
25
+ "use strict"; // jshint ;_;
26
+
25
27
 
26
- /* CSS TRANSITION SUPPORT (https://gist.github.com/373874)
28
+ /* CSS TRANSITION SUPPORT (http://www.modernizr.com/)
27
29
  * ======================================================= */
28
30
 
29
31
  $.support.transition = (function () {
30
- var thisBody = document.body || document.documentElement
31
- , thisStyle = thisBody.style
32
- , support = thisStyle.transition !== undefined || thisStyle.WebkitTransition !== undefined || thisStyle.MozTransition !== undefined || thisStyle.MsTransition !== undefined || thisStyle.OTransition !== undefined
33
-
34
- return support && {
35
- end: (function () {
36
- var transitionEnd = "TransitionEnd"
37
- if ( $.browser.webkit ) {
38
- transitionEnd = "webkitTransitionEnd"
39
- } else if ( $.browser.mozilla ) {
40
- transitionEnd = "transitionend"
41
- } else if ( $.browser.opera ) {
42
- transitionEnd = "oTransitionEnd"
32
+
33
+ var transitionEnd = (function () {
34
+
35
+ var el = document.createElement('bootstrap')
36
+ , transEndEventNames = {
37
+ 'WebkitTransition' : 'webkitTransitionEnd'
38
+ , 'MozTransition' : 'transitionend'
39
+ , 'OTransition' : 'oTransitionEnd'
40
+ , 'msTransition' : 'MSTransitionEnd'
41
+ , 'transition' : 'transitionend'
42
+ }
43
+ , name
44
+
45
+ for (name in transEndEventNames){
46
+ if (el.style[name] !== undefined) {
47
+ return transEndEventNames[name]
43
48
  }
44
- return transitionEnd
45
- }())
49
+ }
50
+
51
+ }())
52
+
53
+ return transitionEnd && {
54
+ end: transitionEnd
46
55
  }
56
+
47
57
  })()
48
58
 
49
59
  })
50
60
 
51
- }( window.jQuery );
61
+ }(window.jQuery);
@@ -1,5 +1,5 @@
1
1
  /* =============================================================
2
- * bootstrap-typeahead.js v2.0.2
2
+ * bootstrap-typeahead.js v2.0.3
3
3
  * http://twitter.github.com/bootstrap/javascript.html#typeahead
4
4
  * =============================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -17,16 +17,22 @@
17
17
  * limitations under the License.
18
18
  * ============================================================ */
19
19
 
20
- !function( $ ){
21
20
 
22
- "use strict"
21
+ !function($){
23
22
 
24
- var Typeahead = function ( element, options ) {
23
+ "use strict"; // jshint ;_;
24
+
25
+
26
+ /* TYPEAHEAD PUBLIC CLASS DEFINITION
27
+ * ================================= */
28
+
29
+ var Typeahead = function (element, options) {
25
30
  this.$element = $(element)
26
31
  this.options = $.extend({}, $.fn.typeahead.defaults, options)
27
32
  this.matcher = this.options.matcher || this.matcher
28
33
  this.sorter = this.options.sorter || this.sorter
29
34
  this.highlighter = this.options.highlighter || this.highlighter
35
+ this.updater = this.options.updater || this.updater
30
36
  this.$menu = $(this.options.menu).appendTo('body')
31
37
  this.source = this.options.source
32
38
  this.shown = false
@@ -39,11 +45,16 @@
39
45
 
40
46
  , select: function () {
41
47
  var val = this.$menu.find('.active').attr('data-value')
42
- this.$element.val(val)
43
- this.$element.change();
48
+ this.$element
49
+ .val(this.updater(val))
50
+ .change()
44
51
  return this.hide()
45
52
  }
46
53
 
54
+ , updater: function (item) {
55
+ return item
56
+ }
57
+
47
58
  , show: function () {
48
59
  var pos = $.extend({}, this.$element.offset(), {
49
60
  height: this.$element[0].offsetHeight
@@ -77,7 +88,7 @@
77
88
  }
78
89
 
79
90
  items = $.grep(this.source, function (item) {
80
- if (that.matcher(item)) return item
91
+ return that.matcher(item)
81
92
  })
82
93
 
83
94
  items = this.sorter(items)
@@ -109,7 +120,8 @@
109
120
  }
110
121
 
111
122
  , highlighter: function (item) {
112
- return item.replace(new RegExp('(' + this.query + ')', 'ig'), function ($1, match) {
123
+ var query = this.query.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, '\\$&')
124
+ return item.replace(new RegExp('(' + query + ')', 'ig'), function ($1, match) {
113
125
  return '<strong>' + match + '</strong>'
114
126
  })
115
127
  }
@@ -201,11 +213,13 @@
201
213
  break
202
214
 
203
215
  case 38: // up arrow
216
+ if (e.type != 'keydown') break
204
217
  e.preventDefault()
205
218
  this.prev()
206
219
  break
207
220
 
208
221
  case 40: // down arrow
222
+ if (e.type != 'keydown') break
209
223
  e.preventDefault()
210
224
  this.next()
211
225
  break
@@ -236,7 +250,7 @@
236
250
  /* TYPEAHEAD PLUGIN DEFINITION
237
251
  * =========================== */
238
252
 
239
- $.fn.typeahead = function ( option ) {
253
+ $.fn.typeahead = function (option) {
240
254
  return this.each(function () {
241
255
  var $this = $(this)
242
256
  , data = $this.data('typeahead')
@@ -268,4 +282,4 @@
268
282
  })
269
283
  })
270
284
 
271
- }( window.jQuery );
285
+ }(window.jQuery);
@@ -22,34 +22,35 @@
22
22
  }
23
23
 
24
24
  // Visibility utilities
25
+
25
26
  // For desktops
26
- .visible-phone { display: none; }
27
- .visible-tablet { display: none; }
28
- .visible-desktop { display: block; }
29
- .hidden-phone { display: block; }
30
- .hidden-tablet { display: block; }
31
- .hidden-desktop { display: none; }
27
+ .visible-phone { display: none !important; }
28
+ .visible-tablet { display: none !important; }
29
+ .visible-desktop { } // Don't set initially
30
+ .hidden-phone { }
31
+ .hidden-tablet { }
32
+ .hidden-desktop { display: none !important; }
32
33
 
33
34
  // Phones only
34
- @media (max-width: 767px) {
35
+ @media (max-width : 767px) {
35
36
  // Show
36
- .visible-phone { display: block; }
37
+ .visible-phone { display: inherit !important; } // Use inherit to restore previous behavior
37
38
  // Hide
38
- .hidden-phone { display: none; }
39
+ .hidden-phone { display: none !important; }
39
40
  // Hide everything else
40
- .hidden-desktop { display: block; }
41
- .visible-desktop { display: none; }
41
+ .hidden-desktop { display: inherit !important; }
42
+ .visible-desktop { display: none !important; }
42
43
  }
43
44
 
44
45
  // Tablets & small desktops only
45
46
  @media (min-width: 768px) and (max-width: 979px) {
46
47
  // Show
47
- .visible-tablet { display: block; }
48
+ .visible-tablet { display: inherit !important; }
48
49
  // Hide
49
- .hidden-tablet { display: none; }
50
+ .hidden-tablet { display: none !important; }
50
51
  // Hide everything else
51
- .hidden-desktop { display: block; }
52
- .visible-desktop { display: none; }
52
+ .hidden-desktop { display: inherit !important; }
53
+ .visible-desktop { display: none !important ; }
53
54
  }
54
55
 
55
56
  // UP TO LANDSCAPE PHONE
@@ -121,17 +122,37 @@
121
122
  // LANDSCAPE PHONE TO SMALL DESKTOP & PORTRAIT TABLET
122
123
  // --------------------------------------------------
123
124
 
124
- @media (max-width: 767px) {
125
+ @media (max-width: 768px) {
125
126
 
126
127
  // Padding to set content in a bit
127
128
  body {
128
129
  padding-left: 20px;
129
130
  padding-right: 20px;
130
131
  }
131
- .navbar-fixed-top {
132
+ // Negative indent the now static "fixed" navbar
133
+ .navbar-fixed-top, .navbar-fixed-bottom {
132
134
  margin-left: -20px;
133
135
  margin-right: -20px;
134
136
  }
137
+ // Remove padding on container given explicit padding set on body
138
+ .container-fluid {
139
+ padding: 0;
140
+ }
141
+
142
+ // TYPOGRAPHY
143
+ // ----------
144
+ // Reset horizontal dl
145
+ .dl-horizontal {
146
+ dt {
147
+ float: none;
148
+ clear: none;
149
+ width: auto;
150
+ text-align: left;
151
+ }
152
+ dd {
153
+ margin-left: 0;
154
+ }
155
+ }
135
156
 
136
157
  // GRID & CONTAINERS
137
158
  // -----------------
@@ -143,32 +164,27 @@
143
164
  .row-fluid {
144
165
  width: 100%;
145
166
  }
146
- // Undo negative margin on rows
147
- .row {
167
+ // Undo negative margin on rows and thumbnails
168
+ .row, .thumbnails {
148
169
  margin-left: 0;
149
170
  }
150
- // Make all columns even
151
- .row > [class*="span"], .row-fluid > [class*="span"] {
171
+ // Make all grid-sized elements block level again
172
+ [class*="span"], .row-fluid [class*="span"] {
152
173
  float: none;
153
174
  display: block;
154
175
  width: auto;
155
- margin: 0;
156
- }
157
-
158
- // THUMBNAILS
159
- // ----------
160
- .thumbnails [class*="span"] {
161
- width: auto;
176
+ margin-left: 0;
162
177
  }
163
178
 
164
179
  // FORM FIELDS
165
180
  // -----------
166
181
  // Make span* classes full width
167
- input[class*="span"], select[class*="span"], textarea[class*="span"], .uneditable-input {
182
+ .input-large, .input-xlarge, .input-xxlarge, input[class*="span"], select[class*="span"], textarea[class*="span"], .uneditable-input {
168
183
  @include input-block-level();
169
184
  }
170
185
  // But don't let it screw up prepend/append inputs
171
- .input-prepend input[class*="span"], .input-append input[class*="span"] {
186
+ .input-prepend input, .input-append input, .input-prepend input[class*="span"], .input-append input[class*="span"] {
187
+ display: inline-block; // redeclare so they don't wrap to new lines
172
188
  width: auto;
173
189
  }
174
190
  }
@@ -181,13 +197,15 @@
181
197
  @media (min-width: 768px) and (max-width: 979px) {
182
198
 
183
199
  // Fixed grid
184
- @include gridCore(42px, 20px);
200
+ @include gridCore($gridColumnWidthTablet, $gridGutterWidthTablet);
185
201
 
186
202
  // Fluid grid
187
- @include gridFluid(5.801104972%, 2.762430939%);
203
+ @include gridFluid($fluidGridColumnWidthTablet, $fluidGridGutterWidthTablet);
188
204
 
189
205
  // Input grid
190
- @include gridInput(42px, 20px);
206
+ @include gridInput($gridColumnWidthTablet, $gridGutterWidthTablet);
207
+
208
+ // No need to reset .thumbnails here since it's the same $gridGutterWidth
191
209
 
192
210
  }
193
211
 
@@ -221,43 +239,57 @@
221
239
  padding-right: 10px;
222
240
  margin: 0 0 0 -5px;
223
241
  }
242
+
243
+ // COLLAPSIBLE NAVBAR
244
+ // ------------------
224
245
  // Nav collapse clears brand
225
- .navbar .nav-collapse {
226
- clear: left;
246
+ .nav-collapse {
247
+ clear: both;
227
248
  }
228
249
  // Block-level the nav
229
- .navbar .nav {
250
+ .nav-collapse .nav {
230
251
  float: none;
231
252
  margin: 0 0 ($baseLineHeight / 2);
232
253
  }
233
- .navbar .nav > li {
254
+ .nav-collapse .nav > li {
234
255
  float: none;
235
256
  }
236
- .navbar .nav > li > a {
257
+ .nav-collapse .nav > li > a {
237
258
  margin-bottom: 2px;
238
259
  }
239
- .navbar .nav > .divider-vertical {
260
+ .nav-collapse .nav > .divider-vertical {
240
261
  display: none;
241
262
  }
242
- .navbar .nav .nav-header {
263
+ .nav-collapse .nav .nav-header {
243
264
  color: $navbarText;
244
265
  text-shadow: none;
245
266
  }
246
267
  // Nav and dropdown links in navbar
247
- .navbar .nav > li > a, .navbar .dropdown-menu a {
268
+ .nav-collapse .nav > li > a, .nav-collapse .dropdown-menu a {
248
269
  padding: 6px 15px;
249
270
  font-weight: bold;
250
271
  color: $navbarLinkColor;
251
272
  @include border-radius(3px);
252
273
  }
253
- .navbar .dropdown-menu li + li a {
274
+ // Buttons
275
+ .nav-collapse .btn {
276
+ padding: 4px 10px 4px;
277
+ font-weight: normal;
278
+ @include border-radius(4px);
279
+ }
280
+ .nav-collapse .dropdown-menu li + li a {
254
281
  margin-bottom: 2px;
255
282
  }
256
- .navbar .nav > li > a:hover, .navbar .dropdown-menu a:hover {
283
+ .nav-collapse .nav > li > a:hover, .nav-collapse .dropdown-menu a:hover {
257
284
  background-color: $navbarBackground;
258
285
  }
286
+ // Buttons in the navbar
287
+ .nav-collapse.in .btn-group {
288
+ margin-top: 5px;
289
+ padding: 0;
290
+ }
259
291
  // Dropdowns in the navbar
260
- .navbar .dropdown-menu {
292
+ .nav-collapse .dropdown-menu {
261
293
  position: static;
262
294
  top: auto;
263
295
  left: auto;
@@ -271,49 +303,49 @@
271
303
  @include border-radius(0);
272
304
  @include box-shadow(none);
273
305
  }
274
- .navbar .dropdown-menu:before, .navbar .dropdown-menu:after {
306
+ .nav-collapse .dropdown-menu:before, .nav-collapse .dropdown-menu:after {
275
307
  display: none;
276
308
  }
277
- .navbar .dropdown-menu .divider {
309
+ .nav-collapse .dropdown-menu .divider {
278
310
  display: none;
279
311
  }
280
312
  // Forms in navbar
281
- .navbar-form, .navbar-search {
313
+ .nav-collapse .navbar-form, .nav-collapse .navbar-search {
282
314
  float: none;
283
315
  padding: ($baseLineHeight / 2) 15px;
284
316
  margin: ($baseLineHeight / 2) 0;
285
317
  border-top: 1px solid $navbarBackground;
286
318
  border-bottom: 1px solid $navbarBackground;
287
- $shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1);
288
- @include box-shadow($shadow);
319
+ @include box-shadow(#{inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1)});
289
320
  }
290
321
  // Pull right (secondary) nav content
291
- .navbar .nav.pull-right {
322
+ .navbar .nav-collapse .nav.pull-right {
292
323
  float: none;
293
324
  margin-left: 0;
294
325
  }
295
- // Static navbar
296
- .navbar-static .navbar-inner {
297
- padding-left: 10px;
298
- padding-right: 10px;
326
+ // Hide everything in the navbar save .brand and toggle button */
327
+ .nav-collapse, .nav-collapse.collapse {
328
+ overflow: hidden;
329
+ height: 0;
299
330
  }
300
331
  // Navbar button
301
- .btn-navbar {
332
+ .navbar .btn-navbar {
302
333
  display: block;
303
334
  }
304
335
 
305
- // Hide everything in the navbar save .brand and toggle button
306
- .nav-collapse {
307
- overflow: hidden;
308
- height: 0;
336
+ // STATIC NAVBAR
337
+ // -------------
338
+ .navbar-static .navbar-inner {
339
+ padding-left: 10px;
340
+ padding-right: 10px;
309
341
  }
310
342
  }
311
343
 
312
344
 
313
-
314
345
  // DEFAULT DESKTOP
315
346
  // ---------------
316
347
 
348
+ // Required to make the collapsing navbar work on regular desktops
317
349
  @media (min-width: 980px) {
318
350
  .nav-collapse.collapse {
319
351
  height: auto !important;
@@ -321,28 +353,28 @@
321
353
  }
322
354
  }
323
355
 
324
-
325
-
326
356
  // LARGE DESKTOP & UP
327
357
  // ------------------
328
358
 
329
359
  @media (min-width: 1200px) {
330
360
 
331
361
  // Fixed grid
332
- @include gridCore(70px, 30px);
362
+ @include gridCore($gridColumnWidthLarge, $gridGutterWidthLarge);
333
363
 
334
364
  // Fluid grid
335
- @include gridFluid(5.982905983%, 2.564102564%);
365
+ @include gridFluid($fluidGridColumnWidthLarge, $fluidGridGutterWidthLarge);
336
366
 
337
367
  // Input grid
338
- @include gridInput(70px, 30px);
368
+ @include gridInput($gridColumnWidthLarge, $gridGutterWidthLarge);
339
369
 
340
370
  // Thumbnails
341
371
  .thumbnails {
342
- margin-left: -30px;
372
+ margin-left: -$gridGutterWidthLarge;
343
373
  }
344
374
  .thumbnails > li {
345
- margin-left: 30px;
375
+ margin-left: $gridGutterWidthLarge;
376
+ }
377
+ .row-fluid .thumbnails {
378
+ margin-left: 0;
346
379
  }
347
-
348
380
  }