bootstrap-generators 2.3.2 → 3.0.0

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 (179) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +12 -2
  3. data/{LICENSE.txt → MIT-LICENSE} +1 -3
  4. data/README.md +19 -64
  5. data/Rakefile +24 -22
  6. data/bootstrap-generators.gemspec +3 -1
  7. data/lib/bootstrap-generators.rb +12 -1
  8. data/lib/bootstrap/generators/version.rb +1 -1
  9. data/lib/generators/bootstrap/install/install_generator.rb +9 -24
  10. data/lib/generators/bootstrap/install/templates/assets/stylesheets/bootstrap-variables.less +498 -179
  11. data/lib/generators/bootstrap/install/templates/assets/stylesheets/bootstrap-variables.scss +620 -0
  12. data/lib/generators/bootstrap/install/templates/assets/stylesheets/{fluid.css → starter.css} +6 -6
  13. data/lib/generators/bootstrap/install/templates/assets/stylesheets/{fluid.css.less → starter.less} +7 -7
  14. data/lib/generators/bootstrap/install/templates/assets/stylesheets/{fluid.css.scss → starter.scss} +7 -8
  15. data/lib/generators/bootstrap/install/templates/form_builders/form_builder/_form.html.erb +11 -9
  16. data/lib/generators/bootstrap/install/templates/form_builders/form_builder/_form.html.haml +9 -8
  17. data/lib/generators/bootstrap/install/templates/layouts/starter.html.erb +50 -0
  18. data/lib/generators/bootstrap/install/templates/layouts/{hero.html.haml → starter.html.haml} +0 -0
  19. data/lib/generators/bootstrap/install/templates/lib/templates/erb/scaffold/edit.html.erb +3 -3
  20. data/lib/generators/bootstrap/install/templates/lib/templates/erb/scaffold/index.html.erb +25 -25
  21. data/lib/generators/bootstrap/install/templates/lib/templates/erb/scaffold/new.html.erb +2 -2
  22. data/lib/generators/bootstrap/install/templates/lib/templates/erb/scaffold/show.html.erb +5 -5
  23. data/lib/generators/bootstrap/install/templates/lib/templates/haml/scaffold/edit.html.haml +3 -3
  24. data/lib/generators/bootstrap/install/templates/lib/templates/haml/scaffold/index.html.haml +20 -19
  25. data/lib/generators/bootstrap/install/templates/lib/templates/haml/scaffold/new.html.haml +2 -2
  26. data/lib/generators/bootstrap/install/templates/lib/templates/haml/scaffold/show.html.haml +5 -5
  27. data/readme-template.md.erb +5 -48
  28. data/test/lib/generators/bootstrap/install_generator_test.rb +3 -33
  29. data/vendor/assets/fonts/glyphicons-halflings-regular.eot +0 -0
  30. data/vendor/assets/fonts/glyphicons-halflings-regular.svg +228 -0
  31. data/vendor/assets/fonts/glyphicons-halflings-regular.ttf +0 -0
  32. data/vendor/assets/fonts/glyphicons-halflings-regular.woff +0 -0
  33. data/vendor/assets/javascripts/bootstrap-ie.js +2 -0
  34. data/vendor/assets/javascripts/bootstrap-ie/html5shiv.js +8 -0
  35. data/vendor/assets/javascripts/bootstrap-ie/respond.min.js +6 -0
  36. data/vendor/assets/javascripts/bootstrap.js +12 -13
  37. data/vendor/assets/javascripts/bootstrap/affix.js +126 -0
  38. data/vendor/assets/javascripts/{bootstrap-alert.js → bootstrap/alert.js} +35 -36
  39. data/vendor/assets/javascripts/bootstrap/button.js +109 -0
  40. data/vendor/assets/javascripts/bootstrap/carousel.js +217 -0
  41. data/vendor/assets/javascripts/bootstrap/collapse.js +179 -0
  42. data/vendor/assets/javascripts/bootstrap/dropdown.js +154 -0
  43. data/vendor/assets/javascripts/bootstrap/modal.js +246 -0
  44. data/vendor/assets/javascripts/bootstrap/popover.js +117 -0
  45. data/vendor/assets/javascripts/bootstrap/scrollspy.js +158 -0
  46. data/vendor/assets/javascripts/bootstrap/tab.js +135 -0
  47. data/vendor/assets/javascripts/bootstrap/tooltip.js +386 -0
  48. data/vendor/assets/javascripts/bootstrap/transition.js +56 -0
  49. data/vendor/assets/stylesheets/bootstrap.css +4638 -4000
  50. data/vendor/twitter/bootstrap/less/alerts.less +46 -58
  51. data/vendor/twitter/bootstrap/less/badges.less +51 -0
  52. data/vendor/twitter/bootstrap/less/bootstrap.less +27 -31
  53. data/vendor/twitter/bootstrap/less/breadcrumbs.less +7 -8
  54. data/vendor/twitter/bootstrap/less/button-groups.less +173 -154
  55. data/vendor/twitter/bootstrap/less/buttons.less +97 -165
  56. data/vendor/twitter/bootstrap/less/carousel.less +115 -64
  57. data/vendor/twitter/bootstrap/less/close.less +20 -19
  58. data/vendor/twitter/bootstrap/less/code.less +17 -22
  59. data/vendor/twitter/bootstrap/less/component-animations.less +10 -3
  60. data/vendor/twitter/bootstrap/less/dropdowns.less +92 -147
  61. data/vendor/twitter/bootstrap/less/forms.less +224 -561
  62. data/vendor/twitter/bootstrap/less/glyphicons.less +232 -0
  63. data/vendor/twitter/bootstrap/less/grid.less +336 -11
  64. data/vendor/twitter/bootstrap/less/input-groups.less +127 -0
  65. data/vendor/twitter/bootstrap/less/jumbotron.less +40 -0
  66. data/vendor/twitter/bootstrap/less/labels.less +58 -0
  67. data/vendor/twitter/bootstrap/less/list-group.less +88 -0
  68. data/vendor/twitter/bootstrap/less/media.less +8 -7
  69. data/vendor/twitter/bootstrap/less/mixins.less +487 -466
  70. data/vendor/twitter/bootstrap/less/modals.less +98 -52
  71. data/vendor/twitter/bootstrap/less/navbar.less +507 -383
  72. data/vendor/twitter/bootstrap/less/navs.less +169 -349
  73. data/vendor/twitter/bootstrap/less/normalize.less +396 -0
  74. data/vendor/twitter/bootstrap/less/pager.less +45 -33
  75. data/vendor/twitter/bootstrap/less/pagination.less +65 -105
  76. data/vendor/twitter/bootstrap/less/panels.less +148 -0
  77. data/vendor/twitter/bootstrap/less/popovers.less +51 -51
  78. data/vendor/twitter/bootstrap/less/print.less +100 -0
  79. data/vendor/twitter/bootstrap/less/progress-bars.less +28 -55
  80. data/vendor/twitter/bootstrap/less/responsive-utilities.less +195 -34
  81. data/vendor/twitter/bootstrap/less/scaffolding.less +101 -24
  82. data/vendor/twitter/bootstrap/less/tables.less +170 -178
  83. data/vendor/twitter/bootstrap/less/theme.less +232 -0
  84. data/vendor/twitter/bootstrap/less/thumbnails.less +11 -33
  85. data/vendor/twitter/bootstrap/less/tooltip.less +45 -20
  86. data/vendor/twitter/bootstrap/less/type.less +100 -109
  87. data/vendor/twitter/bootstrap/less/utilities.less +19 -7
  88. data/vendor/twitter/bootstrap/less/variables.less +498 -179
  89. data/vendor/twitter/bootstrap/less/wells.less +7 -7
  90. data/vendor/twitter/bootstrap/sass/_alerts.scss +46 -58
  91. data/vendor/twitter/bootstrap/sass/_badges.scss +51 -0
  92. data/vendor/twitter/bootstrap/sass/_breadcrumbs.scss +8 -9
  93. data/vendor/twitter/bootstrap/sass/_button-groups.scss +173 -154
  94. data/vendor/twitter/bootstrap/sass/_buttons.scss +97 -165
  95. data/vendor/twitter/bootstrap/sass/_carousel.scss +116 -65
  96. data/vendor/twitter/bootstrap/sass/_close.scss +9 -8
  97. data/vendor/twitter/bootstrap/sass/_code.scss +16 -21
  98. data/vendor/twitter/bootstrap/sass/_component-animations.scss +10 -3
  99. data/vendor/twitter/bootstrap/sass/_dropdowns.scss +94 -148
  100. data/vendor/twitter/bootstrap/sass/_forms.scss +220 -559
  101. data/vendor/twitter/bootstrap/sass/_glyphicons.scss +232 -0
  102. data/vendor/twitter/bootstrap/sass/_grid.scss +336 -11
  103. data/vendor/twitter/bootstrap/sass/_input-groups.scss +127 -0
  104. data/vendor/twitter/bootstrap/sass/_jumbotron.scss +40 -0
  105. data/vendor/twitter/bootstrap/sass/_labels.scss +58 -0
  106. data/vendor/twitter/bootstrap/sass/_list-group.scss +88 -0
  107. data/vendor/twitter/bootstrap/sass/_media.scss +8 -7
  108. data/vendor/twitter/bootstrap/sass/_mixins.scss +465 -433
  109. data/vendor/twitter/bootstrap/sass/_modals.scss +102 -52
  110. data/vendor/twitter/bootstrap/sass/_navbar.scss +511 -383
  111. data/vendor/twitter/bootstrap/sass/_navs.scss +169 -349
  112. data/vendor/twitter/bootstrap/sass/_normalize.scss +396 -0
  113. data/vendor/twitter/bootstrap/sass/_pager.scss +45 -33
  114. data/vendor/twitter/bootstrap/sass/_pagination.scss +65 -105
  115. data/vendor/twitter/bootstrap/sass/_panels.scss +148 -0
  116. data/vendor/twitter/bootstrap/sass/_popovers.scss +51 -51
  117. data/vendor/twitter/bootstrap/sass/_print.scss +100 -0
  118. data/vendor/twitter/bootstrap/sass/_progress-bars.scss +28 -55
  119. data/vendor/twitter/bootstrap/sass/_responsive-utilities.scss +180 -45
  120. data/vendor/twitter/bootstrap/sass/_scaffolding.scss +101 -24
  121. data/vendor/twitter/bootstrap/sass/_tables.scss +169 -168
  122. data/vendor/twitter/bootstrap/sass/_theme.scss +232 -0
  123. data/vendor/twitter/bootstrap/sass/_thumbnails.scss +11 -33
  124. data/vendor/twitter/bootstrap/sass/_tooltip.scss +45 -20
  125. data/vendor/twitter/bootstrap/sass/_type.scss +101 -110
  126. data/vendor/twitter/bootstrap/sass/_utilities.scss +19 -22
  127. data/vendor/twitter/bootstrap/sass/_variables.scss +498 -179
  128. data/vendor/twitter/bootstrap/sass/_wells.scss +7 -7
  129. data/vendor/twitter/bootstrap/sass/bootstrap.scss +29 -33
  130. metadata +47 -56
  131. data/lib/bootstrap/generators/engine.rb +0 -14
  132. data/lib/generators/bootstrap/install/templates/assets/stylesheets/bootstrap-variables.css.scss +0 -301
  133. data/lib/generators/bootstrap/install/templates/assets/stylesheets/hero.css +0 -18
  134. data/lib/generators/bootstrap/install/templates/assets/stylesheets/hero.css.less +0 -19
  135. data/lib/generators/bootstrap/install/templates/assets/stylesheets/hero.css.scss +0 -19
  136. data/lib/generators/bootstrap/install/templates/config/initializers/simple_form.rb +0 -176
  137. data/lib/generators/bootstrap/install/templates/config/locales/simple_form.en.yml +0 -24
  138. data/lib/generators/bootstrap/install/templates/form_builders/simple_form/_form.html.erb +0 -13
  139. data/lib/generators/bootstrap/install/templates/form_builders/simple_form/_form.html.haml +0 -10
  140. data/lib/generators/bootstrap/install/templates/layouts/fluid.html.erb +0 -80
  141. data/lib/generators/bootstrap/install/templates/layouts/fluid.html.haml +0 -94
  142. data/lib/generators/bootstrap/install/templates/layouts/hero.html.erb +0 -53
  143. data/vendor/assets/images/glyphicons-halflings-white.png +0 -0
  144. data/vendor/assets/images/glyphicons-halflings.png +0 -0
  145. data/vendor/assets/javascripts/bootstrap-affix.js +0 -117
  146. data/vendor/assets/javascripts/bootstrap-button.js +0 -105
  147. data/vendor/assets/javascripts/bootstrap-carousel.js +0 -207
  148. data/vendor/assets/javascripts/bootstrap-collapse.js +0 -167
  149. data/vendor/assets/javascripts/bootstrap-dropdown.js +0 -169
  150. data/vendor/assets/javascripts/bootstrap-modal.js +0 -247
  151. data/vendor/assets/javascripts/bootstrap-popover.js +0 -114
  152. data/vendor/assets/javascripts/bootstrap-scrollspy.js +0 -162
  153. data/vendor/assets/javascripts/bootstrap-tab.js +0 -144
  154. data/vendor/assets/javascripts/bootstrap-tooltip.js +0 -361
  155. data/vendor/assets/javascripts/bootstrap-transition.js +0 -60
  156. data/vendor/assets/javascripts/bootstrap-typeahead.js +0 -335
  157. data/vendor/assets/stylesheets/bootstrap-responsive.css +0 -1109
  158. data/vendor/twitter/bootstrap/less/accordion.less +0 -34
  159. data/vendor/twitter/bootstrap/less/hero-unit.less +0 -25
  160. data/vendor/twitter/bootstrap/less/labels-badges.less +0 -84
  161. data/vendor/twitter/bootstrap/less/layouts.less +0 -16
  162. data/vendor/twitter/bootstrap/less/reset.less +0 -216
  163. data/vendor/twitter/bootstrap/less/responsive-1200px-min.less +0 -28
  164. data/vendor/twitter/bootstrap/less/responsive-767px-max.less +0 -193
  165. data/vendor/twitter/bootstrap/less/responsive-768px-979px.less +0 -19
  166. data/vendor/twitter/bootstrap/less/responsive-navbar.less +0 -189
  167. data/vendor/twitter/bootstrap/less/responsive.less +0 -48
  168. data/vendor/twitter/bootstrap/less/sprites.less +0 -197
  169. data/vendor/twitter/bootstrap/sass/_accordion.scss +0 -34
  170. data/vendor/twitter/bootstrap/sass/_hero-unit.scss +0 -25
  171. data/vendor/twitter/bootstrap/sass/_labels-badges.scss +0 -83
  172. data/vendor/twitter/bootstrap/sass/_layouts.scss +0 -16
  173. data/vendor/twitter/bootstrap/sass/_reset.scss +0 -216
  174. data/vendor/twitter/bootstrap/sass/_responsive-1200px-min.scss +0 -28
  175. data/vendor/twitter/bootstrap/sass/_responsive-767px-max.scss +0 -193
  176. data/vendor/twitter/bootstrap/sass/_responsive-768px-979px.scss +0 -19
  177. data/vendor/twitter/bootstrap/sass/_responsive-navbar.scss +0 -189
  178. data/vendor/twitter/bootstrap/sass/_sprites.scss +0 -197
  179. data/vendor/twitter/bootstrap/sass/responsive.scss +0 -48
@@ -0,0 +1,232 @@
1
+
2
+ //
3
+ // Load core variables and mixins
4
+ // --------------------------------------------------
5
+
6
+ @import "variables.less";
7
+ @import "mixins.less";
8
+
9
+
10
+
11
+ //
12
+ // Buttons
13
+ // --------------------------------------------------
14
+
15
+ // Common styles
16
+ .btn-default,
17
+ .btn-primary,
18
+ .btn-success,
19
+ .btn-info,
20
+ .btn-warning,
21
+ .btn-danger {
22
+ text-shadow: 0 -1px 0 rgba(0,0,0,.2);
23
+ @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.075);
24
+ .box-shadow(@shadow);
25
+
26
+ // Reset the shadow
27
+ &:active,
28
+ &.active {
29
+ .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));
30
+ }
31
+ }
32
+
33
+ // Mixin for generating new styles
34
+ .btn-styles(@btn-color: #555;) {
35
+ #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 10%));
36
+ border-color: darken(@btn-color, 12%);
37
+
38
+ &:active,
39
+ &.active {
40
+ background-color: darken(@btn-color, 10%);
41
+ border-color: darken(@btn-color, 12%);
42
+ }
43
+ }
44
+
45
+ // Common styles
46
+ .btn {
47
+ // Remove the gradient for the pressed/active state
48
+ &:active,
49
+ &.active {
50
+ background-image: none;
51
+ }
52
+ }
53
+
54
+ // Apply the mixin to the buttons
55
+ .btn-default { .btn-styles(@btn-default-bg;); text-shadow: 0 1px 0 #fff; border-color: #ccc; }
56
+ .btn-primary { .btn-styles(@btn-primary-bg); }
57
+ .btn-success { .btn-styles(@btn-success-bg); }
58
+ .btn-warning { .btn-styles(@btn-warning-bg); }
59
+ .btn-danger { .btn-styles(@btn-danger-bg); }
60
+ .btn-info { .btn-styles(@btn-info-bg); }
61
+
62
+
63
+
64
+ //
65
+ // Images
66
+ // --------------------------------------------------
67
+
68
+ .thumbnail,
69
+ .img-thumbnail {
70
+ .box-shadow(0 1px 2px rgba(0,0,0,.075));
71
+ }
72
+
73
+
74
+
75
+ //
76
+ // Dropdowns
77
+ // --------------------------------------------------
78
+
79
+ .dropdown-menu > li > a:hover,
80
+ .dropdown-menu > li > a:focus,
81
+ .dropdown-menu > .active > a,
82
+ .dropdown-menu > .active > a:hover,
83
+ .dropdown-menu > .active > a:focus {
84
+ #gradient > .vertical(@start-color: @dropdown-link-hover-bg; @end-color: darken(@dropdown-link-hover-bg, 5%));
85
+ background-color: darken(@dropdown-link-hover-bg, 5%);
86
+ }
87
+
88
+
89
+
90
+ //
91
+ // Navbar
92
+ // --------------------------------------------------
93
+
94
+ // Basic navbar
95
+ .navbar {
96
+ #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg;);
97
+ border-radius: @navbar-border-radius;
98
+ @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075);
99
+ .box-shadow(@shadow);
100
+
101
+ .navbar-nav > .active > a {
102
+ background-color: @navbar-default-bg;
103
+ }
104
+ }
105
+ .navbar-brand,
106
+ .navbar-nav > li > a {
107
+ text-shadow: 0 1px 0 rgba(255,255,255,.25);
108
+ }
109
+
110
+ // Inverted navbar
111
+ .navbar-inverse {
112
+ #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg;);
113
+
114
+ .navbar-nav > .active > a {
115
+ background-color: @navbar-inverse-bg;
116
+ }
117
+
118
+ .navbar-brand,
119
+ .navbar-nav > li > a {
120
+ text-shadow: 0 -1px 0 rgba(0,0,0,.25);
121
+ }
122
+ }
123
+
124
+ // Undo rounded corners in static and fixed navbars
125
+ .navbar-static-top,
126
+ .navbar-fixed-top,
127
+ .navbar-fixed-bottom {
128
+ border-radius: 0;
129
+ }
130
+
131
+
132
+
133
+ //
134
+ // Alerts
135
+ // --------------------------------------------------
136
+
137
+ // Common styles
138
+ .alert {
139
+ text-shadow: 0 1px 0 rgba(255,255,255,.2);
140
+ @shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05);
141
+ .box-shadow(@shadow);
142
+ }
143
+
144
+ // Mixin for generating new styles
145
+ .alert-styles(@color) {
146
+ #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 7.5%));
147
+ border-color: darken(@color, 15%);
148
+ }
149
+
150
+ // Apply the mixin to the alerts
151
+ .alert-success { .alert-styles(@alert-success-bg); }
152
+ .alert-info { .alert-styles(@alert-info-bg); }
153
+ .alert-warning { .alert-styles(@alert-warning-bg); }
154
+ .alert-danger { .alert-styles(@alert-danger-bg); }
155
+
156
+
157
+
158
+ //
159
+ // Progress bars
160
+ // --------------------------------------------------
161
+
162
+ // Give the progress background some depth
163
+ .progress {
164
+ #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg;)
165
+ }
166
+
167
+ // Mixin for generating new styles
168
+ .progress-bar-styles(@color) {
169
+ #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 10%));
170
+ }
171
+
172
+ // Apply the mixin to the progress bars
173
+ .progress-bar { .progress-bar-styles(@progress-bar-bg); }
174
+ .progress-bar-success { .progress-bar-styles(@progress-bar-success-bg); }
175
+ .progress-bar-info { .progress-bar-styles(@progress-bar-info-bg); }
176
+ .progress-bar-warning { .progress-bar-styles(@progress-bar-warning-bg); }
177
+ .progress-bar-danger { .progress-bar-styles(@progress-bar-danger-bg); }
178
+
179
+
180
+
181
+ //
182
+ // List groups
183
+ // --------------------------------------------------
184
+
185
+ .list-group {
186
+ border-radius: @border-radius-base;
187
+ .box-shadow(0 1px 2px rgba(0,0,0,.075));
188
+ }
189
+ .list-group-item.active,
190
+ .list-group-item.active:hover,
191
+ .list-group-item.active:focus {
192
+ text-shadow: 0 -1px 0 darken(@list-group-active-bg, 10%);
193
+ #gradient > .vertical(@start-color: @list-group-active-bg; @end-color: darken(@list-group-active-bg, 7.5%));
194
+ border-color: darken(@list-group-active-border, 7.5%);
195
+ }
196
+
197
+
198
+
199
+ //
200
+ // Panels
201
+ // --------------------------------------------------
202
+
203
+ // Common styles
204
+ .panel {
205
+ .box-shadow(0 1px 2px rgba(0,0,0,.05));
206
+ }
207
+
208
+ // Mixin for generating new styles
209
+ .panel-heading-styles(@color) {
210
+ #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 5%));
211
+ }
212
+
213
+ // Apply the mixin to the panel headings only
214
+ .panel-default > .panel-heading { .panel-heading-styles(@panel-default-heading-bg); }
215
+ .panel-primary > .panel-heading { .panel-heading-styles(@panel-primary-heading-bg); }
216
+ .panel-success > .panel-heading { .panel-heading-styles(@panel-success-heading-bg); }
217
+ .panel-info > .panel-heading { .panel-heading-styles(@panel-info-heading-bg); }
218
+ .panel-warning > .panel-heading { .panel-heading-styles(@panel-warning-heading-bg); }
219
+ .panel-danger > .panel-heading { .panel-heading-styles(@panel-danger-heading-bg); }
220
+
221
+
222
+
223
+ //
224
+ // Wells
225
+ // --------------------------------------------------
226
+
227
+ .well {
228
+ #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg;);
229
+ border-color: darken(@well-bg, 10%);
230
+ @shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1);
231
+ .box-shadow(@shadow);
232
+ }
@@ -3,51 +3,29 @@
3
3
  // --------------------------------------------------
4
4
 
5
5
 
6
- // Note: `.thumbnails` and `.thumbnails > li` are overriden in responsive files
6
+ // Mixin and adjust the regular image class
7
+ .thumbnail {
8
+ .img-thumbnail();
9
+ display: block; // Override the inline-block from `.img-thumbnail`
7
10
 
8
- // Make wrapper ul behave like the grid
9
- .thumbnails {
10
- margin-left: -@gridGutterWidth;
11
- list-style: none;
12
- .clearfix();
13
- }
14
- // Fluid rows have no left margin
15
- .row-fluid .thumbnails {
16
- margin-left: 0;
11
+ > img {
12
+ .img-responsive();
13
+ }
17
14
  }
18
15
 
19
- // Float li to make thumbnails appear in a row
20
- .thumbnails > li {
21
- float: left; // Explicity set the float since we don't require .span* classes
22
- margin-bottom: @baseLineHeight;
23
- margin-left: @gridGutterWidth;
24
- }
25
16
 
26
- // The actual thumbnail (can be `a` or `div`)
27
- .thumbnail {
28
- display: block;
29
- padding: 4px;
30
- line-height: @baseLineHeight;
31
- border: 1px solid #ddd;
32
- .border-radius(@baseBorderRadius);
33
- .box-shadow(0 1px 3px rgba(0,0,0,.055));
34
- .transition(all .2s ease-in-out);
35
- }
36
- // Add a hover/focus state for linked versions only
17
+ // Add a hover state for linked versions only
37
18
  a.thumbnail:hover,
38
19
  a.thumbnail:focus {
39
- border-color: @linkColor;
40
- .box-shadow(0 1px 4px rgba(0,105,214,.25));
20
+ border-color: @link-color;
41
21
  }
42
22
 
43
23
  // Images and captions
44
24
  .thumbnail > img {
45
- display: block;
46
- max-width: 100%;
47
25
  margin-left: auto;
48
26
  margin-right: auto;
49
27
  }
50
28
  .thumbnail .caption {
51
- padding: 9px;
52
- color: @gray;
29
+ padding: @thumbnail-caption-padding;
30
+ color: @thumbnail-caption-color;
53
31
  }
@@ -6,13 +6,14 @@
6
6
  // Base class
7
7
  .tooltip {
8
8
  position: absolute;
9
- z-index: @zindexTooltip;
9
+ z-index: @zindex-tooltip;
10
10
  display: block;
11
11
  visibility: visible;
12
- font-size: 11px;
12
+ font-size: @font-size-small;
13
13
  line-height: 1.4;
14
14
  .opacity(0);
15
- &.in { .opacity(80); }
15
+
16
+ &.in { .opacity(.9); }
16
17
  &.top { margin-top: -3px; padding: 5px 0; }
17
18
  &.right { margin-left: 3px; padding: 0 5px; }
18
19
  &.bottom { margin-top: 3px; padding: 5px 0; }
@@ -21,13 +22,13 @@
21
22
 
22
23
  // Wrapper for the tooltip content
23
24
  .tooltip-inner {
24
- max-width: 200px;
25
- padding: 8px;
26
- color: @tooltipColor;
25
+ max-width: @tooltip-max-width;
26
+ padding: 3px 8px;
27
+ color: @tooltip-color;
27
28
  text-align: center;
28
29
  text-decoration: none;
29
- background-color: @tooltipBackground;
30
- .border-radius(@baseBorderRadius);
30
+ background-color: @tooltip-bg;
31
+ border-radius: @border-radius-base;
31
32
  }
32
33
 
33
34
  // Arrows
@@ -42,29 +43,53 @@
42
43
  &.top .tooltip-arrow {
43
44
  bottom: 0;
44
45
  left: 50%;
45
- margin-left: -@tooltipArrowWidth;
46
- border-width: @tooltipArrowWidth @tooltipArrowWidth 0;
47
- border-top-color: @tooltipArrowColor;
46
+ margin-left: -@tooltip-arrow-width;
47
+ border-width: @tooltip-arrow-width @tooltip-arrow-width 0;
48
+ border-top-color: @tooltip-arrow-color;
49
+ }
50
+ &.top-left .tooltip-arrow {
51
+ bottom: 0;
52
+ left: 5px;
53
+ border-width: @tooltip-arrow-width @tooltip-arrow-width 0;
54
+ border-top-color: @tooltip-arrow-color;
55
+ }
56
+ &.top-right .tooltip-arrow {
57
+ bottom: 0;
58
+ right: 5px;
59
+ border-width: @tooltip-arrow-width @tooltip-arrow-width 0;
60
+ border-top-color: @tooltip-arrow-color;
48
61
  }
49
62
  &.right .tooltip-arrow {
50
63
  top: 50%;
51
64
  left: 0;
52
- margin-top: -@tooltipArrowWidth;
53
- border-width: @tooltipArrowWidth @tooltipArrowWidth @tooltipArrowWidth 0;
54
- border-right-color: @tooltipArrowColor;
65
+ margin-top: -@tooltip-arrow-width;
66
+ border-width: @tooltip-arrow-width @tooltip-arrow-width @tooltip-arrow-width 0;
67
+ border-right-color: @tooltip-arrow-color;
55
68
  }
56
69
  &.left .tooltip-arrow {
57
70
  top: 50%;
58
71
  right: 0;
59
- margin-top: -@tooltipArrowWidth;
60
- border-width: @tooltipArrowWidth 0 @tooltipArrowWidth @tooltipArrowWidth;
61
- border-left-color: @tooltipArrowColor;
72
+ margin-top: -@tooltip-arrow-width;
73
+ border-width: @tooltip-arrow-width 0 @tooltip-arrow-width @tooltip-arrow-width;
74
+ border-left-color: @tooltip-arrow-color;
62
75
  }
63
76
  &.bottom .tooltip-arrow {
64
77
  top: 0;
65
78
  left: 50%;
66
- margin-left: -@tooltipArrowWidth;
67
- border-width: 0 @tooltipArrowWidth @tooltipArrowWidth;
68
- border-bottom-color: @tooltipArrowColor;
79
+ margin-left: -@tooltip-arrow-width;
80
+ border-width: 0 @tooltip-arrow-width @tooltip-arrow-width;
81
+ border-bottom-color: @tooltip-arrow-color;
82
+ }
83
+ &.bottom-left .tooltip-arrow {
84
+ top: 0;
85
+ left: 5px;
86
+ border-width: 0 @tooltip-arrow-width @tooltip-arrow-width;
87
+ border-bottom-color: @tooltip-arrow-color;
88
+ }
89
+ &.bottom-right .tooltip-arrow {
90
+ top: 0;
91
+ right: 5px;
92
+ border-width: 0 @tooltip-arrow-width @tooltip-arrow-width;
93
+ border-bottom-color: @tooltip-arrow-color;
69
94
  }
70
95
  }
@@ -7,13 +7,17 @@
7
7
  // -------------------------
8
8
 
9
9
  p {
10
- margin: 0 0 @baseLineHeight / 2;
10
+ margin: 0 0 (@line-height-computed / 2);
11
11
  }
12
12
  .lead {
13
- margin-bottom: @baseLineHeight;
14
- font-size: @baseFontSize * 1.5;
13
+ margin-bottom: @line-height-computed;
14
+ font-size: (@font-size-base * 1.15);
15
15
  font-weight: 200;
16
- line-height: @baseLineHeight * 1.5;
16
+ line-height: 1.4;
17
+
18
+ @media (min-width: 768px) {
19
+ font-size: (@font-size-base * 1.5);
20
+ }
17
21
  }
18
22
 
19
23
 
@@ -23,31 +27,18 @@ p {
23
27
  // Ex: 14px base font * 85% = about 12px
24
28
  small { font-size: 85%; }
25
29
 
26
- strong { font-weight: bold; }
27
- em { font-style: italic; }
30
+ // Undo browser default styling
28
31
  cite { font-style: normal; }
29
32
 
30
- // Utility classes
31
- .muted { color: @grayLight; }
32
- a.muted:hover,
33
- a.muted:focus { color: darken(@grayLight, 10%); }
34
-
35
- .text-warning { color: @warningText; }
36
- a.text-warning:hover,
37
- a.text-warning:focus { color: darken(@warningText, 10%); }
38
-
39
- .text-error { color: @errorText; }
40
- a.text-error:hover,
41
- a.text-error:focus { color: darken(@errorText, 10%); }
42
-
43
- .text-info { color: @infoText; }
44
- a.text-info:hover,
45
- a.text-info:focus { color: darken(@infoText, 10%); }
46
-
47
- .text-success { color: @successText; }
48
- a.text-success:hover,
49
- a.text-success:focus { color: darken(@successText, 10%); }
33
+ // Contextual emphasis
34
+ .text-muted { color: @text-muted; }
35
+ .text-primary { color: @brand-primary; }
36
+ .text-warning { color: @state-warning-text; }
37
+ .text-danger { color: @state-danger-text; }
38
+ .text-success { color: @state-success-text; }
39
+ .text-info { color: @state-info-text; }
50
40
 
41
+ // Alignment
51
42
  .text-left { text-align: left; }
52
43
  .text-right { text-align: right; }
53
44
  .text-center { text-align: center; }
@@ -56,44 +47,51 @@ a.text-success:focus { color: darken(@successText, 10%); }
56
47
  // Headings
57
48
  // -------------------------
58
49
 
59
- h1, h2, h3, h4, h5, h6 {
60
- margin: (@baseLineHeight / 2) 0;
61
- font-family: @headingsFontFamily;
62
- font-weight: @headingsFontWeight;
63
- line-height: @baseLineHeight;
64
- color: @headingsColor;
65
- text-rendering: optimizelegibility; // Fix the character spacing for headings
50
+ h1, h2, h3, h4, h5, h6,
51
+ .h1, .h2, .h3, .h4, .h5, .h6 {
52
+ font-family: @headings-font-family;
53
+ font-weight: @headings-font-weight;
54
+ line-height: @headings-line-height;
66
55
  small {
67
56
  font-weight: normal;
68
57
  line-height: 1;
69
- color: @grayLight;
58
+ color: @headings-small-color;
70
59
  }
71
60
  }
72
61
 
73
62
  h1,
74
63
  h2,
75
- h3 { line-height: @baseLineHeight * 2; }
64
+ h3 {
65
+ margin-top: @line-height-computed;
66
+ margin-bottom: (@line-height-computed / 2);
67
+ }
68
+ h4,
69
+ h5,
70
+ h6 {
71
+ margin-top: (@line-height-computed / 2);
72
+ margin-bottom: (@line-height-computed / 2);
73
+ }
76
74
 
77
- h1 { font-size: @baseFontSize * 2.75; } // ~38px
78
- h2 { font-size: @baseFontSize * 2.25; } // ~32px
79
- h3 { font-size: @baseFontSize * 1.75; } // ~24px
80
- h4 { font-size: @baseFontSize * 1.25; } // ~18px
81
- h5 { font-size: @baseFontSize; }
82
- h6 { font-size: @baseFontSize * 0.85; } // ~12px
75
+ h1, .h1 { font-size: floor(@font-size-base * 2.60); } // ~36px
76
+ h2, .h2 { font-size: floor(@font-size-base * 2.15); } // ~30px
77
+ h3, .h3 { font-size: ceil(@font-size-base * 1.70); } // ~24px
78
+ h4, .h4 { font-size: ceil(@font-size-base * 1.25); } // ~18px
79
+ h5, .h5 { font-size: @font-size-base; }
80
+ h6, .h6 { font-size: ceil(@font-size-base * 0.85); } // ~12px
83
81
 
84
- h1 small { font-size: @baseFontSize * 1.75; } // ~24px
85
- h2 small { font-size: @baseFontSize * 1.25; } // ~18px
86
- h3 small { font-size: @baseFontSize; }
87
- h4 small { font-size: @baseFontSize; }
82
+ h1 small, .h1 small { font-size: ceil(@font-size-base * 1.70); } // ~24px
83
+ h2 small, .h2 small { font-size: ceil(@font-size-base * 1.25); } // ~18px
84
+ h3 small, .h3 small,
85
+ h4 small, .h4 small { font-size: @font-size-base; }
88
86
 
89
87
 
90
88
  // Page header
91
89
  // -------------------------
92
90
 
93
91
  .page-header {
94
- padding-bottom: (@baseLineHeight / 2) - 1;
95
- margin: @baseLineHeight 0 (@baseLineHeight * 1.5);
96
- border-bottom: 1px solid @grayLighter;
92
+ padding-bottom: ((@line-height-computed / 2) - 1);
93
+ margin: (@line-height-computed * 2) 0 @line-height-computed;
94
+ border-bottom: 1px solid @page-header-border-color;
97
95
  }
98
96
 
99
97
 
@@ -102,35 +100,28 @@ h4 small { font-size: @baseFontSize; }
102
100
  // --------------------------------------------------
103
101
 
104
102
  // Unordered and Ordered lists
105
- ul, ol {
106
- padding: 0;
107
- margin: 0 0 @baseLineHeight / 2 25px;
108
- }
109
- ul ul,
110
- ul ol,
111
- ol ol,
112
- ol ul {
113
- margin-bottom: 0;
114
- }
115
- li {
116
- line-height: @baseLineHeight;
103
+ ul,
104
+ ol {
105
+ margin-top: 0;
106
+ margin-bottom: (@line-height-computed / 2);
107
+ ul,
108
+ ol{
109
+ margin-bottom: 0;
110
+ }
117
111
  }
118
112
 
119
- // Remove default list styles
120
- ul.unstyled,
121
- ol.unstyled {
122
- margin-left: 0;
123
- list-style: none;
124
- }
113
+ // List options
125
114
 
126
- // Single-line list items
127
- ul.inline,
128
- ol.inline {
129
- margin-left: 0;
115
+ // Unstyled keeps list items block level, just removes default browser padding and list-style
116
+ .list-unstyled {
117
+ padding-left: 0;
130
118
  list-style: none;
119
+ }
120
+ // Inline turns list items into inline-block
121
+ .list-inline {
122
+ .list-unstyled();
131
123
  > li {
132
124
  display: inline-block;
133
- .ie7-inline-block();
134
125
  padding-left: 5px;
135
126
  padding-right: 5px;
136
127
  }
@@ -138,50 +129,49 @@ ol.inline {
138
129
 
139
130
  // Description Lists
140
131
  dl {
141
- margin-bottom: @baseLineHeight;
132
+ margin-bottom: @line-height-computed;
142
133
  }
143
134
  dt,
144
135
  dd {
145
- line-height: @baseLineHeight;
136
+ line-height: @line-height-base;
146
137
  }
147
138
  dt {
148
139
  font-weight: bold;
149
140
  }
150
141
  dd {
151
- margin-left: @baseLineHeight / 2;
152
- }
153
- // Horizontal layout (like forms)
154
- .dl-horizontal {
155
- .clearfix(); // Ensure dl clears floats if empty dd elements present
156
- dt {
157
- float: left;
158
- width: @horizontalComponentOffset - 20;
159
- clear: left;
160
- text-align: right;
161
- .text-overflow();
162
- }
163
- dd {
164
- margin-left: @horizontalComponentOffset;
142
+ margin-left: 0; // Undo browser default
143
+ }
144
+
145
+ // Horizontal description lists
146
+ //
147
+ // Defaults to being stacked without any of the below styles applied, until the
148
+ // grid breakpoint is reached (default of ~768px).
149
+
150
+ @media (min-width: @grid-float-breakpoint) {
151
+ .dl-horizontal {
152
+ dt {
153
+ float: left;
154
+ width: (@component-offset-horizontal - 20);
155
+ clear: left;
156
+ text-align: right;
157
+ .text-overflow();
158
+ }
159
+ dd {
160
+ margin-left: @component-offset-horizontal;
161
+ .clearfix(); // Clear the floated `dt` if an empty `dd` is present
162
+ }
165
163
  }
166
164
  }
167
165
 
168
166
  // MISC
169
167
  // ----
170
168
 
171
- // Horizontal rules
172
- hr {
173
- margin: @baseLineHeight 0;
174
- border: 0;
175
- border-top: 1px solid @hrBorder;
176
- border-bottom: 1px solid @white;
177
- }
178
-
179
169
  // Abbreviations and acronyms
180
170
  abbr[title],
181
171
  // Added data-* attribute to help out our tooltip plugin, per https://github.com/twbs/bootstrap/issues/5257
182
172
  abbr[data-original-title] {
183
173
  cursor: help;
184
- border-bottom: 1px dotted @grayLight;
174
+ border-bottom: 1px dotted @abbr-border-color;
185
175
  }
186
176
  abbr.initialism {
187
177
  font-size: 90%;
@@ -190,30 +180,31 @@ abbr.initialism {
190
180
 
191
181
  // Blockquotes
192
182
  blockquote {
193
- padding: 0 0 0 15px;
194
- margin: 0 0 @baseLineHeight;
195
- border-left: 5px solid @grayLighter;
183
+ padding: (@line-height-computed / 2) @line-height-computed;
184
+ margin: 0 0 @line-height-computed;
185
+ border-left: 5px solid @blockquote-border-color;
196
186
  p {
197
- margin-bottom: 0;
198
- font-size: @baseFontSize * 1.25;
187
+ font-size: (@font-size-base * 1.25);
199
188
  font-weight: 300;
200
189
  line-height: 1.25;
201
190
  }
191
+ p:last-child {
192
+ margin-bottom: 0;
193
+ }
202
194
  small {
203
195
  display: block;
204
- line-height: @baseLineHeight;
205
- color: @grayLight;
196
+ line-height: @line-height-base;
197
+ color: @blockquote-small-color;
206
198
  &:before {
207
- content: '\2014 \00A0';
199
+ content: '\2014 \00A0';// EM DASH, NBSP
208
200
  }
209
201
  }
210
202
 
211
203
  // Float right with text-align: right
212
204
  &.pull-right {
213
- float: right;
214
205
  padding-right: 15px;
215
206
  padding-left: 0;
216
- border-right: 5px solid @grayLighter;
207
+ border-right: 5px solid @blockquote-border-color;
217
208
  border-left: 0;
218
209
  p,
219
210
  small {
@@ -224,7 +215,7 @@ blockquote {
224
215
  content: '';
225
216
  }
226
217
  &:after {
227
- content: '\00A0 \2014';
218
+ content: '\00A0 \2014';// NBSP, EM DASH
228
219
  }
229
220
  }
230
221
  }
@@ -241,7 +232,7 @@ blockquote:after {
241
232
  // Addresses
242
233
  address {
243
234
  display: block;
244
- margin-bottom: @baseLineHeight;
235
+ margin-bottom: @line-height-computed;
245
236
  font-style: normal;
246
- line-height: @baseLineHeight;
237
+ line-height: @line-height-base;
247
238
  }