anjlab-bootstrap-rails 3.0.0.rc2 → 3.0.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (40) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +11 -8
  3. data/Rakefile +19 -1
  4. data/app/assets/fonts/twitter/glyphicons-halflings-regular.eot +0 -0
  5. data/app/assets/fonts/twitter/glyphicons-halflings-regular.svg +228 -0
  6. data/app/assets/fonts/twitter/glyphicons-halflings-regular.ttf +0 -0
  7. data/app/assets/fonts/twitter/glyphicons-halflings-regular.woff +0 -0
  8. data/app/assets/javascripts/twitter/bootstrap/dropdown.js +3 -3
  9. data/app/assets/javascripts/twitter/bootstrap/modal.js +5 -3
  10. data/app/assets/javascripts/twitter/bootstrap/tooltip.js +9 -5
  11. data/app/assets/javascripts/twitter/bootstrap/transition.js +1 -1
  12. data/app/assets/stylesheets/twitter/bootstrap/_alerts.scss +7 -11
  13. data/app/assets/stylesheets/twitter/bootstrap/_bootstrap.scss +17 -21
  14. data/app/assets/stylesheets/twitter/bootstrap/_button-groups.scss +14 -10
  15. data/app/assets/stylesheets/twitter/bootstrap/_buttons.scss +14 -20
  16. data/app/assets/stylesheets/twitter/bootstrap/_carousel.scss +6 -1
  17. data/app/assets/stylesheets/twitter/bootstrap/_dropdowns.scss +23 -5
  18. data/app/assets/stylesheets/twitter/bootstrap/_forms.scss +44 -23
  19. data/app/assets/stylesheets/twitter/bootstrap/_glyphicons.scss +232 -0
  20. data/app/assets/stylesheets/twitter/bootstrap/_grid.scss +10 -4
  21. data/app/assets/stylesheets/twitter/bootstrap/_input-groups.scss +1 -1
  22. data/app/assets/stylesheets/twitter/bootstrap/_jumbotron.scss +16 -5
  23. data/app/assets/stylesheets/twitter/bootstrap/_labels.scss +9 -5
  24. data/app/assets/stylesheets/twitter/bootstrap/_mixins.scss +83 -51
  25. data/app/assets/stylesheets/twitter/bootstrap/_modals.scss +7 -0
  26. data/app/assets/stylesheets/twitter/bootstrap/_navbar.scss +254 -199
  27. data/app/assets/stylesheets/twitter/bootstrap/_navs.scss +13 -19
  28. data/app/assets/stylesheets/twitter/bootstrap/_pager.scss +1 -1
  29. data/app/assets/stylesheets/twitter/bootstrap/_pagination.scss +20 -9
  30. data/app/assets/stylesheets/twitter/bootstrap/_panels.scss +28 -8
  31. data/app/assets/stylesheets/twitter/bootstrap/_progress-bars.scss +6 -10
  32. data/app/assets/stylesheets/twitter/bootstrap/_responsive-utilities.scss +41 -72
  33. data/app/assets/stylesheets/twitter/bootstrap/_scaffolding.scss +36 -21
  34. data/app/assets/stylesheets/twitter/bootstrap/_tables.scss +84 -59
  35. data/app/assets/stylesheets/twitter/bootstrap/_theme.scss +232 -0
  36. data/app/assets/stylesheets/twitter/bootstrap/_thumbnails.scss +8 -19
  37. data/app/assets/stylesheets/twitter/bootstrap/_type.scss +2 -2
  38. data/app/assets/stylesheets/twitter/bootstrap/_variables.scss +90 -73
  39. data/lib/bootstrap-rails/version.rb +1 -1
  40. metadata +10 -4
@@ -8,7 +8,7 @@
8
8
  @include container-fixed();
9
9
  }
10
10
 
11
- // Mobile-first defaults
11
+ // mobile first defaults
12
12
  .row {
13
13
  @include make-row();
14
14
  }
@@ -223,6 +223,7 @@
223
223
  .col-md-12 { width: 100%; }
224
224
 
225
225
  // Push and pull columns for source order changes
226
+ .col-md-push-0 { left: auto; }
226
227
  .col-md-push-1 { left: percentage((1 / $grid-columns)); }
227
228
  .col-md-push-2 { left: percentage((2 / $grid-columns)); }
228
229
  .col-md-push-3 { left: percentage((3 / $grid-columns)); }
@@ -235,6 +236,7 @@
235
236
  .col-md-push-10 { left: percentage((10/ $grid-columns)); }
236
237
  .col-md-push-11 { left: percentage((11/ $grid-columns)); }
237
238
 
239
+ .col-md-pull-0 { right: auto; }
238
240
  .col-md-pull-1 { right: percentage((1 / $grid-columns)); }
239
241
  .col-md-pull-2 { right: percentage((2 / $grid-columns)); }
240
242
  .col-md-pull-3 { right: percentage((3 / $grid-columns)); }
@@ -248,6 +250,7 @@
248
250
  .col-md-pull-11 { right: percentage((11/ $grid-columns)); }
249
251
 
250
252
  // Offsets
253
+ .col-md-offset-0 { margin-left: 0; }
251
254
  .col-md-offset-1 { margin-left: percentage((1 / $grid-columns)); }
252
255
  .col-md-offset-2 { margin-left: percentage((2 / $grid-columns)); }
253
256
  .col-md-offset-3 { margin-left: percentage((3 / $grid-columns)); }
@@ -269,9 +272,9 @@
269
272
  // Note that `.col-lg-12` doesn't get floated on purpose—there's no need since
270
273
  // it's full-width.
271
274
 
272
- @media (min-width: $screen-large-desktop) {
275
+ @media (min-width: $screen-lg-desktop) {
273
276
  .container {
274
- max-width: $container-large-desktop;
277
+ max-width: $container-lg-desktop;
275
278
  }
276
279
 
277
280
  .col-lg-1,
@@ -301,6 +304,7 @@
301
304
  .col-lg-12 { width: 100%; }
302
305
 
303
306
  // Push and pull columns for source order changes
307
+ .col-lg-push-0 { left: auto; }
304
308
  .col-lg-push-1 { left: percentage((1 / $grid-columns)); }
305
309
  .col-lg-push-2 { left: percentage((2 / $grid-columns)); }
306
310
  .col-lg-push-3 { left: percentage((3 / $grid-columns)); }
@@ -313,6 +317,7 @@
313
317
  .col-lg-push-10 { left: percentage((10/ $grid-columns)); }
314
318
  .col-lg-push-11 { left: percentage((11/ $grid-columns)); }
315
319
 
320
+ .col-lg-pull-0 { right: auto; }
316
321
  .col-lg-pull-1 { right: percentage((1 / $grid-columns)); }
317
322
  .col-lg-pull-2 { right: percentage((2 / $grid-columns)); }
318
323
  .col-lg-pull-3 { right: percentage((3 / $grid-columns)); }
@@ -326,6 +331,7 @@
326
331
  .col-lg-pull-11 { right: percentage((11/ $grid-columns)); }
327
332
 
328
333
  // Offsets
334
+ .col-lg-offset-0 { margin-left: 0; }
329
335
  .col-lg-offset-1 { margin-left: percentage((1 / $grid-columns)); }
330
336
  .col-lg-offset-2 { margin-left: percentage((2 / $grid-columns)); }
331
337
  .col-lg-offset-3 { margin-left: percentage((3 / $grid-columns)); }
@@ -337,4 +343,4 @@
337
343
  .col-lg-offset-9 { margin-left: percentage((9 / $grid-columns)); }
338
344
  .col-lg-offset-10 { margin-left: percentage((10/ $grid-columns)); }
339
345
  .col-lg-offset-11 { margin-left: percentage((11/ $grid-columns)); }
340
- }
346
+ }
@@ -32,7 +32,7 @@
32
32
  .input-group-lg > .input-group-btn > .btn { @extend .input-lg; }
33
33
  .input-group-sm > .form-control,
34
34
  .input-group-sm > .input-group-addon,
35
- .input-group-lg > .input-group-btn > .btn { @extend .input-sm; }
35
+ .input-group-sm > .input-group-btn > .btn { @extend .input-sm; }
36
36
 
37
37
 
38
38
  // Display as table-cell
@@ -4,13 +4,14 @@
4
4
 
5
5
 
6
6
  .jumbotron {
7
- padding: 30px;
8
- margin-bottom: 30px;
7
+ padding: $jumbotron-padding;
8
+ margin-bottom: $jumbotron-padding;
9
9
  font-size: ($font-size-base * 1.5);
10
10
  font-weight: 200;
11
11
  line-height: ($line-height-base * 1.5);
12
- color: $jumbotron-lead-color;
12
+ color: $jumbotron-color;
13
13
  background-color: $jumbotron-bg;
14
+
14
15
  h1 {
15
16
  line-height: 1;
16
17
  color: $jumbotron-heading-color;
@@ -19,9 +20,19 @@
19
20
  line-height: 1.4;
20
21
  }
21
22
 
23
+ .container & {
24
+ border-radius: $border-radius-large; // Only round corners at higher resolutions if contained in a container
25
+ }
26
+
22
27
  @media screen and (min-width: $screen-tablet) {
23
- padding: 50px 60px;
24
- border-radius: $border-radius-large; // Only round corners at higher resolutions
28
+ padding-top: ($jumbotron-padding * 1.6);
29
+ padding-bottom: ($jumbotron-padding * 1.6);
30
+
31
+ .container & {
32
+ padding-left: ($jumbotron-padding * 2);
33
+ padding-right: ($jumbotron-padding * 2);
34
+ }
35
+
25
36
  h1 {
26
37
  font-size: ($font-size-base * 4.5);
27
38
  }
@@ -4,7 +4,7 @@
4
4
 
5
5
  .label {
6
6
  display: inline;
7
- padding: .25em .6em;
7
+ padding: .2em .6em .3em;
8
8
  font-size: 75%;
9
9
  font-weight: bold;
10
10
  line-height: 1;
@@ -37,18 +37,22 @@
37
37
  @include label-variant($label-default-bg);
38
38
  }
39
39
 
40
- .label-danger {
41
- @include label-variant($label-danger-bg);
40
+ .label-primary {
41
+ @include label-variant($label-primary-bg);
42
42
  }
43
43
 
44
44
  .label-success {
45
45
  @include label-variant($label-success-bg);
46
46
  }
47
47
 
48
+ .label-info {
49
+ @include label-variant($label-info-bg);
50
+ }
51
+
48
52
  .label-warning {
49
53
  @include label-variant($label-warning-bg);
50
54
  }
51
55
 
52
- .label-info {
53
- @include label-variant($label-info-bg);
56
+ .label-danger {
57
+ @include label-variant($label-danger-bg);
54
58
  }
@@ -284,7 +284,7 @@
284
284
 
285
285
  // Reset filters for IE
286
286
  //
287
- // When you need to remove a gradient background, don't forget to use this to reset
287
+ // When you need to remove a gradient background, do not forget to use this to reset
288
288
  // the IE filter for IE9 and below.
289
289
  @mixin reset-filter() {
290
290
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
@@ -292,12 +292,12 @@
292
292
 
293
293
 
294
294
 
295
- // RETINA IMAGE SUPPORT
296
- // --------------------------------------------------
297
-
295
+ // Retina images
296
+ //
298
297
  // Short retina mixin for setting background-image and -size
298
+
299
299
  @mixin img-retina($file-1x, $file-2x, $width-1x, $height-1x) {
300
- background-image: url("#{$file-1x}");
300
+ background-image: url($file-1x);
301
301
 
302
302
  @media
303
303
  only screen and (-webkit-min-device-pixel-ratio: 2),
@@ -312,6 +312,17 @@
312
312
  }
313
313
 
314
314
 
315
+ // Responsive image
316
+ //
317
+ // Keep images from scaling beyond the width of their parents.
318
+
319
+ @mixin img-responsive($display: block) {
320
+ display: $display;
321
+ max-width: 100%; // Part 1: Set a maximum relative to the parent
322
+ height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching
323
+ }
324
+
325
+
315
326
  // COMPONENT MIXINS
316
327
  // --------------------------------------------------
317
328
 
@@ -329,7 +340,7 @@
329
340
  // -------------------------
330
341
  @mixin panel-variant($border, $heading-text-color, $heading-bg-color, $heading-border) {
331
342
  border-color: $border;
332
- .panel-heading {
343
+ & > .panel-heading {
333
344
  color: $heading-text-color;
334
345
  background-color: $heading-bg-color;
335
346
  border-color: $heading-border;
@@ -337,7 +348,7 @@
337
348
  border-top-color: $border;
338
349
  }
339
350
  }
340
- .panel-footer {
351
+ & > .panel-footer {
341
352
  + .panel-collapse .panel-body {
342
353
  border-bottom-color: $border;
343
354
  }
@@ -358,27 +369,63 @@
358
369
  }
359
370
  }
360
371
 
372
+ // Tables
373
+ // -------------------------
374
+ @mixin table-row-variant($state, $background, $border) {
375
+ // Exact selectors below required to override `.table-striped` and prevent
376
+ // inheritance to nested tables.
377
+ .table > thead > tr,
378
+ .table > tbody > tr,
379
+ .table > tfoot > tr {
380
+ > td.#{state},
381
+ > th.#{state},
382
+ &.#{state} > td,
383
+ &.#{state} > th {
384
+ background-color: $background;
385
+ border-color: $border;
386
+ }
387
+ }
388
+
389
+ // Hover states for `.table-hover`
390
+ // Note: this is not available for cells or rows within `thead` or `tfoot`.
391
+ .table-hover > tbody > tr {
392
+ > td.#{state}:hover,
393
+ > th.#{state}:hover,
394
+ &.#{state}:hover > td {
395
+ background-color: darken($background, 5%);
396
+ border-color: darken($border, 5%);
397
+ }
398
+ }
399
+ }
400
+
361
401
  // Button variants
362
402
  // -------------------------
363
403
  // Easily pump out default styles, as well as :hover, :focus, :active,
364
404
  // and disabled options for all buttons
365
- @mixin button-variant($color, $background, $border) {
366
- color: $color;
367
- background-color: $background;
368
- border-color: $border;
405
+ @mixin button-variant($selector, $color, $background, $border) {
406
+ #{$selector} {
407
+ color: $color;
408
+ background-color: $background;
409
+ border-color: $border;
410
+ }
369
411
 
370
- &:hover,
371
- &:focus,
372
- &:active,
373
- &.active {
412
+ #{$selector}:hover,
413
+ #{$selector}:focus,
414
+ #{$selector}:active,
415
+ #{$selector}.active,
416
+ .open .dropdown-toggle#{$selector} {
374
417
  color: $color;
375
418
  background-color: darken($background, 8%);
376
419
  border-color: darken($border, 12%);
377
420
  }
378
-
379
- &.disabled,
380
- &[disabled],
381
- fieldset[disabled] & {
421
+ #{$selector}:active,
422
+ #{$selector}.active,
423
+ .open .dropdown-toggle#{$selector} {
424
+ background-image: none;
425
+ }
426
+ #{$selector}.disabled,
427
+ #{$selector}[disabled],
428
+ fieldset[disabled] #{$selector} {
382
429
  &,
383
430
  &:hover,
384
431
  &:focus,
@@ -482,43 +529,28 @@
482
529
  @mixin container-fixed() {
483
530
  margin-right: auto;
484
531
  margin-left: auto;
532
+ padding-left: ($grid-gutter-width / 2);
533
+ padding-right: ($grid-gutter-width / 2);
485
534
  @include clearfix();
486
535
  }
487
536
 
488
537
  // Creates a wrapper for a series of columns
489
538
  @mixin make-row($gutter: $grid-gutter-width) {
490
- // Then clear the floated columns
539
+ margin-left: ($gutter / -2);
540
+ margin-right: ($gutter / -2);
491
541
  @include clearfix();
492
-
493
- .container & {
494
- @media (min-width: $screen-small) {
495
- margin-left: ($gutter / -2);
496
- margin-right: ($gutter / -2);
497
- }
498
- }
499
-
500
- // Negative margin nested rows out to align the content of columns
501
- .row {
502
- margin-left: ($gutter / -2);
503
- margin-right: ($gutter / -2);
504
- }
505
542
  }
506
543
 
507
544
  // Generate the extra small columns
508
545
  @mixin make-xs-column($columns, $gutter: $grid-gutter-width) {
509
546
  position: relative;
510
547
  float: left;
548
+ width: percentage(($columns / $grid-columns));
511
549
  // Prevent columns from collapsing when empty
512
550
  min-height: 1px;
513
551
  // Inner gutter via padding
514
552
  padding-left: ($gutter / 2);
515
553
  padding-right: ($gutter / 2);
516
- $max-width: ($screen-small - 1);
517
-
518
- // Calculate width based on number of columns available
519
- @media (max-width: $max-width) {
520
- width: percentage(($columns / $grid-columns));
521
- }
522
554
  }
523
555
 
524
556
  // Generate the small columns
@@ -531,7 +563,7 @@
531
563
  padding-right: ($gutter / 2);
532
564
 
533
565
  // Calculate width based on number of columns available
534
- @media (min-width: $screen-small) {
566
+ @media (min-width: $screen-sm) {
535
567
  float: left;
536
568
  width: percentage(($columns / $grid-columns));
537
569
  }
@@ -539,17 +571,17 @@
539
571
 
540
572
  // Generate the small column offsets
541
573
  @mixin make-sm-column-offset($columns) {
542
- @media (min-width: $screen-small) {
574
+ @media (min-width: $screen-sm) {
543
575
  margin-left: percentage(($columns / $grid-columns));
544
576
  }
545
577
  }
546
578
  @mixin make-sm-column-push($columns) {
547
- @media (min-width: $screen-small) {
579
+ @media (min-width: $screen-sm) {
548
580
  left: percentage(($columns / $grid-columns));
549
581
  }
550
582
  }
551
583
  @mixin make-sm-column-pull($columns) {
552
- @media (min-width: $screen-small) {
584
+ @media (min-width: $screen-sm) {
553
585
  right: percentage(($columns / $grid-columns));
554
586
  }
555
587
  }
@@ -564,7 +596,7 @@
564
596
  padding-right: ($gutter / 2);
565
597
 
566
598
  // Calculate width based on number of columns available
567
- @media (min-width: $screen-medium) {
599
+ @media (min-width: $screen-md) {
568
600
  float: left;
569
601
  width: percentage(($columns / $grid-columns));
570
602
  }
@@ -572,17 +604,17 @@
572
604
 
573
605
  // Generate the large column offsets
574
606
  @mixin make-md-column-offset($columns) {
575
- @media (min-width: $screen-medium) {
607
+ @media (min-width: $screen-md) {
576
608
  margin-left: percentage(($columns / $grid-columns));
577
609
  }
578
610
  }
579
611
  @mixin make-md-column-push($columns) {
580
- @media (min-width: $screen-medium) {
612
+ @media (min-width: $screen-md) {
581
613
  left: percentage(($columns / $grid-columns));
582
614
  }
583
615
  }
584
616
  @mixin make-md-column-pull($columns) {
585
- @media (min-width: $screen-medium) {
617
+ @media (min-width: $screen-md) {
586
618
  right: percentage(($columns / $grid-columns));
587
619
  }
588
620
  }
@@ -597,7 +629,7 @@
597
629
  padding-right: ($gutter / 2);
598
630
 
599
631
  // Calculate width based on number of columns available
600
- @media (min-width: $screen-large) {
632
+ @media (min-width: $screen-lg) {
601
633
  float: left;
602
634
  width: percentage(($columns / $grid-columns));
603
635
  }
@@ -605,17 +637,17 @@
605
637
 
606
638
  // Generate the large column offsets
607
639
  @mixin make-lg-column-offset($columns) {
608
- @media (min-width: $screen-large) {
640
+ @media (min-width: $screen-lg) {
609
641
  margin-left: percentage(($columns / $grid-columns));
610
642
  }
611
643
  }
612
644
  @mixin make-lg-column-push($columns) {
613
- @media (min-width: $screen-large) {
645
+ @media (min-width: $screen-lg) {
614
646
  left: percentage(($columns / $grid-columns));
615
647
  }
616
648
  }
617
649
  @mixin make-lg-column-pull($columns) {
618
- @media (min-width: $screen-large) {
650
+ @media (min-width: $screen-lg) {
619
651
  right: percentage(($columns / $grid-columns));
620
652
  }
621
653
  }
@@ -12,6 +12,13 @@
12
12
  overflow: hidden;
13
13
  }
14
14
 
15
+ // Account for hiding of scrollbar
16
+ body.modal-open,
17
+ .modal-open .navbar-fixed-top,
18
+ .modal-open .navbar-fixed-bottom {
19
+ margin-right: 15px
20
+ }
21
+
15
22
  // Container that the modal scrolls within
16
23
  .modal {
17
24
  display: none;
@@ -10,10 +10,10 @@
10
10
 
11
11
  .navbar {
12
12
  position: relative;
13
+ z-index: $zindex-navbar;
13
14
  min-height: $navbar-height; // Ensure a navbar always shows (e.g., without a .navbar-brand in collapsed mode)
14
15
  margin-bottom: $navbar-margin-bottom;
15
- background-color: $navbar-bg;
16
- border: 1px solid $navbar-border;
16
+ border: 1px solid transparent;
17
17
 
18
18
  // Prevent floats from breaking the navbar
19
19
  @include clearfix();
@@ -30,8 +30,6 @@
30
30
  // styling of responsive aspects.
31
31
 
32
32
  .navbar-header {
33
- padding-left: $navbar-padding-horizontal;
34
- padding-right: $navbar-padding-horizontal;
35
33
  @include clearfix();
36
34
 
37
35
  @media (min-width: $grid-float-breakpoint) {
@@ -51,25 +49,61 @@
51
49
  // content for the user's viewport.
52
50
 
53
51
  .navbar-collapse {
54
- padding: 5px $navbar-padding-horizontal;
55
- border-top: 1px solid darken($navbar-bg, 7%);
56
- box-shadow: inset 0 1px 0 rgba(255,255,255,.1);
57
- // Clear floated elements and prevent collapsing of padding
58
- @include clearfix();
59
-
60
- // This is not automatically added to the `.navbar-fixed-top` because it causes
61
- // z-index bugs in iOS7 (possibly earlier).
62
52
  max-height: 340px;
63
53
  overflow-x: visible;
64
- overflow-y: auto;
54
+ padding-right: $navbar-padding-horizontal;
55
+ padding-left: $navbar-padding-horizontal;
56
+ border-top: 1px solid transparent;
57
+ box-shadow: inset 0 1px 0 rgba(255,255,255,.1);
58
+ @include clearfix();
65
59
  -webkit-overflow-scrolling: touch;
66
60
 
61
+ &.in {
62
+ overflow-y: auto;
63
+ }
64
+
67
65
  @media (min-width: $grid-float-breakpoint) {
68
66
  width: auto;
69
- padding-top: 0;
70
- padding-bottom: 0;
71
67
  border-top: 0;
72
68
  box-shadow: none;
69
+
70
+ &.collapse {
71
+ display: block !important;
72
+ height: auto !important;
73
+ padding-bottom: 0; // Override default setting
74
+ overflow: visible !important;
75
+ }
76
+
77
+ &.in {
78
+ overflow-y: visible;
79
+ }
80
+
81
+ // Account for first and last children spacing
82
+ .navbar-nav.navbar-left:first-child {
83
+ margin-left: -$navbar-padding-horizontal;
84
+ }
85
+ .navbar-nav.navbar-right:last-child {
86
+ margin-right: -$navbar-padding-horizontal;
87
+ }
88
+ .navbar-text:last-child {
89
+ margin-right: 0;
90
+ }
91
+ }
92
+ }
93
+
94
+
95
+ // Both navbar header and collapse
96
+ //
97
+ // When a container is present, change the behavior of the header and collapse.
98
+
99
+ .container > .navbar-header,
100
+ .container > .navbar-collapse {
101
+ margin-right: -$navbar-padding-horizontal;
102
+ margin-left: -$navbar-padding-horizontal;
103
+
104
+ @media (min-width: $grid-float-breakpoint) {
105
+ margin-right: 0;
106
+ margin-left: 0;
73
107
  }
74
108
  }
75
109
 
@@ -82,8 +116,8 @@
82
116
 
83
117
  // Static top (unfixed, but 100% wide) navbar
84
118
  .navbar-static-top {
119
+ border-width: 0 0 1px;
85
120
  @media (min-width: $grid-float-breakpoint) {
86
- border-width: 0 0 1px;
87
121
  border-radius: 0;
88
122
  }
89
123
  }
@@ -94,7 +128,6 @@
94
128
  position: fixed;
95
129
  right: 0;
96
130
  left: 0;
97
- z-index: $zindex-navbar-fixed;
98
131
  border-width: 0 0 1px;
99
132
 
100
133
  // Undo the rounded corners
@@ -103,6 +136,7 @@
103
136
  }
104
137
  }
105
138
  .navbar-fixed-top {
139
+ z-index: $zindex-navbar-fixed;
106
140
  top: 0;
107
141
  }
108
142
  .navbar-fixed-bottom {
@@ -115,17 +149,18 @@
115
149
 
116
150
  .navbar-brand {
117
151
  float: left;
118
- margin-right: ($navbar-padding-horizontal / 2);
119
- padding-top: $navbar-padding-vertical;
120
- padding-bottom: $navbar-padding-vertical;
152
+ padding: $navbar-padding-vertical $navbar-padding-horizontal;
121
153
  font-size: $font-size-large;
122
154
  line-height: $line-height-computed;
123
- color: $navbar-brand-color;
124
155
  &:hover,
125
156
  &:focus {
126
- color: $navbar-brand-hover-color;
127
157
  text-decoration: none;
128
- background-color: $navbar-brand-hover-bg;
158
+ }
159
+
160
+ @media (min-width: $grid-float-breakpoint) {
161
+ .navbar > .container & {
162
+ margin-left: -$navbar-padding-horizontal;
163
+ }
129
164
  }
130
165
  }
131
166
 
@@ -138,28 +173,27 @@
138
173
  .navbar-toggle {
139
174
  position: relative;
140
175
  float: right;
176
+ margin-right: $navbar-padding-horizontal;
141
177
  padding: 9px 10px;
142
178
  @include navbar-vertical-align(34px);
143
179
  background-color: transparent;
144
- border: 1px solid $navbar-toggle-border-color;
180
+ border: 1px solid transparent;
145
181
  border-radius: $border-radius-base;
146
182
 
147
- &:hover,
148
- &:focus {
149
- background-color: $navbar-toggle-hover-bg;
150
- }
151
-
152
183
  // Bars
153
184
  .icon-bar {
154
185
  display: block;
155
186
  width: 22px;
156
187
  height: 2px;
157
- background-color: $navbar-toggle-icon-bar-bg;
158
188
  border-radius: 1px;
159
189
  }
160
190
  .icon-bar + .icon-bar {
161
191
  margin-top: 4px;
162
192
  }
193
+
194
+ @media (min-width: $grid-float-breakpoint) {
195
+ display: none;
196
+ }
163
197
  }
164
198
 
165
199
 
@@ -169,44 +203,16 @@
169
203
  // the nav the full height of the horizontal nav (above 768px).
170
204
 
171
205
  .navbar-nav {
172
- margin-left: -$navbar-padding-horizontal;
173
- margin-right: -$navbar-padding-horizontal;
174
-
175
- @media (min-width: $grid-float-breakpoint) {
176
- margin-left: 0;
177
- margin-right: 0;
178
- }
206
+ margin: ($navbar-padding-vertical / 2) -$navbar-padding-horizontal;
179
207
 
180
208
  > li > a {
181
209
  padding-top: 10px;
182
210
  padding-bottom: 10px;
183
- color: $navbar-link-color;
184
211
  line-height: $line-height-computed;
185
- &:hover,
186
- &:focus {
187
- color: $navbar-link-hover-color;
188
- background-color: $navbar-link-hover-bg;
189
- }
190
- }
191
- > .active > a {
192
- &,
193
- &:hover,
194
- &:focus {
195
- color: $navbar-link-active-color;
196
- background-color: $navbar-link-active-bg;
197
- }
198
- }
199
- > .disabled > a {
200
- &,
201
- &:hover,
202
- &:focus {
203
- color: $navbar-link-disabled-color;
204
- background-color: $navbar-link-disabled-bg;
205
- }
206
212
  }
207
213
 
208
- @media (max-width: $screen-phone-max) {
209
- // Dropdowns get custom display
214
+ @media (max-width: $screen-xs-max) {
215
+ // Dropdowns get custom display when collapsed
210
216
  .open .dropdown-menu {
211
217
  position: static;
212
218
  float: none;
@@ -220,30 +226,25 @@
220
226
  padding: 5px 15px 5px 25px;
221
227
  }
222
228
  > li > a {
223
- color: $navbar-link-color;
224
229
  line-height: $line-height-computed;
225
230
  &:hover,
226
231
  &:focus {
227
- color: $navbar-link-hover-color;
228
- background-color: $navbar-link-hover-bg;
229
232
  background-image: none;
230
233
  }
231
234
  }
232
- > .active > a {
233
- &,
234
- &:hover,
235
- &:focus {
236
- color: $navbar-link-active-color;
237
- background-color: $navbar-link-active-bg;
238
- }
239
- }
240
- > .disabled > a {
241
- &,
242
- &:hover,
243
- &:focus {
244
- color: $navbar-link-disabled-color;
245
- background-color: $navbar-link-disabled-bg;
246
- }
235
+ }
236
+ }
237
+
238
+ // Uncollapse the nav
239
+ @media (min-width: $grid-float-breakpoint) {
240
+ float: left;
241
+ margin: 0;
242
+
243
+ > li {
244
+ float: left;
245
+ > a {
246
+ padding-top: (($navbar-height - $line-height-computed) / 2);
247
+ padding-bottom: (($navbar-height - $line-height-computed) / 2);
247
248
  }
248
249
  }
249
250
  }
@@ -258,15 +259,8 @@
258
259
  // though so that navbar contents properly stack and align in mobile.
259
260
 
260
261
  @media (min-width: $grid-float-breakpoint) {
261
- .navbar-left { @include pull-left; }
262
- .navbar-right {
263
- @include pull-right;
264
- .dropdown-menu {
265
- left: auto;
266
- right: 0;
267
- //INLINED .pull-right > .dropdown-menu();
268
- }
269
- }
262
+ .navbar-left { @include pull-left(); }
263
+ .navbar-right { @include pull-right(); }
270
264
  }
271
265
 
272
266
 
@@ -279,14 +273,16 @@
279
273
  margin-left: -$navbar-padding-horizontal;
280
274
  margin-right: -$navbar-padding-horizontal;
281
275
  padding: 10px $navbar-padding-horizontal;
282
- border-top: 1px solid darken($navbar-bg, 7%);
283
- border-bottom: 1px solid darken($navbar-bg, 7%);
276
+ border-top: 1px solid transparent;
277
+ border-bottom: 1px solid transparent;
278
+ $shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1);
279
+ @include box-shadow($shadow);
284
280
 
285
281
  // Mixin behavior for optimum display
286
282
  @include form-inline();
287
283
 
288
284
  .form-group {
289
- @media (max-width: $screen-phone-max) {
285
+ @media (max-width: $screen-xs-max) {
290
286
  margin-bottom: 5px;
291
287
  }
292
288
  }
@@ -302,6 +298,7 @@
302
298
  margin-right: 0;
303
299
  padding-top: 0;
304
300
  padding-bottom: 0;
301
+ @include box-shadow(none);
305
302
  }
306
303
  }
307
304
 
@@ -318,45 +315,176 @@
318
315
  @include border-bottom-radius(0);
319
316
  }
320
317
 
321
- // Dropdown menu items and carets
322
- .navbar-nav {
323
- // Caret should match text color on hover
324
- > .dropdown > a:hover .caret,
325
- > .dropdown > a:focus .caret {
326
- border-top-color: $navbar-link-hover-color;
327
- border-bottom-color: $navbar-link-hover-color;
318
+ // Right aligned menus need alt position
319
+ .navbar-nav.pull-right > li > .dropdown-menu,
320
+ .navbar-nav > li > .dropdown-menu.pull-right {
321
+ left: auto;
322
+ right: 0;
323
+ }
324
+
325
+
326
+ // Buttons in navbars
327
+ //
328
+ // Vertically center a button within a navbar (when *not* in a form).
329
+
330
+ .navbar-btn {
331
+ @include navbar-vertical-align($input-height-base);
332
+ }
333
+
334
+
335
+ // Text in navbars
336
+ //
337
+ // Add a class to make any element properly align itself vertically within the navbars.
338
+
339
+ .navbar-text {
340
+ float: left;
341
+ @include navbar-vertical-align($line-height-computed);
342
+
343
+ @media (min-width: $grid-float-breakpoint) {
344
+ margin-left: $navbar-padding-horizontal;
345
+ margin-right: $navbar-padding-horizontal;
328
346
  }
347
+ }
348
+
349
+ // Alternate navbars
350
+ // --------------------------------------------------
329
351
 
330
- // Remove background color from open dropdown
331
- > .open > a {
332
- &,
352
+ // Default navbar
353
+ .navbar-default {
354
+ background-color: $navbar-default-bg;
355
+ border-color: $navbar-default-border;
356
+
357
+ .navbar-brand {
358
+ color: $navbar-default-brand-color;
333
359
  &:hover,
334
360
  &:focus {
335
- background-color: $navbar-link-active-bg;
336
- color: $navbar-link-active-color;
337
- .caret {
338
- border-top-color: $navbar-link-active-color;
339
- border-bottom-color: $navbar-link-active-color;
361
+ color: $navbar-default-brand-hover-color;
362
+ background-color: $navbar-default-brand-hover-bg;
363
+ }
364
+ }
365
+
366
+ .navbar-text {
367
+ color: $navbar-default-color;
368
+ }
369
+
370
+ .navbar-nav {
371
+ > li > a {
372
+ color: $navbar-default-link-color;
373
+
374
+ &:hover,
375
+ &:focus {
376
+ color: $navbar-default-link-hover-color;
377
+ background-color: $navbar-default-link-hover-bg;
378
+ }
379
+ }
380
+ > .active > a {
381
+ &,
382
+ &:hover,
383
+ &:focus {
384
+ color: $navbar-default-link-active-color;
385
+ background-color: $navbar-default-link-active-bg;
386
+ }
387
+ }
388
+ > .disabled > a {
389
+ &,
390
+ &:hover,
391
+ &:focus {
392
+ color: $navbar-default-link-disabled-color;
393
+ background-color: $navbar-default-link-disabled-bg;
340
394
  }
341
395
  }
342
396
  }
343
- > .dropdown > a .caret {
344
- border-top-color: $navbar-link-color;
345
- border-bottom-color: $navbar-link-color;
397
+
398
+ .navbar-toggle {
399
+ border-color: $navbar-default-toggle-border-color;
400
+ &:hover,
401
+ &:focus {
402
+ background-color: $navbar-default-toggle-hover-bg;
403
+ }
404
+ .icon-bar {
405
+ background-color: $navbar-default-toggle-icon-bar-bg;
406
+ }
346
407
  }
347
- }
348
408
 
349
- // Right aligned menus need alt position
350
- .navbar-nav.pull-right > li > .dropdown-menu,
351
- .navbar-nav > li > .dropdown-menu.pull-right {
352
- left: auto;
353
- right: 0;
354
- }
409
+ .navbar-collapse,
410
+ .navbar-form {
411
+ border-color: darken($navbar-default-bg, 7%);
412
+ }
413
+
414
+ // Dropdown menu items and carets
415
+ .navbar-nav {
416
+ // Caret should match text color on hover
417
+ > .dropdown > a:hover .caret,
418
+ > .dropdown > a:focus .caret {
419
+ border-top-color: $navbar-default-link-hover-color;
420
+ border-bottom-color: $navbar-default-link-hover-color;
421
+ }
422
+
423
+ // Remove background color from open dropdown
424
+ > .open > a {
425
+ &,
426
+ &:hover,
427
+ &:focus {
428
+ background-color: $navbar-default-link-active-bg;
429
+ color: $navbar-default-link-active-color;
430
+ .caret {
431
+ border-top-color: $navbar-default-link-active-color;
432
+ border-bottom-color: $navbar-default-link-active-color;
433
+ }
434
+ }
435
+ }
436
+ > .dropdown > a .caret {
437
+ border-top-color: $navbar-default-link-color;
438
+ border-bottom-color: $navbar-default-link-color;
439
+ }
440
+
441
+
442
+ @media (max-width: $screen-xs-max) {
443
+ // Dropdowns get custom display when collapsed
444
+ .open .dropdown-menu {
445
+ > li > a {
446
+ color: $navbar-default-link-color;
447
+ &:hover,
448
+ &:focus {
449
+ color: $navbar-default-link-hover-color;
450
+ background-color: $navbar-default-link-hover-bg;
451
+ }
452
+ }
453
+ > .active > a {
454
+ &,
455
+ &:hover,
456
+ &:focus {
457
+ color: $navbar-default-link-active-color;
458
+ background-color: $navbar-default-link-active-bg;
459
+ }
460
+ }
461
+ > .disabled > a {
462
+ &,
463
+ &:hover,
464
+ &:focus {
465
+ color: $navbar-default-link-disabled-color;
466
+ background-color: $navbar-default-link-disabled-bg;
467
+ }
468
+ }
469
+ }
470
+ }
471
+ }
355
472
 
356
473
 
474
+ // Links in navbars
475
+ //
476
+ // Add a class to ensure links outside the navbar nav are colored correctly.
477
+
478
+ .navbar-link {
479
+ color: $navbar-default-link-color;
480
+ &:hover {
481
+ color: $navbar-default-link-hover-color;
482
+ }
483
+ }
484
+
485
+ }
357
486
 
358
487
  // Inverse navbar
359
- // --------------------------------------------------
360
488
 
361
489
  .navbar-inverse {
362
490
  background-color: $navbar-inverse-bg;
@@ -415,8 +543,9 @@
415
543
  }
416
544
  }
417
545
 
418
- .navbar-collapse {
419
- border-top-color: darken($navbar-inverse-bg, 7%);
546
+ .navbar-collapse,
547
+ .navbar-form {
548
+ border-color: darken($navbar-inverse-bg, 7%);
420
549
  }
421
550
 
422
551
  // Dropdowns
@@ -448,7 +577,7 @@
448
577
  }
449
578
  }
450
579
 
451
- @media (max-width: $screen-phone-max) {
580
+ @media (max-width: $screen-xs-max) {
452
581
  // Dropdowns get custom display
453
582
  .open .dropdown-menu {
454
583
  > .dropdown-header {
@@ -482,85 +611,11 @@
482
611
  }
483
612
  }
484
613
 
485
- }
486
-
487
-
488
-
489
- // Responsive navbar
490
- // --------------------------------------------------
491
-
492
- @media screen and (min-width: $grid-float-breakpoint) {
493
-
494
- .navbar-nav {
495
- float: left;
496
- // undo margin to make nav extend full height of navbar
497
- margin-top: 0;
498
- margin-bottom: 0;
499
-
500
- > li {
501
- float: left;
502
- > a {
503
- padding-top: (($navbar-height - $line-height-computed) / 2);
504
- padding-bottom: (($navbar-height - $line-height-computed) / 2);
505
- }
614
+ .navbar-link {
615
+ color: $navbar-inverse-link-color;
616
+ &:hover {
617
+ color: $navbar-inverse-link-hover-color;
506
618
  }
507
619
  }
508
620
 
509
- // Required to make the collapsing navbar work on regular desktops
510
- .navbar-toggle {
511
- position: relative;
512
- top: auto;
513
- left: auto;
514
- display: none;
515
- }
516
- .navbar-collapse.collapse {
517
- display: block !important;
518
- height: auto !important;
519
- padding-bottom: 0; // Override default setting
520
- overflow: visible !important;
521
- }
522
-
523
- }
524
-
525
-
526
-
527
- // Buttons in navbars
528
- //
529
- // Vertically center a button within a navbar (when *not* in a form).
530
-
531
- .navbar-btn {
532
- margin-top: (($navbar-height - $input-height-base) / 2);
533
- }
534
-
535
-
536
-
537
- // Text in navbars
538
- //
539
- // Add a class to make any element properly align itself vertically within the navbars.
540
-
541
- .navbar-text {
542
- float: left;
543
- @include navbar-vertical-align($line-height-computed);
544
- }
545
-
546
-
547
-
548
- // Links in navbars
549
- //
550
- // Add a class to ensure links outside the navbar nav are colored correctly.
551
-
552
- // Default navbar variables
553
- .navbar-link {
554
- color: $navbar-link-color;
555
- &:hover {
556
- color: $navbar-link-hover-color;
557
- }
558
- }
559
-
560
- // Use the inverse navbar variables
561
- .navbar-inverse .navbar-link {
562
- color: $navbar-inverse-link-color;
563
- &:hover {
564
- color: $navbar-inverse-link-hover-color;
565
- }
566
- }
621
+ }