compass_twitter_bootstrap 2.0.1.2 → 2.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (108) hide show
  1. data/README.md +17 -0
  2. data/build/convert.rb +2 -12
  3. data/lib/compass_twitter_bootstrap/version.rb +1 -1
  4. data/stylesheets/_compass_twitter_bootstrap.scss +2 -2
  5. data/stylesheets/_compass_twitter_bootstrap_awesome.scss +66 -0
  6. data/stylesheets/_compass_twitter_bootstrap_responsive.scss +14 -293
  7. data/stylesheets/compass_twitter_bootstrap/_accordion.scss +6 -1
  8. data/stylesheets/compass_twitter_bootstrap/_alerts.scss +3 -15
  9. data/stylesheets/compass_twitter_bootstrap/_breadcrumbs.scss +5 -3
  10. data/stylesheets/compass_twitter_bootstrap/_button-groups.scss +82 -39
  11. data/stylesheets/compass_twitter_bootstrap/_buttons.scss +38 -30
  12. data/stylesheets/compass_twitter_bootstrap/_carousel.scss +5 -5
  13. data/stylesheets/compass_twitter_bootstrap/_close.scss +13 -2
  14. data/stylesheets/compass_twitter_bootstrap/_code.scss +9 -9
  15. data/stylesheets/compass_twitter_bootstrap/_component-animations.scss +10 -8
  16. data/stylesheets/compass_twitter_bootstrap/_dropdowns.scss +62 -49
  17. data/stylesheets/compass_twitter_bootstrap/_font-awesome.scss +267 -0
  18. data/stylesheets/compass_twitter_bootstrap/_forms.scss +141 -77
  19. data/stylesheets/compass_twitter_bootstrap/_grid.scss +2 -5
  20. data/stylesheets/compass_twitter_bootstrap/_hero-unit.scss +4 -2
  21. data/stylesheets/compass_twitter_bootstrap/_labels-badges.scss +63 -0
  22. data/stylesheets/compass_twitter_bootstrap/_layouts.scss +3 -3
  23. data/stylesheets/compass_twitter_bootstrap/_mixins.scss +275 -255
  24. data/stylesheets/compass_twitter_bootstrap/_modals.scss +19 -12
  25. data/stylesheets/compass_twitter_bootstrap/_navbar.scss +146 -81
  26. data/stylesheets/compass_twitter_bootstrap/_navs.scss +77 -52
  27. data/stylesheets/compass_twitter_bootstrap/_pager.scss +8 -2
  28. data/stylesheets/compass_twitter_bootstrap/_pagination.scss +6 -5
  29. data/stylesheets/compass_twitter_bootstrap/_popovers.scss +9 -9
  30. data/stylesheets/compass_twitter_bootstrap/_progress-bars.scss +41 -19
  31. data/stylesheets/compass_twitter_bootstrap/_reset.scss +4 -4
  32. data/stylesheets/compass_twitter_bootstrap/_responsive-1200px-min.scss +26 -0
  33. data/stylesheets/compass_twitter_bootstrap/_responsive-767px-max.scss +149 -0
  34. data/stylesheets/compass_twitter_bootstrap/_responsive-768px-979px.scss +17 -0
  35. data/stylesheets/compass_twitter_bootstrap/_responsive-navbar.scss +146 -0
  36. data/stylesheets/compass_twitter_bootstrap/_responsive-utilities.scss +41 -0
  37. data/stylesheets/compass_twitter_bootstrap/_scaffolding.scss +4 -4
  38. data/stylesheets/compass_twitter_bootstrap/_sprites.scss +42 -9
  39. data/stylesheets/compass_twitter_bootstrap/_tables.scss +60 -34
  40. data/stylesheets/compass_twitter_bootstrap/_thumbnails.scss +18 -6
  41. data/stylesheets/compass_twitter_bootstrap/_tooltip.scss +7 -7
  42. data/stylesheets/compass_twitter_bootstrap/_type.scss +28 -11
  43. data/stylesheets/compass_twitter_bootstrap/_variables.scss +107 -9
  44. data/stylesheets/compass_twitter_bootstrap/_wells.scss +13 -2
  45. data/stylesheets_sass/_compass_twitter_bootstrap.sass +2 -2
  46. data/stylesheets_sass/_compass_twitter_bootstrap_awesome.sass +70 -0
  47. data/stylesheets_sass/_compass_twitter_bootstrap_responsive.sass +13 -224
  48. data/stylesheets_sass/compass_twitter_bootstrap/_accordion.sass +5 -1
  49. data/stylesheets_sass/compass_twitter_bootstrap/_alerts.sass +3 -14
  50. data/stylesheets_sass/compass_twitter_bootstrap/_breadcrumbs.sass +5 -3
  51. data/stylesheets_sass/compass_twitter_bootstrap/_button-groups.sass +73 -36
  52. data/stylesheets_sass/compass_twitter_bootstrap/_buttons.sass +39 -28
  53. data/stylesheets_sass/compass_twitter_bootstrap/_carousel.sass +5 -5
  54. data/stylesheets_sass/compass_twitter_bootstrap/_close.sass +12 -2
  55. data/stylesheets_sass/compass_twitter_bootstrap/_code.sass +10 -9
  56. data/stylesheets_sass/compass_twitter_bootstrap/_component-animations.sass +5 -5
  57. data/stylesheets_sass/compass_twitter_bootstrap/_dropdowns.sass +57 -47
  58. data/stylesheets_sass/compass_twitter_bootstrap/_font-awesome.sass +515 -0
  59. data/stylesheets_sass/compass_twitter_bootstrap/_forms.sass +140 -76
  60. data/stylesheets_sass/compass_twitter_bootstrap/_grid.sass +2 -5
  61. data/stylesheets_sass/compass_twitter_bootstrap/_hero-unit.sass +4 -2
  62. data/stylesheets_sass/compass_twitter_bootstrap/_labels-badges.sass +85 -0
  63. data/stylesheets_sass/compass_twitter_bootstrap/_layouts.sass +3 -3
  64. data/stylesheets_sass/compass_twitter_bootstrap/_mixins.sass +277 -260
  65. data/stylesheets_sass/compass_twitter_bootstrap/_modals.sass +19 -12
  66. data/stylesheets_sass/compass_twitter_bootstrap/_navbar.sass +138 -78
  67. data/stylesheets_sass/compass_twitter_bootstrap/_navs.sass +77 -51
  68. data/stylesheets_sass/compass_twitter_bootstrap/_pager.sass +8 -2
  69. data/stylesheets_sass/compass_twitter_bootstrap/_pagination.sass +6 -5
  70. data/stylesheets_sass/compass_twitter_bootstrap/_popovers.sass +9 -9
  71. data/stylesheets_sass/compass_twitter_bootstrap/_progress-bars.sass +44 -19
  72. data/stylesheets_sass/compass_twitter_bootstrap/_reset.sass +4 -3
  73. data/stylesheets_sass/compass_twitter_bootstrap/_responsive-1200px-min.sass +17 -0
  74. data/stylesheets_sass/compass_twitter_bootstrap/_responsive-767px-max.sass +115 -0
  75. data/stylesheets_sass/compass_twitter_bootstrap/_responsive-768px-979px.sass +11 -0
  76. data/stylesheets_sass/compass_twitter_bootstrap/_responsive-navbar.sass +115 -0
  77. data/stylesheets_sass/compass_twitter_bootstrap/_responsive-utilities.sass +56 -0
  78. data/stylesheets_sass/compass_twitter_bootstrap/_scaffolding.sass +4 -4
  79. data/stylesheets_sass/compass_twitter_bootstrap/_sprites.sass +70 -7
  80. data/stylesheets_sass/compass_twitter_bootstrap/_tables.sass +72 -34
  81. data/stylesheets_sass/compass_twitter_bootstrap/_thumbnails.sass +15 -5
  82. data/stylesheets_sass/compass_twitter_bootstrap/_tooltip.sass +7 -7
  83. data/stylesheets_sass/compass_twitter_bootstrap/_type.sass +27 -11
  84. data/stylesheets_sass/compass_twitter_bootstrap/_variables.sass +105 -8
  85. data/stylesheets_sass/compass_twitter_bootstrap/_wells.sass +11 -2
  86. data/vendor/assets/fonts/fontawesome-webfont.eot +0 -0
  87. data/vendor/assets/fonts/fontawesome-webfont.svg +175 -0
  88. data/vendor/assets/fonts/fontawesome-webfont.svgz +0 -0
  89. data/vendor/assets/fonts/fontawesome-webfont.ttf +0 -0
  90. data/vendor/assets/fonts/fontawesome-webfont.woff +0 -0
  91. data/vendor/assets/images/glyphicons-halflings-white.png +0 -0
  92. data/vendor/assets/images/glyphicons-halflings.png +0 -0
  93. data/vendor/assets/javascripts/bootstrap-alert.js +28 -32
  94. data/vendor/assets/javascripts/bootstrap-all.js +12 -0
  95. data/vendor/assets/javascripts/bootstrap-button.js +32 -34
  96. data/vendor/assets/javascripts/bootstrap-carousel.js +33 -21
  97. data/vendor/assets/javascripts/bootstrap-collapse.js +47 -26
  98. data/vendor/assets/javascripts/bootstrap-dropdown.js +18 -10
  99. data/vendor/assets/javascripts/bootstrap-modal.js +25 -17
  100. data/vendor/assets/javascripts/bootstrap-popover.js +13 -10
  101. data/vendor/assets/javascripts/bootstrap-scrollspy.js +44 -18
  102. data/vendor/assets/javascripts/bootstrap-tab.js +12 -7
  103. data/vendor/assets/javascripts/bootstrap-tooltip.js +40 -35
  104. data/vendor/assets/javascripts/bootstrap-transition.js +30 -20
  105. data/vendor/assets/javascripts/bootstrap-typeahead.js +29 -15
  106. metadata +29 -9
  107. data/stylesheets/compass_twitter_bootstrap/_labels.scss +0 -32
  108. data/stylesheets_sass/compass_twitter_bootstrap/_labels.sass +0 -42
@@ -4,17 +4,19 @@
4
4
  .hero-unit {
5
5
  padding: 60px;
6
6
  margin-bottom: 30px;
7
- background-color: #f5f5f5;
8
- @include border-radius(6px);
7
+ background-color: $heroUnitBackground;
8
+ @include bootstrap-border-radius(6px);
9
9
  h1 {
10
10
  margin-bottom: 0;
11
11
  font-size: 60px;
12
12
  line-height: 1;
13
+ color: $heroUnitHeadingColor;
13
14
  letter-spacing: -1px;
14
15
  }
15
16
  p {
16
17
  font-size: 18px;
17
18
  font-weight: 200;
18
19
  line-height: $baseLineHeight * 1.5;
20
+ color: $heroUnitLeadColor;
19
21
  }
20
22
  }
@@ -0,0 +1,63 @@
1
+ // LABELS & BADGES
2
+ // ---------------
3
+
4
+ // Base classes
5
+ .label,
6
+ .badge {
7
+ font-size: $baseFontSize * .846;
8
+ font-weight: bold;
9
+ line-height: 14px; // ensure proper line-height if floated
10
+ color: $white;
11
+ vertical-align: baseline;
12
+ white-space: nowrap;
13
+ text-shadow: 0 -1px 0 rgba(0,0,0,.25);
14
+ background-color: $grayLight;
15
+ }
16
+ // Set unique padding and border-radii
17
+ .label {
18
+ padding: 1px 4px 2px;
19
+ @include bootstrap-border-radius(3px);
20
+ }
21
+ .badge {
22
+ padding: 1px 9px 2px;
23
+ @include bootstrap-border-radius(9px);
24
+ }
25
+
26
+ // Hover state, but only for links
27
+ a {
28
+ &.label:hover,
29
+ &.badge:hover {
30
+ color: $white;
31
+ text-decoration: none;
32
+ cursor: pointer;
33
+ }
34
+ }
35
+
36
+ // Colors
37
+ // Only give background-color difference to links (and to simplify, we don't qualifty with `a` but [href] attribute)
38
+ // Important (red)
39
+ .label-important,
40
+ .badge-important { background-color: $errorText; }
41
+ .label-important[href],
42
+ .badge-important[href] { background-color: darken($errorText, 10%); }
43
+ // Warnings (orange)
44
+ .label-warning,
45
+ .badge-warning { background-color: $orange; }
46
+ .label-warning[href],
47
+ .badge-warning[href] { background-color: darken($orange, 10%); }
48
+ // Success (green)
49
+ .label-success,
50
+ .badge-success { background-color: $successText; }
51
+ .label-success[href],
52
+ .badge-success[href] { background-color: darken($successText, 10%); }
53
+ // Info (turquoise)
54
+ .label-info,
55
+ .badge-info, { background-color: $infoText; }
56
+ .label-info[href],
57
+ .badge-info[href] { background-color: darken($infoText, 10%); }
58
+ // Inverse (black)
59
+ .label-inverse,
60
+ .badge-inverse, { background-color: $grayDark; }
61
+ .label-inverse[href],
62
+ .badge-inverse[href] { background-color: darken($grayDark, 10%); }
63
+
@@ -6,12 +6,12 @@
6
6
 
7
7
  // Container (centered, fixed-width layouts)
8
8
  .container {
9
- @include container-fixed();
9
+ @include bootstrap-container-fixed();
10
10
  }
11
11
 
12
12
  // Fluid layouts (left aligned, with sidebar, min- & max-width content)
13
13
  .container-fluid {
14
- padding-left: $gridGutterWidth;
15
14
  padding-right: $gridGutterWidth;
16
- @include clearfix();
15
+ padding-left: $gridGutterWidth;
16
+ @include bootstrap-clearfix();
17
17
  }
@@ -9,7 +9,7 @@
9
9
  // Clearfix
10
10
  // --------
11
11
  // For clearing floats like a boss h5bp.com/q
12
- @mixin clearfix() {
12
+ @mixin bootstrap-clearfix {
13
13
  *zoom: 1;
14
14
  &:before,
15
15
  &:after {
@@ -23,7 +23,7 @@
23
23
 
24
24
  // Webkit-style focus
25
25
  // ------------------
26
- @mixin tab-focus() {
26
+ @mixin bootstrap-tab-focus() {
27
27
  // Default
28
28
  outline: thin dotted #333;
29
29
  // Webkit
@@ -33,7 +33,7 @@
33
33
 
34
34
  // Center-align a block level element
35
35
  // ----------------------------------
36
- @mixin center-block() {
36
+ @mixin bootstrap-center-block() {
37
37
  display: block;
38
38
  margin-left: auto;
39
39
  margin-right: auto;
@@ -41,7 +41,7 @@
41
41
 
42
42
  // IE7 inline-block
43
43
  // ----------------
44
- @mixin ie7-inline-block() {
44
+ @mixin bootstrap-ie7-inline-block() {
45
45
  *display: inline; /* IE7 inline-block hack */
46
46
  *zoom: 1;
47
47
  }
@@ -52,7 +52,7 @@
52
52
  // right version is for icons, which come before. Applying both is ok, but it will
53
53
  // mean that space between those elements will be .6em (~2 space characters) in IE7,
54
54
  // instead of the 1 space in other browsers.
55
- @mixin ie7-restore-left-whitespace() {
55
+ @mixin bootstrap-ie7-restore-left-whitespace() {
56
56
  *margin-left: .3em;
57
57
 
58
58
  &:first-child {
@@ -60,7 +60,7 @@
60
60
  }
61
61
  }
62
62
 
63
- @mixin ie7-restore-right-whitespace() {
63
+ @mixin bootstrap-ie7-restore-right-whitespace() {
64
64
  *margin-right: .3em;
65
65
 
66
66
  &:last-child {
@@ -70,17 +70,17 @@
70
70
 
71
71
  // Sizing shortcuts
72
72
  // -------------------------
73
- @mixin size($height: 5px, $width: 5px) {
73
+ @mixin bootstrap-size($height, $width) {
74
74
  width: $width;
75
75
  height: $height;
76
76
  }
77
- @mixin square($size: 5px) {
78
- @include size($size, $size);
77
+ @mixin bootstrap-square($size) {
78
+ @include bootstrap-size($size, $size);
79
79
  }
80
80
 
81
81
  // Placeholder text
82
82
  // -------------------------
83
- @mixin placeholder($color: $placeholderText) {
83
+ @mixin bootstrap-placeholder($color: $placeholderText) {
84
84
  :-moz-placeholder {
85
85
  color: $color;
86
86
  }
@@ -92,205 +92,72 @@
92
92
  // Text overflow
93
93
  // -------------------------
94
94
  // Requires inline-block or block for proper styling
95
- @mixin text-overflow() {
95
+ @mixin bootstrap-text-overflow() {
96
96
  overflow: hidden;
97
97
  text-overflow: ellipsis;
98
98
  white-space: nowrap;
99
99
  }
100
100
 
101
- // FONTS
102
- // --------------------------------------------------
103
- @mixin font-family-serif {
104
- font-family: Georgia, "Times New Roman", Times, serif;
101
+ // CSS image replacement
102
+ // -------------------------
103
+ // Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757
104
+ @mixin bootstrap-hide-text {
105
+ font: 0/0 a;
106
+ color: transparent;
107
+ text-shadow: none;
108
+ background-color: transparent;
109
+ border: 0;
105
110
  }
106
111
 
107
- @mixin font-family-sans-serif {
108
- font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
112
+ // FONTS
113
+ // --------------------------------------------------
114
+ @mixin bootstrap-font-family-serif {
115
+ font-family: $serifFontFamily;
109
116
  }
110
117
 
111
- @mixin font-family-monospace {
112
- font-family: Menlo, Monaco, "Courier New", monospace;
118
+ @mixin bootstrap-font-family-sans-serif {
119
+ font-family: $sansFontFamily;
113
120
  }
114
121
 
115
- @mixin font-serif($size: $baseFontSize, $weight: normal, $lineHeight: $baseLineHeight) {
116
- font-family: Georgia, "Times New Roman", Times, serif;
117
- @include shorthand($size, $weight, $lineHeight);
122
+ @mixin bootstrap-font-family-monospace {
123
+ font-family: $monoFontFamily;
118
124
  }
119
125
 
120
- @mixin font-shorthand($size: $baseFontSize, $weight: normal, $lineHeight: $baseLineHeight) {
126
+ @mixin bootstrap-font-shorthand($size: $baseFontSize, $weight: normal, $lineHeight: $baseLineHeight) {
121
127
  font-size: $size;
122
128
  font-weight: $weight;
123
129
  line-height: $lineHeight;
124
130
  }
125
131
 
126
- @mixin font-serif($size: $baseFontSize, $weight: normal, $lineHeight: $baseLineHeight) {
127
- @include font-family-serif();
128
- @include font-shorthand($size, $weight, $lineHeight);
132
+ @mixin bootstrap-font-serif($size: $baseFontSize, $weight: normal, $lineHeight: $baseLineHeight) {
133
+ @include bootstrap-font-family-serif();
134
+ @include bootstrap-font-shorthand($size, $weight, $lineHeight);
129
135
  }
130
136
 
131
- @mixin font-sans-serif($size: $baseFontSize, $weight: normal, $lineHeight: $baseLineHeight) {
132
- @include font-family-sans-serif();
133
- @include font-shorthand($size, $weight, $lineHeight);
137
+ @mixin bootstrap-font-sans-serif($size: $baseFontSize, $weight: normal, $lineHeight: $baseLineHeight) {
138
+ @include bootstrap-font-family-sans-serif();
139
+ @include bootstrap-font-shorthand($size, $weight, $lineHeight);
134
140
  }
135
141
 
136
- @mixin font-monospace($size: $baseFontSize, $weight: normal, $lineHeight: $baseLineHeight) {
137
- @include font-family-monospace();
138
- @include font-shorthand($size, $weight, $lineHeight);
142
+ @mixin bootstrap-font-monospace($size: $baseFontSize, $weight: normal, $lineHeight: $baseLineHeight) {
143
+ @include bootstrap-font-family-monospace();
144
+ @include bootstrap-font-shorthand($size, $weight, $lineHeight);
139
145
  }
140
146
 
141
-
142
- // GRID SYSTEM
147
+ // FORMS
143
148
  // --------------------------------------------------
144
149
 
145
- // Site container
146
- // -------------------------
147
- @mixin container-fixed() {
148
- width: $gridRowWidth;
149
- margin-left: auto;
150
- margin-right: auto;
151
- @include clearfix();
152
- }
153
-
154
- // Le grid system
155
- @mixin gridSystem-columns ($gridGutterWidth, $gridColumnWidth, $gridRowWidth, $columns) {
156
- width: ($gridColumnWidth * $columns) + ($gridGutterWidth * ($columns - 1));
157
- }
158
-
159
- @mixin gridSystem-offset($gridColumnWidth, $gridGutterWidth, $columns) {
160
- margin-left: ($gridColumnWidth * $columns) + ($gridGutterWidth * ($columns - 1)) + ($gridGutterWidth * 2);
161
- }
162
-
163
- @mixin gridSystem-gridColumn($gridGutterWidth) {
164
- float: left;
165
- margin-left: $gridGutterWidth;
166
- }
167
-
168
- // Take these values and mixins, and make 'em do their thang
169
- @mixin gridSystem-generate($gridColumns, $gridColumnWidth, $gridGutterWidth) {
170
- // Row surrounds the columns
171
- .row {
172
- margin-left: $gridGutterWidth * -1;
173
- @include clearfix();
174
- }
175
- // Find all .span# classes within .row and give them the necessary properties for grid columns (supported by all browsers back to IE7, thanks $dhg)
176
- [class*="span"] {
177
- @include gridSystem-gridColumn($gridGutterWidth);
178
- }
179
- // Default columns
180
- .span1 { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 1); }
181
- .span2 { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 2); }
182
- .span3 { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 3); }
183
- .span4 { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 4); }
184
- .span5 { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 5); }
185
- .span6 { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 6); }
186
- .span7 { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 7); }
187
- .span8 { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 8); }
188
- .span9 { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 9); }
189
- .span10 { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 10); }
190
- .span11 { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 11); }
191
- .span12,
192
- .container { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 12); }
193
- // Offset column options
194
- .offset1 { @include gridSystem-offset($gridColumnWidth, $gridGutterWidth, 1); }
195
- .offset2 { @include gridSystem-offset($gridColumnWidth, $gridGutterWidth, 2); }
196
- .offset3 { @include gridSystem-offset($gridColumnWidth, $gridGutterWidth, 3); }
197
- .offset4 { @include gridSystem-offset($gridColumnWidth, $gridGutterWidth, 4); }
198
- .offset5 { @include gridSystem-offset($gridColumnWidth, $gridGutterWidth, 5); }
199
- .offset6 { @include gridSystem-offset($gridColumnWidth, $gridGutterWidth, 6); }
200
- .offset7 { @include gridSystem-offset($gridColumnWidth, $gridGutterWidth, 7); }
201
- .offset8 { @include gridSystem-offset($gridColumnWidth, $gridGutterWidth, 8); }
202
- .offset9 { @include gridSystem-offset($gridColumnWidth, $gridGutterWidth, 9); }
203
- .offset10 { @include gridSystem-offset($gridColumnWidth, $gridGutterWidth, 10); }
204
- .offset11 { @include gridSystem-offset($gridColumnWidth, $gridGutterWidth, 11); }
205
- }
206
-
207
- // Fluid grid system
208
- // -------------------------
209
- @mixin fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, $columns) {
210
- width: ($fluidGridColumnWidth * $columns) + ($fluidGridGutterWidth * ($columns - 1));
211
- }
212
-
213
- @mixin fluidGridSystem-gridColumn($fluidGridGutterWidth) {
214
- float: left;
215
- margin-left: $fluidGridGutterWidth;
216
- }
217
-
218
- // Take these values and mixins, and make 'em do their thang
219
- @mixin fluidGridSystem-generate($gridColumns, $fluidGridColumnWidth, $fluidGridGutterWidth) {
220
- // Row surrounds the columns
221
- .row-fluid {
222
- width: 100%;
223
- @include clearfix();
224
-
225
- // Find all .span# classes within .row and give them the necessary properties for grid columns (supported by all browsers back to IE7, thanks $dhg)
226
- > [class*="span"] {
227
- @include fluidGridSystem-gridColumn($fluidGridGutterWidth);
228
- }
229
- > [class*="span"]:first-child {
230
- margin-left: 0;
231
- }
232
- // Default columns
233
- > .span1 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 1); }
234
- > .span2 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 2); }
235
- > .span3 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 3); }
236
- > .span4 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 4); }
237
- > .span5 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 5); }
238
- > .span6 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 6); }
239
- > .span7 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 7); }
240
- > .span8 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 8); }
241
- > .span9 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 9); }
242
- > .span10 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 10); }
243
- > .span11 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 11); }
244
- > .span12 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 12); }
245
- }
246
- }
247
-
248
-
249
-
250
- // Input grid system
251
- // -------------------------
252
- @mixin inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, $columns) {
253
- width: (($gridColumnWidth) * $columns) + ($gridGutterWidth * ($columns - 1)) - 10;
254
- }
255
-
256
- @mixin inputGridSystem-generate($gridColumns, $gridColumnWidth, $gridGutterWidth) {
257
- input,
258
- textarea,
259
- .uneditable-input {
260
- &.span1 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 1); }
261
- &.span2 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 2); }
262
- &.span3 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 3); }
263
- &.span4 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 4); }
264
- &.span5 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 5); }
265
- &.span6 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 6); }
266
- &.span7 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 7); }
267
- &.span8 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 8); }
268
- &.span9 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 9); }
269
- &.span10 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 10); }
270
- &.span11 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 11); }
271
- &.span12 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 12); }
272
- }
273
- }
274
-
275
- // Make a Grid
276
- // -------------------------
277
- // Use .makeRow and .makeColumn to assign semantic layouts grid system behavior
278
- @mixin makeRow() {
279
- margin-left: $gridGutterWidth * -1;
280
- @include clearfix();
281
- }
282
- @mixin makeColumn($columns: 1) {
283
- float: left;
284
- margin-left: $gridGutterWidth;
285
- width: ($gridColumnWidth * $columns) + ($gridGutterWidth * ($columns - 1));
150
+ // Block level inputs
151
+ @mixin bootstrap-input-block-level {
152
+ display: block;
153
+ width: 100%;
154
+ min-height: 28px; // Make inputs at least the height of their button counterpart
155
+ @include bootstrap-box-sizing(border-box); // Makes inputs behave like true block-level elements
286
156
  }
287
157
 
288
158
 
289
- // Form field states (used in forms.less)
290
- // --------------------------------------------------
291
-
292
159
  // Mixin for form field states
293
- @mixin formFieldState($textColor: #555, $borderColor: #ccc, $backgroundColor: #f5f5f5) {
160
+ @mixin bootstrap-formFieldState($textColor: #555, $borderColor: #ccc, $backgroundColor: #f5f5f5) {
294
161
  // Set the text color
295
162
  > label,
296
163
  .help-block,
@@ -305,7 +172,7 @@
305
172
  border-color: $borderColor;
306
173
  &:focus {
307
174
  border-color: darken($borderColor, 10%);
308
- @include box-shadow(0 0 6px lighten($borderColor, 20%));
175
+ @include bootstrap-box-shadow(0 0 6px lighten($borderColor, 20%));
309
176
  }
310
177
  }
311
178
  // Give a small background color for input-prepend/-append
@@ -321,16 +188,22 @@
321
188
  // CSS3 PROPERTIES
322
189
  // --------------------------------------------------
323
190
 
191
+ // Border Radius
192
+ @mixin bootstrap-border-radius($radius) {
193
+ -webkit-border-radius: $radius;
194
+ -moz-border-radius: $radius;
195
+ border-radius: $radius;
196
+ }
324
197
 
325
198
  // Drop shadows
326
- @mixin box-shadow($shadow: 0 1px 3px rgba(0,0,0,.25)) {
199
+ @mixin bootstrap-box-shadow($shadow) {
327
200
  -webkit-box-shadow: $shadow;
328
201
  -moz-box-shadow: $shadow;
329
202
  box-shadow: $shadow;
330
203
  }
331
204
 
332
205
  // Transitions
333
- @mixin transition($transition) {
206
+ @mixin bootstrap-transition($transition) {
334
207
  -webkit-transition: $transition;
335
208
  -moz-transition: $transition;
336
209
  -ms-transition: $transition;
@@ -339,35 +212,35 @@
339
212
  }
340
213
 
341
214
  // Transformations
342
- @mixin rotate($degrees) {
215
+ @mixin bootstrap-rotate($degrees) {
343
216
  -webkit-transform: rotate($degrees);
344
217
  -moz-transform: rotate($degrees);
345
218
  -ms-transform: rotate($degrees);
346
219
  -o-transform: rotate($degrees);
347
220
  transform: rotate($degrees);
348
221
  }
349
- @mixin scale($ratio) {
222
+ @mixin bootstrap-scale($ratio) {
350
223
  -webkit-transform: scale($ratio);
351
224
  -moz-transform: scale($ratio);
352
225
  -ms-transform: scale($ratio);
353
226
  -o-transform: scale($ratio);
354
227
  transform: scale($ratio);
355
228
  }
356
- @mixin translate($x: 0, $y: 0) {
229
+ @mixin bootstrap-translate($x, $y) {
357
230
  -webkit-transform: translate($x, $y);
358
231
  -moz-transform: translate($x, $y);
359
232
  -ms-transform: translate($x, $y);
360
233
  -o-transform: translate($x, $y);
361
234
  transform: translate($x, $y);
362
235
  }
363
- @mixin skew($x: 0, $y: 0) {
236
+ @mixin bootstrap-skew($x, $y) {
364
237
  -webkit-transform: skew($x, $y);
365
238
  -moz-transform: skew($x, $y);
366
239
  -ms-transform: skew($x, $y);
367
240
  -o-transform: skew($x, $y);
368
241
  transform: skew($x, $y);
369
242
  }
370
- @mixin translate3d($x: 0, $y: 0, $z: 0) {
243
+ @mixin bootstrap-translate3d($x, $y, $z) {
371
244
  -webkit-transform: translate($x, $y, $z);
372
245
  -moz-transform: translate($x, $y, $z);
373
246
  -ms-transform: translate($x, $y, $z);
@@ -375,16 +248,27 @@
375
248
  transform: translate($x, $y, $z);
376
249
  }
377
250
 
251
+ // Backface visibility
252
+ // Prevent browsers from flickering when using CSS 3D transforms.
253
+ // Default value is `visible`, but can be changed to `hidden
254
+ // See git pull https://github.com/dannykeane/bootstrap.git backface-visibility for examples
255
+ @mixin bootstrap-backface-visibility($visibility){
256
+ -webkit-backface-visibility: $visibility;
257
+ -moz-backface-visibility: $visibility;
258
+ -ms-backface-visibility: $visibility;
259
+ backface-visibility: $visibility;
260
+ }
261
+
378
262
  // Background clipping
379
263
  // Heads up: FF 3.6 and under need "padding" instead of "padding-box"
380
- @mixin background-clip($clip) {
264
+ @mixin bootstrap-background-clip($clip) {
381
265
  -webkit-background-clip: $clip;
382
266
  -moz-background-clip: $clip;
383
267
  background-clip: $clip;
384
268
  }
385
269
 
386
270
  // Background sizing
387
- @mixin background-size($size){
271
+ @mixin bootstrap-background-size($size){
388
272
  -webkit-background-size: $size;
389
273
  -moz-background-size: $size;
390
274
  -o-background-size: $size;
@@ -393,29 +277,31 @@
393
277
 
394
278
 
395
279
  // Box sizing
396
- @mixin box-sizing($boxmodel) {
280
+ @mixin bootstrap-box-sizing($boxmodel) {
397
281
  -webkit-box-sizing: $boxmodel;
398
282
  -moz-box-sizing: $boxmodel;
283
+ -ms-box-sizing: $boxmodel;
399
284
  box-sizing: $boxmodel;
400
285
  }
401
286
 
402
287
  // User select
403
288
  // For selecting text on the page
404
- @mixin user-select($select) {
289
+ @mixin bootstrap-user-select($select) {
405
290
  -webkit-user-select: $select;
406
291
  -moz-user-select: $select;
292
+ -ms-user-select: $select;
407
293
  -o-user-select: $select;
408
294
  user-select: $select;
409
295
  }
410
296
 
411
297
  // Resize anything
412
- @mixin resizable($direction: both) {
298
+ @mixin bootstrap-resizable($direction) {
413
299
  resize: $direction; // Options: horizontal, vertical, both
414
300
  overflow: auto; // Safari fix
415
301
  }
416
302
 
417
303
  // CSS3 Content Columns
418
- @mixin content-columns($columnCount, $columnGap: $gridColumnGutter) {
304
+ @mixin bootstrap-content-columns($columnCount, $columnGap: $gridGutterWidth) {
419
305
  -webkit-column-count: $columnCount;
420
306
  -moz-column-count: $columnCount;
421
307
  column-count: $columnCount;
@@ -424,54 +310,58 @@
424
310
  column-gap: $columnGap;
425
311
  }
426
312
 
313
+ // Opacity
314
+ @mixin bootstrap-opacity($opacity) {
315
+ opacity: $opacity / 100;
316
+ filter: unquote("alpha(opacity=#{$opacity})");
317
+ }
318
+
427
319
 
428
320
 
429
321
  // BACKGROUNDS
430
322
  // --------------------------------------------------
431
323
 
432
324
  // Add an alphatransparency value to any background or border color (via Elyse Holladay)
433
- @mixin translucent-background($color: $white, $alpha: 1) {
434
- background-color: hsla(hue($color), saturation($color), lightness($color), $alpha);
325
+ @mixin bootstrap-translucent-background($color: $white, $alpha: 1) {
326
+ background-color: hsla(hue($color), saturation($color), lightness($color), $alpha);
435
327
  }
436
328
 
437
- @mixin translucent-border($color: $white, $alpha: 1) {
329
+ @mixin bootstrap-translucent-border($color: $white, $alpha: 1) {
438
330
  border-color: hsla(hue($color), saturation($color), lightness($color), $alpha);
439
- @include background-clip(padding-box);
331
+ @include bootstrap-background-clip(padding-box);
440
332
  }
441
333
 
442
334
  // Gradient Bar Colors for buttons and alerts
443
- @mixin gradientBar($primaryColor, $secondaryColor) {
444
- @include gradient-vertical($primaryColor, $secondaryColor);
335
+ @mixin bootstrap-gradientBar($primaryColor, $secondaryColor) {
336
+ @include bootstrap-gradient-vertical($primaryColor, $secondaryColor);
445
337
  border-color: $secondaryColor $secondaryColor darken($secondaryColor, 15%);
446
338
  border-color: rgba(0,0,0,.1) rgba(0,0,0,.1) fadein(rgba(0,0,0,.1), 15%);
447
339
  }
448
340
 
449
341
  // Gradients
450
- @mixin gradient-horizontal($startColor: #555, $endColor: #333) {
342
+ @mixin bootstrap-gradient-horizontal($startColor: #555, $endColor: #333) {
451
343
  background-color: $endColor;
452
- background-image: -khtml-gradient(linear, left top, right top, from($startColor), to($endColor)); // Konqueror
453
344
  background-image: -moz-linear-gradient(left, $startColor, $endColor); // FF 3.6+
454
345
  background-image: -ms-linear-gradient(left, $startColor, $endColor); // IE10
455
- background-image: -webkit-gradient(linear, left top, right top, color-stop(0%, $startColor), color-stop(100%, $endColor)); // Safari 4+, Chrome 2+
346
+ background-image: -webkit-gradient(linear, 0 0, 100% 0, from($startColor), to($endColor)); // Safari 4+, Chrome 2+
456
347
  background-image: -webkit-linear-gradient(left, $startColor, $endColor); // Safari 5.1+, Chrome 10+
457
348
  background-image: -o-linear-gradient(left, $startColor, $endColor); // Opera 11.10
458
349
  background-image: linear-gradient(left, $startColor, $endColor); // Le standard
459
350
  background-repeat: repeat-x;
460
351
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{$startColor}', endColorstr='#{$endColor}', GradientType=1); // IE9 and down
461
352
  }
462
- @mixin gradient-vertical($startColor: #555, $endColor: #333) {
463
- background-color: $endColor;
464
- background-image: -khtml-gradient(linear, left top, left bottom, from($startColor), to($endColor)); // Konqueror
353
+ @mixin bootstrap-gradient-vertical($startColor: #555, $endColor: #333) {
354
+ background-color: mix($startColor, $endColor, 60%);
465
355
  background-image: -moz-linear-gradient(top, $startColor, $endColor); // FF 3.6+
466
356
  background-image: -ms-linear-gradient(top, $startColor, $endColor); // IE10
467
- background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, $startColor), color-stop(100%, $endColor)); // Safari 4+, Chrome 2+
357
+ background-image: -webkit-gradient(linear, 0 0, 0 100%, from($startColor), to($endColor)); // Safari 4+, Chrome 2+
468
358
  background-image: -webkit-linear-gradient(top, $startColor, $endColor); // Safari 5.1+, Chrome 10+
469
359
  background-image: -o-linear-gradient(top, $startColor, $endColor); // Opera 11.10
470
- //background-image: linear-gradient(top left, $startColor, $endColor); // The standard
360
+ background-image: linear-gradient(top, $startColor, $endColor); // The standard
471
361
  background-repeat: repeat-x;
472
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{$startColor}', endColorstr='#{$endColor}', GradientType=0); // IE9 and down
362
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{$startColor}', endColorstr='#{$endColor}', GradientType=0); // IE9 and down
473
363
  }
474
- @mixin gradient-directional($startColor: #555, $endColor: #333, $deg: 45deg) {
364
+ @mixin bootstrap-gradient-directional($startColor: #555, $endColor: #333, $deg: 45deg) {
475
365
  background-color: $endColor;
476
366
  background-repeat: repeat-x;
477
367
  background-image: -moz-linear-gradient($deg, $startColor, $endColor); // FF 3.6+
@@ -480,8 +370,8 @@
480
370
  background-image: -o-linear-gradient($deg, $startColor, $endColor); // Opera 11.10
481
371
  background-image: linear-gradient($deg, $startColor, $endColor); // The standard
482
372
  }
483
- @mixin gradient-vertical-three-colors($startColor: #00b3ee, $midColor: #7a43b6, $colorStop: 50%, $endColor: #c3325f) {
484
- background-color: $endColor;
373
+ @mixin bootstrap-gradient-vertical-three-colors($startColor: #00b3ee, $midColor: #7a43b6, $colorStop: 50%, $endColor: #c3325f) {
374
+ background-color: mix($midColor, $endColor, 80%);
485
375
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from($startColor), color-stop($colorStop, $midColor), to($endColor));
486
376
  background-image: -webkit-linear-gradient($startColor, $midColor $colorStop, $endColor);
487
377
  background-image: -moz-linear-gradient(top, $startColor, $midColor $colorStop, $endColor);
@@ -489,94 +379,224 @@
489
379
  background-image: -o-linear-gradient($startColor, $midColor $colorStop, $endColor);
490
380
  background-image: linear-gradient($startColor, $midColor $colorStop, $endColor);
491
381
  background-repeat: no-repeat;
492
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{$startColor}', endColorstr='#{$endColor}', GradientType=0); // IE9 and down, gets no color-stop at all the proper fallback
493
- }
494
- @mixin gradient-radial($centerColor: #555, $outsideColor: #333) {
495
- background-color: $outsideColor;
496
- background-image: -webkit-gradient(radial, center center, 0, center center, 460, from($centerColor), to($outsideColor));
497
- background-image: -webkit-radial-gradient(circle, $centerColor, $outsideColor);
498
- background-image: -moz-radial-gradient(circle, $centerColor, $outsideColor);
499
- background-image: -ms-radial-gradient(circle, $centerColor, $outsideColor);
382
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{$startColor}', endColorstr='#{$endColor}', GradientType=0); // IE9 and down, gets no color-stop at all for proper fallback
383
+ }
384
+ @mixin bootstrap-gradient-radial($innerColor: #555, $outerColor: #333) {
385
+ background-color: $outerColor;
386
+ background-image: -webkit-gradient(radial, center center, 0, center center, 460, from($innerColor), to($outerColor));
387
+ background-image: -webkit-radial-gradient(circle, $innerColor, $outerColor);
388
+ background-image: -moz-radial-gradient(circle, $innerColor, $outerColor);
389
+ background-image: -ms-radial-gradient(circle, $innerColor, $outerColor);
390
+ background-image: -o-radial-gradient(circle, $innerColor, $outerColor);
500
391
  background-repeat: no-repeat;
501
- // Opera cannot do radial gradients yet
502
- }
503
- @mixin gradient-striped($color,$angle: -45deg) {
504
- background-color: $color;
505
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(.25, rgba(255,255,255,.15)), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, rgba(255,255,255,.15)), color-stop(.75, rgba(255,255,255,.15)), color-stop(.75, transparent), to(transparent));
506
- background-image: -webkit-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
507
- background-image: -moz-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
508
- background-image: -ms-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
509
- background-image: -o-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
510
- //background-image: linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
511
- }
512
-
513
- // Gradient Bar Colors for buttons and alerts
514
- @mixin gradientBar($primaryColor, $secondaryColor) {
515
- @include gradient-vertical($primaryColor, $secondaryColor);
516
- border-color: $secondaryColor $secondaryColor darken($secondaryColor, 15%);
517
- border-color: rgba(0,0,0,.1) rgba(0,0,0,.1) fade-in(rgba(0,0,0,.1), 0.15);
392
+ }
393
+ @mixin bootstrap-gradient-striped($color, $angle: -45deg) {
394
+ background-color: $color;
395
+ background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(.25, rgba(255,255,255,.15)), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, rgba(255,255,255,.15)), color-stop(.75, rgba(255,255,255,.15)), color-stop(.75, transparent), to(transparent));
396
+ background-image: -webkit-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
397
+ background-image: -moz-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
398
+ background-image: -ms-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
399
+ background-image: -o-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
400
+ background-image: linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
518
401
  }
519
402
 
520
403
  // Reset filters for IE
521
- @mixin reset-filter() {
404
+ @mixin bootstrap-reset-filter() {
522
405
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
523
406
  }
524
407
 
525
- // Mixin for generating button backgrounds
526
- // ---------------------------------------
527
- @mixin buttonBackground($startColor, $endColor) {
408
+
409
+
410
+ // COMPONENT MIXINS
411
+ // --------------------------------------------------
412
+
413
+ // Horizontal dividers
414
+ // -------------------------
415
+ // Dividers (basically an hr) within dropdowns and nav lists
416
+ @mixin bootstrap-nav-divider() {
417
+ // IE7 needs a set width since we gave a height. Restricting just
418
+ // to IE7 to keep the 1px left/right space in other browsers.
419
+ // It is unclear where IE is getting the extra space that we need
420
+ // to negative-margin away, but so it goes.
421
+ *width: 100%;
422
+ height: 1px;
423
+ margin: (($baseLineHeight / 2) - 1) 1px; // 8px 1px
424
+ *margin: -5px 0 5px;
425
+ overflow: hidden;
426
+ background-color: #e5e5e5;
427
+ border-bottom: 1px solid $white;
428
+ }
429
+
430
+ // Button backgrounds
431
+ // ------------------
432
+ @mixin bootstrap-buttonBackground($startColor, $endColor) {
528
433
  // gradientBar will set the background to a pleasing blend of these, to support IE<=9
529
- @include gradientBar($startColor, $endColor);
530
- @include reset-filter();
434
+ @include bootstrap-gradientBar($startColor, $endColor);
435
+ *background-color: $endColor; /* Darken IE7 buttons by default so they stand out more given they won't have borders */
436
+ @include bootstrap-reset-filter();
531
437
 
532
438
  // in these cases the gradient won't cover the background, so we override
533
439
  &:hover, &:active, &.active, &.disabled, &[disabled] {
534
440
  background-color: $endColor;
441
+ *background-color: darken($endColor, 5%);
535
442
  }
536
443
 
537
444
  // IE 7 + 8 can't handle box-shadow to show active, so we darken a bit ourselves
538
445
  &:active,
539
446
  &.active {
540
- background-color: darken($endColor, 10%) e("\9");
447
+ background-color: darken($endColor, 10%)\9;
541
448
  }
542
449
  }
543
450
 
451
+ // Navbar vertical align
452
+ // -------------------------
453
+ // Vertically center elements in the navbar.
454
+ // Example: an element has a height of 30px, so write out `.navbarVerticalAlign(30px);` to calculate the appropriate top margin.
455
+ @mixin bootstrap-navbarVerticalAlign($elementHeight) {
456
+ margin-top: ($navbarHeight - $elementHeight) / 2;
457
+ }
544
458
 
545
- // COMPONENT MIXINS
546
- // --------------------------------------------------
547
-
548
- // POPOVER ARROWS
459
+ // Popover arrows
549
460
  // -------------------------
550
461
  // For tipsies and popovers
551
- @mixin popoverArrow-top($arrowWidth: 5px) {
462
+ @mixin bootstrap-popoverArrow-top($arrowWidth: 5px, $color: $black) {
552
463
  bottom: 0;
553
464
  left: 50%;
554
465
  margin-left: -$arrowWidth;
555
466
  border-left: $arrowWidth solid transparent;
556
467
  border-right: $arrowWidth solid transparent;
557
- border-top: $arrowWidth solid $black;
468
+ border-top: $arrowWidth solid $color;
558
469
  }
559
- @mixin popoverArrow-left($arrowWidth: 5px) {
470
+
471
+ @mixin bootstrap-popoverArrow-left($arrowWidth: 5px, $color: $black) {
560
472
  top: 50%;
561
473
  right: 0;
562
474
  margin-top: -$arrowWidth;
563
475
  border-top: $arrowWidth solid transparent;
564
476
  border-bottom: $arrowWidth solid transparent;
565
- border-left: $arrowWidth solid $black;
477
+ border-left: $arrowWidth solid $color;
566
478
  }
567
- @mixin popoverArrow-bottom($arrowWidth: 5px) {
479
+
480
+ @mixin bootstrap-popoverArrow-bottom($arrowWidth: 5px, $color: $black) {
568
481
  top: 0;
569
482
  left: 50%;
570
483
  margin-left: -$arrowWidth;
571
484
  border-left: $arrowWidth solid transparent;
572
485
  border-right: $arrowWidth solid transparent;
573
- border-bottom: $arrowWidth solid $black;
486
+ border-bottom: $arrowWidth solid $color;
574
487
  }
575
- @mixin popoverArrow-right($arrowWidth: 5px) {
488
+
489
+ @mixin bootstrap-popoverArrow-right($arrowWidth: 5px, $color: $black) {
576
490
  top: 50%;
577
491
  left: 0;
578
492
  margin-top: -$arrowWidth;
579
493
  border-top: $arrowWidth solid transparent;
580
494
  border-bottom: $arrowWidth solid transparent;
581
- border-right: $arrowWidth solid $black;
495
+ border-right: $arrowWidth solid $color;
496
+ }
497
+
498
+
499
+ // Grid System
500
+ // -----------
501
+
502
+ // Centered container element
503
+ @mixin bootstrap-container-fixed() {
504
+ margin-right: auto;
505
+ margin-left: auto;
506
+ @include bootstrap-clearfix();
507
+ }
508
+
509
+ // Table columns
510
+ @mixin bootstrap-tableColumns($columnSpan: 1) {
511
+ float: none; // undo default grid column styles
512
+ width: (($gridColumnWidth) * $columnSpan) + ($gridGutterWidth * ($columnSpan - 1)) - 16; // 16 is total padding on left and right of table cells
513
+ margin-left: 0; // undo default grid column styles
514
+ }
515
+
516
+ // Make a Grid
517
+ // Use .makeRow and .makeColumn to assign semantic layouts grid system behavior
518
+ @mixin bootstrap-makeRow() {
519
+ margin-left: $gridGutterWidth * -1;
520
+ @include bootstrap-clearfix();
521
+ }
522
+ @mixin bootstrap-makeColumn($columns: 1, $offset: 0) {
523
+ float: left;
524
+ margin-left: ($gridColumnWidth * $offset) + ($gridGutterWidth * ($offset - 1)) + ($gridGutterWidth * 2);
525
+ width: ($gridColumnWidth * $columns) + ($gridGutterWidth * ($columns - 1));
526
+ }
527
+
528
+ // The Grid
529
+ @mixin bootstrap-grid-core-offset ($columns, $gridColumnWidth, $gridGutterWidth) {
530
+ margin-left: ($gridColumnWidth * $columns) + ($gridGutterWidth * ($columns + 1));
531
+ }
532
+
533
+ @mixin bootstrap-grid-core-span ($columns, $gridColumnWidth, $gridGutterWidth) {
534
+ width: ($gridColumnWidth * $columns) + ($gridGutterWidth * ($columns - 1));
535
+ }
536
+
537
+ @mixin bootstrap-grid-core($gridColumnWidth, $gridGutterWidth) {
538
+ .row {
539
+ margin-left: $gridGutterWidth * -1;
540
+ @include bootstrap-clearfix();
541
+ }
542
+
543
+ [class*="span"] {
544
+ float: left;
545
+ margin-left: $gridGutterWidth;
546
+ }
547
+
548
+ // Set the container width, and override it for fixed navbars in media queries
549
+ .container,
550
+ .navbar-fixed-top .container,
551
+ .navbar-fixed-bottom .container { @include bootstrap-grid-core-span($gridColumns, $gridColumnWidth, $gridGutterWidth); }
552
+
553
+ // generate .spanX and .offsetX
554
+ @for $i from 1 through $gridColumns {
555
+ .span#{$i} { @include bootstrap-grid-core-span($i, $gridColumnWidth, $gridGutterWidth); }
556
+ .offset#{$i} { @include bootstrap-grid-core-offset($i, $gridColumnWidth, $gridGutterWidth); }
557
+ }
558
+ }
559
+
560
+ @mixin bootstrap-grid-fluid-span($columns, $fluidGridColumnWidth, $fluidGridGutterWidth) {
561
+ width: ($fluidGridColumnWidth * $columns) + ($fluidGridGutterWidth * ($columns - 1));
562
+ *width: ($fluidGridColumnWidth * $columns) + ($fluidGridGutterWidth * ($columns - 1)) - (.5 / ($gridRowWidth / 1px) * 100 * 1%);
563
+ }
564
+
565
+ @mixin bootstrap-grid-fluid($fluidGridColumnWidth, $fluidGridGutterWidth) {
566
+ .row-fluid {
567
+ width: 100%;
568
+ @include bootstrap-clearfix();
569
+ [class*="span"] {
570
+ @include bootstrap-input-block-level();
571
+ float: left;
572
+ margin-left: $fluidGridGutterWidth;
573
+ *margin-left: $fluidGridGutterWidth - (.5 / ($gridRowWidth / 1px) * 100 * 1%);
574
+ }
575
+ [class*="span"]:first-child {
576
+ margin-left: 0;
577
+ }
578
+
579
+ // generate .spanX
580
+ @for $i from 1 through $gridColumns {
581
+ .span#{$i} { @include bootstrap-grid-fluid-span($i, $fluidGridColumnWidth, $fluidGridGutterWidth); }
582
+ }
583
+ }
584
+ }
585
+
586
+ @mixin bootstrap-grid-input-span($columns, $gridColumnWidth, $gridGutterWidth) {
587
+ width: (($gridColumnWidth) * $columns) + ($gridGutterWidth * ($columns - 1)) - 10;
588
+ }
589
+
590
+ @mixin bootstrap-grid-input($gridColumnWidth, $gridGutterWidth) {
591
+ input,
592
+ textarea,
593
+ .uneditable-input {
594
+ margin-left: 0; // override margin-left from core grid system
595
+ }
596
+
597
+ @for $i from 1 through $gridColumns {
598
+ input.span#{$i}, textarea.span#{$i}, .uneditable-input.span#{$i} {
599
+ @include bootstrap-grid-input-span($i, $gridColumnWidth, $gridGutterWidth);
600
+ }
601
+ }
582
602
  }