twitter-bootstrap-turbo 2.1.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.
- data/README.md +266 -0
- data/Rakefile +14 -0
- data/app/helpers/bootstrap_flash_helper.rb +14 -0
- data/app/helpers/flash_block_helper.rb +17 -0
- data/app/helpers/glyph_helper.rb +12 -0
- data/app/helpers/modal_helper.rb +42 -0
- data/app/helpers/twitter_breadcrumbs_helper.rb +5 -0
- data/app/views/twitter-bootstrap/_breadcrumbs.html.erb +14 -0
- data/lib/generators/bootstrap/install/install_generator.rb +53 -0
- data/lib/generators/bootstrap/install/templates/application.css +7 -0
- data/lib/generators/bootstrap/install/templates/application.js +10 -0
- data/lib/generators/bootstrap/install/templates/bootstrap.coffee +9 -0
- data/lib/generators/bootstrap/install/templates/bootstrap_and_overrides.less +28 -0
- data/lib/generators/bootstrap/layout/layout_generator.rb +23 -0
- data/lib/generators/bootstrap/layout/templates/layout.html.erb +108 -0
- data/lib/generators/bootstrap/layout/templates/layout.html.haml +68 -0
- data/lib/generators/bootstrap/layout/templates/layout.html.slim +68 -0
- data/lib/generators/bootstrap/partial/partial_generator.rb +20 -0
- data/lib/generators/bootstrap/partial/templates/_login.html.erb +29 -0
- data/lib/generators/bootstrap/partial/templates/_navbar.html.erb +13 -0
- data/lib/generators/bootstrap/themed/templates/_form.html.erb +16 -0
- data/lib/generators/bootstrap/themed/templates/_form.html.haml +10 -0
- data/lib/generators/bootstrap/themed/templates/_form.html.slim +11 -0
- data/lib/generators/bootstrap/themed/templates/edit.html.erb +6 -0
- data/lib/generators/bootstrap/themed/templates/edit.html.haml +4 -0
- data/lib/generators/bootstrap/themed/templates/edit.html.slim +4 -0
- data/lib/generators/bootstrap/themed/templates/index.html.erb +40 -0
- data/lib/generators/bootstrap/themed/templates/index.html.haml +25 -0
- data/lib/generators/bootstrap/themed/templates/index.html.slim +27 -0
- data/lib/generators/bootstrap/themed/templates/new.html.erb +6 -0
- data/lib/generators/bootstrap/themed/templates/new.html.haml +4 -0
- data/lib/generators/bootstrap/themed/templates/new.html.slim +4 -0
- data/lib/generators/bootstrap/themed/templates/show.html.erb +23 -0
- data/lib/generators/bootstrap/themed/templates/show.html.haml +15 -0
- data/lib/generators/bootstrap/themed/templates/show.html.slim +17 -0
- data/lib/generators/bootstrap/themed/templates/simple_form/_form.html.erb +14 -0
- data/lib/generators/bootstrap/themed/templates/simple_form/_form.html.haml +11 -0
- data/lib/generators/bootstrap/themed/templates/simple_form/_form.html.slim +12 -0
- data/lib/generators/bootstrap/themed/themed_generator.rb +99 -0
- data/lib/twitter-bootstrap-turbo.rb +10 -0
- data/lib/twitter/bootstrap/rails/bootstrap.rb +2 -0
- data/lib/twitter/bootstrap/rails/engine.rb +29 -0
- data/lib/twitter/bootstrap/rails/twitter-bootstrap-breadcrumbs.rb +30 -0
- data/lib/twitter/bootstrap/rails/version.rb +7 -0
- data/vendor/assets/fonts/fontawesome-webfont.eot +0 -0
- data/vendor/assets/fonts/fontawesome-webfont.svg +255 -0
- data/vendor/assets/fonts/fontawesome-webfont.ttf +0 -0
- data/vendor/assets/fonts/fontawesome-webfont.woff +0 -0
- data/vendor/assets/images/twitter/bootstrap/glyphicons-halflings-white.png +0 -0
- data/vendor/assets/images/twitter/bootstrap/glyphicons-halflings.png +0 -0
- data/vendor/assets/javascripts/twitter/bootstrap.js +13 -0
- data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-affix.js +105 -0
- data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-alert.js +92 -0
- data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-button.js +98 -0
- data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-carousel.js +178 -0
- data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-collapse.js +159 -0
- data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-dropdown.js +151 -0
- data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-modal.js +241 -0
- data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-popover.js +103 -0
- data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-scrollspy.js +152 -0
- data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-tab.js +137 -0
- data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-tooltip.js +275 -0
- data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-transition.js +60 -0
- data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-typeahead.js +302 -0
- data/vendor/assets/javascripts/twitter/bootstrap_ujs.js +11 -0
- data/vendor/toolkit/font-awesome-ie7.less +245 -0
- data/vendor/toolkit/fontawesome.less +327 -0
- data/vendor/toolkit/twitter/bootstrap/accordion.less +34 -0
- data/vendor/toolkit/twitter/bootstrap/alerts.less +65 -0
- data/vendor/toolkit/twitter/bootstrap/bootstrap.less +62 -0
- data/vendor/toolkit/twitter/bootstrap/breadcrumbs.less +24 -0
- data/vendor/toolkit/twitter/bootstrap/button-groups.less +245 -0
- data/vendor/toolkit/twitter/bootstrap/buttons.less +231 -0
- data/vendor/toolkit/twitter/bootstrap/carousel.less +131 -0
- data/vendor/toolkit/twitter/bootstrap/close.less +31 -0
- data/vendor/toolkit/twitter/bootstrap/code.less +58 -0
- data/vendor/toolkit/twitter/bootstrap/component-animations.less +22 -0
- data/vendor/toolkit/twitter/bootstrap/dropdowns.less +210 -0
- data/vendor/toolkit/twitter/bootstrap/forms.less +650 -0
- data/vendor/toolkit/twitter/bootstrap/grid.less +21 -0
- data/vendor/toolkit/twitter/bootstrap/hero-unit.less +24 -0
- data/vendor/toolkit/twitter/bootstrap/labels-badges.less +72 -0
- data/vendor/toolkit/twitter/bootstrap/layouts.less +16 -0
- data/vendor/toolkit/twitter/bootstrap/mixins.less +681 -0
- data/vendor/toolkit/twitter/bootstrap/modals.less +98 -0
- data/vendor/toolkit/twitter/bootstrap/navbar.less +475 -0
- data/vendor/toolkit/twitter/bootstrap/navs.less +384 -0
- data/vendor/toolkit/twitter/bootstrap/pager.less +40 -0
- data/vendor/toolkit/twitter/bootstrap/pagination.less +64 -0
- data/vendor/toolkit/twitter/bootstrap/popovers.less +117 -0
- data/vendor/toolkit/twitter/bootstrap/progress-bars.less +122 -0
- data/vendor/toolkit/twitter/bootstrap/reset.less +137 -0
- data/vendor/toolkit/twitter/bootstrap/responsive-1200px-min.less +28 -0
- data/vendor/toolkit/twitter/bootstrap/responsive-767px-max.less +174 -0
- data/vendor/toolkit/twitter/bootstrap/responsive-768px-979px.less +19 -0
- data/vendor/toolkit/twitter/bootstrap/responsive-navbar.less +177 -0
- data/vendor/toolkit/twitter/bootstrap/responsive-utilities.less +43 -0
- data/vendor/toolkit/twitter/bootstrap/responsive.less +48 -0
- data/vendor/toolkit/twitter/bootstrap/scaffolding.less +52 -0
- data/vendor/toolkit/twitter/bootstrap/sprites.less +193 -0
- data/vendor/toolkit/twitter/bootstrap/tables.less +245 -0
- data/vendor/toolkit/twitter/bootstrap/thumbnails.less +52 -0
- data/vendor/toolkit/twitter/bootstrap/tooltip.less +70 -0
- data/vendor/toolkit/twitter/bootstrap/type.less +221 -0
- data/vendor/toolkit/twitter/bootstrap/utilities.less +30 -0
- data/vendor/toolkit/twitter/bootstrap/variables.less +279 -0
- data/vendor/toolkit/twitter/bootstrap/wells.less +29 -0
- data/vendor/toolkit/twitter/bootstrap_base.less +2 -0
- metadata +235 -0
@@ -0,0 +1,117 @@
|
|
1
|
+
//
|
2
|
+
// Popovers
|
3
|
+
// --------------------------------------------------
|
4
|
+
|
5
|
+
|
6
|
+
.popover {
|
7
|
+
position: absolute;
|
8
|
+
top: 0;
|
9
|
+
left: 0;
|
10
|
+
z-index: @zindexPopover;
|
11
|
+
display: none;
|
12
|
+
width: 236px;
|
13
|
+
padding: 1px;
|
14
|
+
background-color: @popoverBackground;
|
15
|
+
-webkit-background-clip: padding-box;
|
16
|
+
-moz-background-clip: padding;
|
17
|
+
background-clip: padding-box;
|
18
|
+
border: 1px solid #ccc;
|
19
|
+
border: 1px solid rgba(0,0,0,.2);
|
20
|
+
.border-radius(6px);
|
21
|
+
.box-shadow(0 5px 10px rgba(0,0,0,.2));
|
22
|
+
|
23
|
+
// Offset the popover to account for the popover arrow
|
24
|
+
&.top { margin-bottom: 10px; }
|
25
|
+
&.right { margin-left: 10px; }
|
26
|
+
&.bottom { margin-top: 10px; }
|
27
|
+
&.left { margin-right: 10px; }
|
28
|
+
|
29
|
+
}
|
30
|
+
|
31
|
+
.popover-title {
|
32
|
+
margin: 0; // reset heading margin
|
33
|
+
padding: 8px 14px;
|
34
|
+
font-size: 14px;
|
35
|
+
font-weight: normal;
|
36
|
+
line-height: 18px;
|
37
|
+
background-color: @popoverTitleBackground;
|
38
|
+
border-bottom: 1px solid darken(@popoverTitleBackground, 5%);
|
39
|
+
.border-radius(5px 5px 0 0);
|
40
|
+
}
|
41
|
+
|
42
|
+
.popover-content {
|
43
|
+
padding: 9px 14px;
|
44
|
+
p, ul, ol {
|
45
|
+
margin-bottom: 0;
|
46
|
+
}
|
47
|
+
}
|
48
|
+
|
49
|
+
// Arrows
|
50
|
+
.popover .arrow,
|
51
|
+
.popover .arrow:after {
|
52
|
+
position: absolute;
|
53
|
+
display: inline-block;
|
54
|
+
width: 0;
|
55
|
+
height: 0;
|
56
|
+
border-color: transparent;
|
57
|
+
border-style: solid;
|
58
|
+
}
|
59
|
+
.popover .arrow:after {
|
60
|
+
content: "";
|
61
|
+
z-index: -1;
|
62
|
+
}
|
63
|
+
|
64
|
+
.popover {
|
65
|
+
&.top .arrow {
|
66
|
+
bottom: -@popoverArrowWidth;
|
67
|
+
left: 50%;
|
68
|
+
margin-left: -@popoverArrowWidth;
|
69
|
+
border-width: @popoverArrowWidth @popoverArrowWidth 0;
|
70
|
+
border-top-color: @popoverArrowColor;
|
71
|
+
&:after {
|
72
|
+
border-width: @popoverArrowOuterWidth @popoverArrowOuterWidth 0;
|
73
|
+
border-top-color: @popoverArrowOuterColor;
|
74
|
+
bottom: -1px;
|
75
|
+
left: -@popoverArrowOuterWidth;
|
76
|
+
}
|
77
|
+
}
|
78
|
+
&.right .arrow {
|
79
|
+
top: 50%;
|
80
|
+
left: -@popoverArrowWidth;
|
81
|
+
margin-top: -@popoverArrowWidth;
|
82
|
+
border-width: @popoverArrowWidth @popoverArrowWidth @popoverArrowWidth 0;
|
83
|
+
border-right-color: @popoverArrowColor;
|
84
|
+
&:after {
|
85
|
+
border-width: @popoverArrowOuterWidth @popoverArrowOuterWidth @popoverArrowOuterWidth 0;
|
86
|
+
border-right-color: @popoverArrowOuterColor;
|
87
|
+
bottom: -@popoverArrowOuterWidth;
|
88
|
+
left: -1px;
|
89
|
+
}
|
90
|
+
}
|
91
|
+
&.bottom .arrow {
|
92
|
+
top: -@popoverArrowWidth;
|
93
|
+
left: 50%;
|
94
|
+
margin-left: -@popoverArrowWidth;
|
95
|
+
border-width: 0 @popoverArrowWidth @popoverArrowWidth;
|
96
|
+
border-bottom-color: @popoverArrowColor;
|
97
|
+
&:after {
|
98
|
+
border-width: 0 @popoverArrowOuterWidth @popoverArrowOuterWidth;
|
99
|
+
border-bottom-color: @popoverArrowOuterColor;
|
100
|
+
top: -1px;
|
101
|
+
left: -@popoverArrowOuterWidth;
|
102
|
+
}
|
103
|
+
}
|
104
|
+
&.left .arrow {
|
105
|
+
top: 50%;
|
106
|
+
right: -@popoverArrowWidth;
|
107
|
+
margin-top: -@popoverArrowWidth;
|
108
|
+
border-width: @popoverArrowWidth 0 @popoverArrowWidth @popoverArrowWidth;
|
109
|
+
border-left-color: @popoverArrowColor;
|
110
|
+
&:after {
|
111
|
+
border-width: @popoverArrowOuterWidth 0 @popoverArrowOuterWidth @popoverArrowOuterWidth;
|
112
|
+
border-left-color: @popoverArrowOuterColor;
|
113
|
+
bottom: -@popoverArrowOuterWidth;
|
114
|
+
right: -1px;
|
115
|
+
}
|
116
|
+
}
|
117
|
+
}
|
@@ -0,0 +1,122 @@
|
|
1
|
+
//
|
2
|
+
// Progress bars
|
3
|
+
// --------------------------------------------------
|
4
|
+
|
5
|
+
|
6
|
+
// ANIMATIONS
|
7
|
+
// ----------
|
8
|
+
|
9
|
+
// Webkit
|
10
|
+
@-webkit-keyframes progress-bar-stripes {
|
11
|
+
from { background-position: 40px 0; }
|
12
|
+
to { background-position: 0 0; }
|
13
|
+
}
|
14
|
+
|
15
|
+
// Firefox
|
16
|
+
@-moz-keyframes progress-bar-stripes {
|
17
|
+
from { background-position: 40px 0; }
|
18
|
+
to { background-position: 0 0; }
|
19
|
+
}
|
20
|
+
|
21
|
+
// IE9
|
22
|
+
@-ms-keyframes progress-bar-stripes {
|
23
|
+
from { background-position: 40px 0; }
|
24
|
+
to { background-position: 0 0; }
|
25
|
+
}
|
26
|
+
|
27
|
+
// Opera
|
28
|
+
@-o-keyframes progress-bar-stripes {
|
29
|
+
from { background-position: 0 0; }
|
30
|
+
to { background-position: 40px 0; }
|
31
|
+
}
|
32
|
+
|
33
|
+
// Spec
|
34
|
+
@keyframes progress-bar-stripes {
|
35
|
+
from { background-position: 40px 0; }
|
36
|
+
to { background-position: 0 0; }
|
37
|
+
}
|
38
|
+
|
39
|
+
|
40
|
+
|
41
|
+
// THE BARS
|
42
|
+
// --------
|
43
|
+
|
44
|
+
// Outer container
|
45
|
+
.progress {
|
46
|
+
overflow: hidden;
|
47
|
+
height: @baseLineHeight;
|
48
|
+
margin-bottom: @baseLineHeight;
|
49
|
+
#gradient > .vertical(#f5f5f5, #f9f9f9);
|
50
|
+
.box-shadow(inset 0 1px 2px rgba(0,0,0,.1));
|
51
|
+
.border-radius(4px);
|
52
|
+
}
|
53
|
+
|
54
|
+
// Bar of progress
|
55
|
+
.progress .bar {
|
56
|
+
width: 0%;
|
57
|
+
height: 100%;
|
58
|
+
color: @white;
|
59
|
+
float: left;
|
60
|
+
font-size: 12px;
|
61
|
+
text-align: center;
|
62
|
+
text-shadow: 0 -1px 0 rgba(0,0,0,.25);
|
63
|
+
#gradient > .vertical(#149bdf, #0480be);
|
64
|
+
.box-shadow(inset 0 -1px 0 rgba(0,0,0,.15));
|
65
|
+
.box-sizing(border-box);
|
66
|
+
.transition(width .6s ease);
|
67
|
+
}
|
68
|
+
.progress .bar + .bar {
|
69
|
+
.box-shadow(inset 1px 0 0 rgba(0,0,0,.15), inset 0 -1px 0 rgba(0,0,0,.15));
|
70
|
+
}
|
71
|
+
|
72
|
+
// Striped bars
|
73
|
+
.progress-striped .bar {
|
74
|
+
#gradient > .striped(#149bdf);
|
75
|
+
.background-size(40px 40px);
|
76
|
+
}
|
77
|
+
|
78
|
+
// Call animation for the active one
|
79
|
+
.progress.active .bar {
|
80
|
+
-webkit-animation: progress-bar-stripes 2s linear infinite;
|
81
|
+
-moz-animation: progress-bar-stripes 2s linear infinite;
|
82
|
+
-ms-animation: progress-bar-stripes 2s linear infinite;
|
83
|
+
-o-animation: progress-bar-stripes 2s linear infinite;
|
84
|
+
animation: progress-bar-stripes 2s linear infinite;
|
85
|
+
}
|
86
|
+
|
87
|
+
|
88
|
+
|
89
|
+
// COLORS
|
90
|
+
// ------
|
91
|
+
|
92
|
+
// Danger (red)
|
93
|
+
.progress-danger .bar, .progress .bar-danger {
|
94
|
+
#gradient > .vertical(#ee5f5b, #c43c35);
|
95
|
+
}
|
96
|
+
.progress-danger.progress-striped .bar, .progress-striped .bar-danger {
|
97
|
+
#gradient > .striped(#ee5f5b);
|
98
|
+
}
|
99
|
+
|
100
|
+
// Success (green)
|
101
|
+
.progress-success .bar, .progress .bar-success {
|
102
|
+
#gradient > .vertical(#62c462, #57a957);
|
103
|
+
}
|
104
|
+
.progress-success.progress-striped .bar, .progress-striped .bar-success {
|
105
|
+
#gradient > .striped(#62c462);
|
106
|
+
}
|
107
|
+
|
108
|
+
// Info (teal)
|
109
|
+
.progress-info .bar, .progress .bar-info {
|
110
|
+
#gradient > .vertical(#5bc0de, #339bb9);
|
111
|
+
}
|
112
|
+
.progress-info.progress-striped .bar, .progress-striped .bar-info {
|
113
|
+
#gradient > .striped(#5bc0de);
|
114
|
+
}
|
115
|
+
|
116
|
+
// Warning (orange)
|
117
|
+
.progress-warning .bar, .progress .bar-warning {
|
118
|
+
#gradient > .vertical(lighten(@orange, 15%), @orange);
|
119
|
+
}
|
120
|
+
.progress-warning.progress-striped .bar, .progress-striped .bar-warning {
|
121
|
+
#gradient > .striped(lighten(@orange, 15%));
|
122
|
+
}
|
@@ -0,0 +1,137 @@
|
|
1
|
+
//
|
2
|
+
// Modals
|
3
|
+
// Adapted from http://github.com/necolas/normalize.css
|
4
|
+
// --------------------------------------------------
|
5
|
+
|
6
|
+
|
7
|
+
// Display in IE6-9 and FF3
|
8
|
+
// -------------------------
|
9
|
+
|
10
|
+
article,
|
11
|
+
aside,
|
12
|
+
details,
|
13
|
+
figcaption,
|
14
|
+
figure,
|
15
|
+
footer,
|
16
|
+
header,
|
17
|
+
hgroup,
|
18
|
+
nav,
|
19
|
+
section {
|
20
|
+
display: block;
|
21
|
+
}
|
22
|
+
|
23
|
+
// Display block in IE6-9 and FF3
|
24
|
+
// -------------------------
|
25
|
+
|
26
|
+
audio,
|
27
|
+
canvas,
|
28
|
+
video {
|
29
|
+
display: inline-block;
|
30
|
+
*display: inline;
|
31
|
+
*zoom: 1;
|
32
|
+
}
|
33
|
+
|
34
|
+
// Prevents modern browsers from displaying 'audio' without controls
|
35
|
+
// -------------------------
|
36
|
+
|
37
|
+
audio:not([controls]) {
|
38
|
+
display: none;
|
39
|
+
}
|
40
|
+
|
41
|
+
// Base settings
|
42
|
+
// -------------------------
|
43
|
+
|
44
|
+
html {
|
45
|
+
font-size: 100%;
|
46
|
+
-webkit-text-size-adjust: 100%;
|
47
|
+
-ms-text-size-adjust: 100%;
|
48
|
+
}
|
49
|
+
// Focus states
|
50
|
+
a:focus {
|
51
|
+
.tab-focus();
|
52
|
+
}
|
53
|
+
// Hover & Active
|
54
|
+
a:hover,
|
55
|
+
a:active {
|
56
|
+
outline: 0;
|
57
|
+
}
|
58
|
+
|
59
|
+
// Prevents sub and sup affecting line-height in all browsers
|
60
|
+
// -------------------------
|
61
|
+
|
62
|
+
sub,
|
63
|
+
sup {
|
64
|
+
position: relative;
|
65
|
+
font-size: 75%;
|
66
|
+
line-height: 0;
|
67
|
+
vertical-align: baseline;
|
68
|
+
}
|
69
|
+
sup {
|
70
|
+
top: -0.5em;
|
71
|
+
}
|
72
|
+
sub {
|
73
|
+
bottom: -0.25em;
|
74
|
+
}
|
75
|
+
|
76
|
+
// Img border in a's and image quality
|
77
|
+
// -------------------------
|
78
|
+
|
79
|
+
img {
|
80
|
+
/* Responsive images (ensure images don't scale beyond their parents) */
|
81
|
+
max-width: 100%; /* Part 1: Set a maxium relative to the parent */
|
82
|
+
width: auto\9; /* IE7-8 need help adjusting responsive images */
|
83
|
+
height: auto; /* Part 2: Scale the height according to the width, otherwise you get stretching */
|
84
|
+
|
85
|
+
vertical-align: middle;
|
86
|
+
border: 0;
|
87
|
+
-ms-interpolation-mode: bicubic;
|
88
|
+
}
|
89
|
+
|
90
|
+
// Prevent max-width from affecting Google Maps
|
91
|
+
#map_canvas img {
|
92
|
+
max-width: none;
|
93
|
+
}
|
94
|
+
|
95
|
+
// Forms
|
96
|
+
// -------------------------
|
97
|
+
|
98
|
+
// Font size in all browsers, margin changes, misc consistency
|
99
|
+
button,
|
100
|
+
input,
|
101
|
+
select,
|
102
|
+
textarea {
|
103
|
+
margin: 0;
|
104
|
+
font-size: 100%;
|
105
|
+
vertical-align: middle;
|
106
|
+
}
|
107
|
+
button,
|
108
|
+
input {
|
109
|
+
*overflow: visible; // Inner spacing ie IE6/7
|
110
|
+
line-height: normal; // FF3/4 have !important on line-height in UA stylesheet
|
111
|
+
}
|
112
|
+
button::-moz-focus-inner,
|
113
|
+
input::-moz-focus-inner { // Inner padding and border oddities in FF3/4
|
114
|
+
padding: 0;
|
115
|
+
border: 0;
|
116
|
+
}
|
117
|
+
button,
|
118
|
+
input[type="button"],
|
119
|
+
input[type="reset"],
|
120
|
+
input[type="submit"] {
|
121
|
+
cursor: pointer; // Cursors on all buttons applied consistently
|
122
|
+
-webkit-appearance: button; // Style clickable inputs in iOS
|
123
|
+
}
|
124
|
+
input[type="search"] { // Appearance in Safari/Chrome
|
125
|
+
-webkit-box-sizing: content-box;
|
126
|
+
-moz-box-sizing: content-box;
|
127
|
+
box-sizing: content-box;
|
128
|
+
-webkit-appearance: textfield;
|
129
|
+
}
|
130
|
+
input[type="search"]::-webkit-search-decoration,
|
131
|
+
input[type="search"]::-webkit-search-cancel-button {
|
132
|
+
-webkit-appearance: none; // Inner-padding issues in Chrome OSX, Safari 5
|
133
|
+
}
|
134
|
+
textarea {
|
135
|
+
overflow: auto; // Remove vertical scrollbar in IE6-9
|
136
|
+
vertical-align: top; // Readability and alignment cross-browser
|
137
|
+
}
|
@@ -0,0 +1,28 @@
|
|
1
|
+
//
|
2
|
+
// Responsive: Large desktop and up
|
3
|
+
// --------------------------------------------------
|
4
|
+
|
5
|
+
|
6
|
+
@media (min-width: 1200px) {
|
7
|
+
|
8
|
+
// Fixed grid
|
9
|
+
#grid > .core(@gridColumnWidth1200, @gridGutterWidth1200);
|
10
|
+
|
11
|
+
// Fluid grid
|
12
|
+
#grid > .fluid(@fluidGridColumnWidth1200, @fluidGridGutterWidth1200);
|
13
|
+
|
14
|
+
// Input grid
|
15
|
+
#grid > .input(@gridColumnWidth1200, @gridGutterWidth1200);
|
16
|
+
|
17
|
+
// Thumbnails
|
18
|
+
.thumbnails {
|
19
|
+
margin-left: -@gridGutterWidth1200;
|
20
|
+
}
|
21
|
+
.thumbnails > li {
|
22
|
+
margin-left: @gridGutterWidth1200;
|
23
|
+
}
|
24
|
+
.row-fluid .thumbnails {
|
25
|
+
margin-left: 0;
|
26
|
+
}
|
27
|
+
|
28
|
+
}
|
@@ -0,0 +1,174 @@
|
|
1
|
+
//
|
2
|
+
// Responsive: Landscape phone to desktop/tablet
|
3
|
+
// --------------------------------------------------
|
4
|
+
|
5
|
+
|
6
|
+
@media (max-width: 767px) {
|
7
|
+
|
8
|
+
// Padding to set content in a bit
|
9
|
+
body {
|
10
|
+
padding-left: 20px;
|
11
|
+
padding-right: 20px;
|
12
|
+
}
|
13
|
+
// Negative indent the now static "fixed" navbar
|
14
|
+
.navbar-fixed-top,
|
15
|
+
.navbar-fixed-bottom,
|
16
|
+
.navbar-static-top {
|
17
|
+
margin-left: -20px;
|
18
|
+
margin-right: -20px;
|
19
|
+
}
|
20
|
+
// Remove padding on container given explicit padding set on body
|
21
|
+
.container-fluid {
|
22
|
+
padding: 0;
|
23
|
+
}
|
24
|
+
|
25
|
+
// TYPOGRAPHY
|
26
|
+
// ----------
|
27
|
+
// Reset horizontal dl
|
28
|
+
.dl-horizontal {
|
29
|
+
dt {
|
30
|
+
float: none;
|
31
|
+
clear: none;
|
32
|
+
width: auto;
|
33
|
+
text-align: left;
|
34
|
+
}
|
35
|
+
dd {
|
36
|
+
margin-left: 0;
|
37
|
+
}
|
38
|
+
}
|
39
|
+
|
40
|
+
// GRID & CONTAINERS
|
41
|
+
// -----------------
|
42
|
+
// Remove width from containers
|
43
|
+
.container {
|
44
|
+
width: auto;
|
45
|
+
}
|
46
|
+
// Fluid rows
|
47
|
+
.row-fluid {
|
48
|
+
width: 100%;
|
49
|
+
}
|
50
|
+
// Undo negative margin on rows and thumbnails
|
51
|
+
.row,
|
52
|
+
.thumbnails {
|
53
|
+
margin-left: 0;
|
54
|
+
}
|
55
|
+
.thumbnails > li {
|
56
|
+
float: none;
|
57
|
+
margin-left: 0; // Reset the default margin for all li elements when no .span* classes are present
|
58
|
+
}
|
59
|
+
// Make all grid-sized elements block level again
|
60
|
+
[class*="span"],
|
61
|
+
.row-fluid [class*="span"] {
|
62
|
+
float: none;
|
63
|
+
display: block;
|
64
|
+
width: 100%;
|
65
|
+
margin-left: 0;
|
66
|
+
.box-sizing(border-box);
|
67
|
+
}
|
68
|
+
.span12,
|
69
|
+
.row-fluid .span12 {
|
70
|
+
width: 100%;
|
71
|
+
.box-sizing(border-box);
|
72
|
+
}
|
73
|
+
|
74
|
+
// FORM FIELDS
|
75
|
+
// -----------
|
76
|
+
// Make span* classes full width
|
77
|
+
.input-large,
|
78
|
+
.input-xlarge,
|
79
|
+
.input-xxlarge,
|
80
|
+
input[class*="span"],
|
81
|
+
select[class*="span"],
|
82
|
+
textarea[class*="span"],
|
83
|
+
.uneditable-input {
|
84
|
+
.input-block-level();
|
85
|
+
}
|
86
|
+
// But don't let it screw up prepend/append inputs
|
87
|
+
.input-prepend input,
|
88
|
+
.input-append input,
|
89
|
+
.input-prepend input[class*="span"],
|
90
|
+
.input-append input[class*="span"] {
|
91
|
+
display: inline-block; // redeclare so they don't wrap to new lines
|
92
|
+
width: auto;
|
93
|
+
}
|
94
|
+
.controls-row [class*="span"] + [class*="span"] {
|
95
|
+
margin-left: 0;
|
96
|
+
}
|
97
|
+
|
98
|
+
// Modals
|
99
|
+
.modal {
|
100
|
+
position: fixed;
|
101
|
+
top: 20px;
|
102
|
+
left: 20px;
|
103
|
+
right: 20px;
|
104
|
+
width: auto;
|
105
|
+
margin: 0;
|
106
|
+
&.fade.in { top: auto; }
|
107
|
+
}
|
108
|
+
|
109
|
+
}
|
110
|
+
|
111
|
+
|
112
|
+
|
113
|
+
// UP TO LANDSCAPE PHONE
|
114
|
+
// ---------------------
|
115
|
+
|
116
|
+
@media (max-width: 480px) {
|
117
|
+
|
118
|
+
// Smooth out the collapsing/expanding nav
|
119
|
+
.nav-collapse {
|
120
|
+
-webkit-transform: translate3d(0, 0, 0); // activate the GPU
|
121
|
+
}
|
122
|
+
|
123
|
+
// Block level the page header small tag for readability
|
124
|
+
.page-header h1 small {
|
125
|
+
display: block;
|
126
|
+
line-height: @baseLineHeight;
|
127
|
+
}
|
128
|
+
|
129
|
+
// Update checkboxes for iOS
|
130
|
+
input[type="checkbox"],
|
131
|
+
input[type="radio"] {
|
132
|
+
border: 1px solid #ccc;
|
133
|
+
}
|
134
|
+
|
135
|
+
// Remove the horizontal form styles
|
136
|
+
.form-horizontal {
|
137
|
+
.control-label {
|
138
|
+
float: none;
|
139
|
+
width: auto;
|
140
|
+
padding-top: 0;
|
141
|
+
text-align: left;
|
142
|
+
}
|
143
|
+
// Move over all input controls and content
|
144
|
+
.controls {
|
145
|
+
margin-left: 0;
|
146
|
+
}
|
147
|
+
// Move the options list down to align with labels
|
148
|
+
.control-list {
|
149
|
+
padding-top: 0; // has to be padding because margin collaspes
|
150
|
+
}
|
151
|
+
// Move over buttons in .form-actions to align with .controls
|
152
|
+
.form-actions {
|
153
|
+
padding-left: 10px;
|
154
|
+
padding-right: 10px;
|
155
|
+
}
|
156
|
+
}
|
157
|
+
|
158
|
+
// Modals
|
159
|
+
.modal {
|
160
|
+
top: 10px;
|
161
|
+
left: 10px;
|
162
|
+
right: 10px;
|
163
|
+
}
|
164
|
+
.modal-header .close {
|
165
|
+
padding: 10px;
|
166
|
+
margin: -10px;
|
167
|
+
}
|
168
|
+
|
169
|
+
// Carousel
|
170
|
+
.carousel-caption {
|
171
|
+
position: static;
|
172
|
+
}
|
173
|
+
|
174
|
+
}
|