compass_twitter_bootstrap 2.0.3 → 2.2.2

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