zurb-foundation 3.2.0 → 3.2.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (31) hide show
  1. data/CHANGELOG.md +15 -0
  2. data/README.md +1 -0
  3. data/lib/foundation/version.rb +1 -1
  4. data/scss/foundation/_settings.scss +1 -0
  5. data/scss/foundation/common/_globals.scss +3 -2
  6. data/scss/foundation/components/modules/_clearing.scss +1 -1
  7. data/scss/foundation/components/modules/_joyride.scss +1 -1
  8. data/scss/foundation/components/modules/_mqueries.scss +5 -3
  9. data/scss/foundation/components/modules/_topbar.scss +4 -2
  10. data/scss/foundation/components/modules/_ui.scss +3 -3
  11. data/scss/foundation/mixins/_clearfix.scss +2 -2
  12. data/scss/foundation/mixins/_semantic-grid.scss +10 -10
  13. data/templates/project/index.html +1 -1
  14. data/templates/project/scss/_settings.scss +1 -0
  15. data/templates/project/scss/app.scss +3 -0
  16. data/test/clearing.html +2 -0
  17. data/test/elements.html +2 -2
  18. data/test/forms.html +39 -39
  19. data/test/reveal.html +2 -2
  20. data/test/scss/_settings.scss +1 -0
  21. data/test/scss/styles.scss +2 -1
  22. data/vendor/assets/javascripts/foundation/app.js +1 -1
  23. data/vendor/assets/javascripts/foundation/jquery.foundation.accordion.js +10 -5
  24. data/vendor/assets/javascripts/foundation/jquery.foundation.buttons.js +6 -1
  25. data/vendor/assets/javascripts/foundation/jquery.foundation.clearing.js +16 -4
  26. data/vendor/assets/javascripts/foundation/jquery.foundation.forms.js +2 -2
  27. data/vendor/assets/javascripts/foundation/jquery.foundation.joyride.js +8 -8
  28. data/vendor/assets/javascripts/foundation/jquery.foundation.magellan.js +7 -6
  29. data/vendor/assets/javascripts/foundation/jquery.foundation.tabs.js +50 -37
  30. data/vendor/assets/javascripts/foundation/jquery.foundation.topbar.js +17 -13
  31. metadata +4 -4
data/CHANGELOG.md CHANGED
@@ -3,6 +3,21 @@ We'll keep you up to date with what we've released so you at least have a gist o
3
3
 
4
4
  ---
5
5
 
6
+ ### 3.2.2- November 10, 2012
7
+ This patch fixes a typo found in the tabs plugin.
8
+
9
+ ### 3.2.1- November 9, 2012
10
+ This patch include bug fixes for various elements, such as:
11
+ * Adding a missing line for mqueries.scss into app.scss
12
+ * Height of fixed magellan element
13
+ * Update viewport tag with initial-scale
14
+ * Dropdown button fixes
15
+ * Clearing bug fixes
16
+ * Added a font-smoothing variable
17
+ * Added close support to accordions
18
+ * Removed deep linking hashes from tabs
19
+ * Topbar now resets on close for small layouts
20
+
6
21
  ### **3.2**- October 26, 2012
7
22
  With this update we've revamped our documentation to be more organized and explain details regarding Scss, Compass and Javascripts.
8
23
 
data/README.md CHANGED
@@ -34,6 +34,7 @@ WordPress
34
34
  * [Starter Theme](https://github.com/drewsymo/Foundation) by Drew Morris
35
35
  * [Reverie](http://themefortress.com/reverie/) by Zhen
36
36
  * [WP-Foundation](http://320press.com/wp-foundation/features/) by 320press
37
+ * [Yeti](https://github.com/modlearning/Yeti) by Modular Learning
37
38
 
38
39
  Joomla
39
40
 
@@ -1,3 +1,3 @@
1
1
  module Foundation
2
- VERSION = "3.2.0"
2
+ VERSION = "3.2.2"
3
3
  end
@@ -23,6 +23,7 @@ $darkEdge: rgba(#000, .2) !default;
23
23
 
24
24
  // Font Settings
25
25
 
26
+ $fontSmoothing: antialiased;
26
27
  $headerFontFamily: "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif !default;
27
28
  $headerFontWeight: bold !default;
28
29
  $headerFontStyle: normal !default;
@@ -2,12 +2,13 @@
2
2
 
3
3
  /* Global Reset & Standards ---------------------- */
4
4
 
5
- * { @include box-sizing(border-box); }
5
+ *, *:before, *:after { @include box-sizing(border-box); }
6
6
  html { font-size: 62.5%; }
7
- body { background: $white; font-family: $bodyFontFamily; font-weight: $bodyFontWeight; font-style: $bodyFontStyle; font-size: ms(0); line-height: 1; color: $bodyFontColor; position: relative; -webkit-font-smoothing: antialiased; }
7
+ body { background: $white; font-family: $bodyFontFamily; font-weight: $bodyFontWeight; font-style: $bodyFontStyle; font-size: ms(0); line-height: 1; color: $bodyFontColor; position: relative; -webkit-font-smoothing: $fontSmoothing; }
8
8
 
9
9
  /* Links ---------------------- */
10
10
 
11
+ a img { border:none; }
11
12
  a { color: $mainColor; text-decoration: none; line-height: inherit; }
12
13
  a:hover { color: darken($mainColor, 5%); }
13
14
  a:focus { color: $mainColor; outline: none; }
@@ -23,7 +23,7 @@
23
23
 
24
24
  .block-grid.three-up > li:nth-child(3n+1) { clear: none; }
25
25
 
26
- ul[data-clearing] li { display: block;
26
+ ul[data-clearing] li { cursor: pointer; display: block;
27
27
  &.clearing-feature ~ li { display: none; }
28
28
  }
29
29
 
@@ -30,4 +30,4 @@
30
30
  &:hover { color: #eee !important; }
31
31
  }
32
32
 
33
- .joyride-modal-bg { position: fixed; height: 100%; width: 100%; background: $tipScreenFill; z-index: 100; display: none; top: 0; left: 0; cursor: pointer; }
33
+ .joyride-modal-bg { position: fixed; height: 100%; width: 100%; background: transparent; background: $tipScreenFill; z-index: 100; display: none; top: 0; left: 0; cursor: pointer; }
@@ -365,7 +365,7 @@
365
365
  /* Branding and name */
366
366
  &.name { background: darken($topBarBgColor, 20%); height: $topBarHeightMobile;
367
367
  h1 { line-height: 1;
368
- a { color: $topBarLinkColor; display: block; line-height: $topBarHeightMobile !important; padding-left: $topBarHeightMobile / 2; height: $topBarHeightMobile; }
368
+ a { color: $topBarLinkColor; display: block; line-height: $topBarHeightMobile !important; padding-left: $topBarHeightMobile / 3; height: $topBarHeightMobile; }
369
369
  }
370
370
  }
371
371
  &:hover, &.active { a { color: $topBarDropLinkColor; } }
@@ -443,7 +443,6 @@
443
443
  }
444
444
  }
445
445
  }
446
- &>ul { height: $topBarHeight; }
447
446
  section > ul li a:not(.button) { padding-left: $topBarHeightMobile / 2 !important; }
448
447
 
449
448
  /* When the Small Nav is Showing */
@@ -451,6 +450,9 @@
451
450
  ul li.toggle-topbar a { @include cssTriangle($topBarNavToggleSize, rgba(255,255,255,0.5), bottom); top: auto; bottom: 50%; margin-bottom: -($topBarNavToggleSize / 2); }
452
451
  }
453
452
  }
454
- .top-bar ul li.has-button { padding: 0 $topBarHeightMobile / 2 5px; }
453
+ .top-bar ul li.has-button { padding: 5px $topBarHeightMobile / 3; }
455
454
  .top-bar ul li .button.small { margin: 0 !important; display: inline-block; width: 100%; }
455
+ .top-bar ul > li.has-button {
456
+ a.button { margin: 0; }
457
+ }
456
458
  }
@@ -44,8 +44,10 @@
44
44
  /* Main Navigation links style */
45
45
  &>li { float: left;
46
46
  a:not(.button) { color: $topBarLinkColor; display: block; font-size: $topBarLinkSize; font-weight: $topBarLinkWeight; height: $topBarHeight; line-height: $topBarHeight; padding: 0 $topBarHeight / 3; }
47
- &:hover, &.active { background: darken($topBarBgColor, 15%);
48
- a { color: darken($topBarLinkColor, 15%); }
47
+ &:not(.name) {
48
+ &:hover, &.active { background: darken($topBarBgColor, 15%);
49
+ a { color: darken($topBarLinkColor, 15%); }
50
+ }
49
51
  }
50
52
 
51
53
  /* Dividers between navigation */
@@ -101,7 +101,7 @@
101
101
 
102
102
  &>li { list-style: none; margin: 0; padding: 0; border-top: 1px solid $secondaryColor;
103
103
 
104
- .title { cursor: pointer; background: lighten($secondaryColor, 5%); padding: 15px; margin: 0; position: relative; border-#{$defaultFloat}: 1px solid $secondaryColor; border-#{$defaultOpposite}: 1px solid $secondaryColor; @include single-transition(0.15s, background, linear);
104
+ & > div.title { cursor: pointer; background: lighten($secondaryColor, 5%); padding: 15px; margin: 0; position: relative; border-#{$defaultFloat}: 1px solid $secondaryColor; border-#{$defaultOpposite}: 1px solid $secondaryColor; @include single-transition(0.15s, background, linear);
105
105
 
106
106
  h1, h2, h3, h4, h5 { margin: 0; }
107
107
  &:after { @include cssTriangle(6px, darken($secondaryColor, 30%), $defaultOpposite); position: absolute; #{$defaultOpposite}: 15px; top: 21px; }
@@ -187,9 +187,9 @@
187
187
  /* Inline Link List */
188
188
  ul.inline-list, ul.link-list { margin: 0 0 $linkListBottomMargin; padding: 0; list-style: none; overflow: hidden;
189
189
 
190
- li { list-style: none; float: $defaultFloat; margin-#{$defaultFloat}: 22px; display: block;
190
+ & > li { list-style: none; float: $defaultFloat; margin-#{$defaultFloat}: 22px; display: block;
191
191
 
192
- a { display: block; }
192
+ & > * { display: block; }
193
193
  }
194
194
  }
195
195
 
@@ -1,12 +1,12 @@
1
1
  // The micro clearfix http://nicolasgallagher.com/micro-clearfix-hack/
2
2
 
3
3
  @mixin clearfix() { *zoom:1;
4
- &:before, &:after { content: ""; display: table; }
4
+ &:before, &:after { content: " "; display: table; }
5
5
  &:after { clear: both; }
6
6
  }
7
7
 
8
8
  @mixin mobileClearfix() {
9
- @include respondTo(smallScreen) { &:before, &:after { content: ""; display: table; }
9
+ @include respondTo(smallScreen) { &:before, &:after { content: " "; display: table; }
10
10
  &:after { clear: both; }
11
11
  &:last-child { float: none; }
12
12
  }
@@ -2,11 +2,13 @@
2
2
 
3
3
  // Outer row mixin for container rows
4
4
 
5
- @mixin outerRow() { width: $rowWidth; max-width: 100%; min-width: $screenSmall; margin: 0 auto; @extend %clearfix; }
5
+ @mixin outerRow() {
6
+ width: $rowWidth; max-width: 100%; min-width: $screenSmall; margin: 0 auto; @extend %clearfix;
7
+ @include respondTo(smallScreen) { width: auto; min-width: 0; margin-left: 0; margin-right: 0; }
8
+ }
6
9
 
7
10
  // Inner row mixin for nested rows, must be a child of an outer-row element. $behavior can be 'collapse' to get rid of margins
8
11
 
9
- @mixin innerRowBase { width: auto; max-width: none; min-width: 0; }
10
12
  @mixin innerRow($behavior: false) {
11
13
  @if $behavior == collapse { @extend %row-i-base; margin: 0; @extend %clearfix;
12
14
  } @else { @extend %row-i-base; margin: 0 (-($columnGutter/2)); @extend %clearfix; }
@@ -14,11 +16,10 @@
14
16
 
15
17
  // Columns mixin, syntax is ($columns, $behavior). Behavior can be 'centered' which centers things or 'collapse' which collapses the gutters. ex @include row(4,[center | collapse])
16
18
 
17
- @mixin columnBase { position: relative; min-height: 1px; padding: 0 ($columnGutter/2); }
18
19
  @mixin column($columns:$columns, $behavior: false) {
19
- @if $behavior == center { @extend %fl-n; margin: 0 auto !important; @extend %c-base; width: gridCalc($columns, $totalColumns);
20
- } @else if $behavior == collapse { @extend %fl-l; @extend %c-base; padding: 0; width: gridCalc($columns, $totalColumns);
21
- } @else { @extend %fl-l; @extend %c-base; width: gridCalc($columns, $totalColumns); }
20
+ @if $behavior == center { @extend %fl-n; margin: 0 auto !important; @extend %c-base; width: gridCalc($columns, $totalColumns); @include respondTo(smallScreen) { float: left; width: 100%; }
21
+ } @else if $behavior == collapse { @extend %fl-l; @extend %c-base; padding: 0; width: gridCalc($columns, $totalColumns); @include respondTo(smallScreen) { float: left; width: 100%; }
22
+ } @else { @extend %fl-l; @extend %c-base; width: gridCalc($columns, $totalColumns); @include respondTo(smallScreen) { float: left; width: 100%; } }
22
23
  }
23
24
 
24
25
  // Offset Mixin, include after a column mixin to manipulate its grid offset.
@@ -30,8 +31,7 @@
30
31
  @mixin push($push:1) { left: gridCalc($push, $totalColumns); }
31
32
  @mixin pull($push:1) { right: gridCalc($push, $totalColumns); }
32
33
 
33
- // Mobile Row, synctax is @include mobile-row();
34
-
34
+ // Mobile Row, synctax is @include mobile-row(); (This mixin isn't really necessary, will be deprecated in 4)
35
35
  @mixin mobileRow() { @include respondTo(smallScreen) { width: auto; min-width: 0; margin-left: 0; margin-right: 0; @include clearfix(); } }
36
36
 
37
37
  // Mobile Columns, syntax is @include mobile-column(#);
@@ -56,10 +56,10 @@
56
56
  %clearfix-m { @include mobileClearfix(); }
57
57
 
58
58
  %row-o { @include outerRow(); }
59
- %row-i-base { @include innerRowBase(); }
59
+ %row-i-base { width: auto; max-width: none; min-width: 0; }
60
60
  %row-i { @include innerRow(); }
61
61
 
62
- %c-base { @include columnBase(); }
62
+ %c-base { position: relative; min-height: 1px; padding: 0 ($columnGutter/2); }
63
63
 
64
64
  @for $i from 1 through $totalColumns {
65
65
  %c-#{$i} { @include column($i); }
@@ -8,7 +8,7 @@
8
8
  <meta charset="utf-8" />
9
9
 
10
10
  <!-- Set the viewport width to device width for mobile -->
11
- <meta name="viewport" content="width=device-width" />
11
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
12
12
 
13
13
  <title>Welcome to Foundation</title>
14
14
 
@@ -25,6 +25,7 @@
25
25
 
26
26
  // Font Settings
27
27
 
28
+ // $fontSmoothing: antialiased;
28
29
  // $headerFontFamily: "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;
29
30
  // $headerFontWeight: bold;
30
31
  // $headerFontStyle: normal;
@@ -45,3 +45,6 @@
45
45
  // @import "foundation/components/modules/orbit";
46
46
  // @import "foundation/components/modules/reveal";
47
47
  // @import "foundation/components/modules/offcanvas";
48
+
49
+ // Media Queries Overrides
50
+ // @import "foundation/components/modules/mqueries";
data/test/clearing.html CHANGED
@@ -56,6 +56,8 @@
56
56
 
57
57
  <!-- Included JS Files -->
58
58
  <script src="../vendor/assets/javascripts/foundation/jquery.js"></script>
59
+ <script src="../vendor/assets/javascripts/foundation/jquery.event.move.js"></script>
60
+ <script src="../vendor/assets/javascripts/foundation/jquery.event.swipe.js"></script>
59
61
  <script src="../vendor/assets/javascripts/foundation/jquery.foundation.mediaQueryToggle.js"></script>
60
62
  <script src="../vendor/assets/javascripts/foundation/jquery.placeholder.js"></script>
61
63
  <script src="../vendor/assets/javascripts/foundation/jquery.foundation.alerts.js"></script>
data/test/elements.html CHANGED
@@ -183,11 +183,11 @@
183
183
  <div class="four columns">
184
184
  <a name="accordion"></a>
185
185
  <h4>Accordion</h4>
186
- <p>Accordions are similar to tabs as a way to selectively show a single panel of content at a time.</p>
186
+ <p>Accordions are similar to tabs as a way to selectively show a single panel of content at a time. You can add a <code>.hover</code> class to the accordion <code>ul</code> to make it open on hover.</p>
187
187
  </div>
188
188
  <br>
189
189
  <div class="eight columns">
190
- <ul class="accordion hover">
190
+ <ul class="accordion">
191
191
  <li class="active">
192
192
  <div class="title">
193
193
  <h5>Accordion Panel 1</h5>
data/test/forms.html CHANGED
@@ -51,11 +51,11 @@
51
51
  <br>
52
52
  <div class="eight columns">
53
53
  <form>
54
- <label>This is a label.</label>
55
- <input type="text" placeholder="Standard Input" />
54
+ <label for="standard_input">This is a label.</label>
55
+ <input type="text" placeholder="Standard Input" id="standard_input" />
56
56
 
57
- <label>Address</label>
58
- <input type="text" class="twelve" placeholder="Street" />
57
+ <label for="address_1">Address</label>
58
+ <input type="text" class="twelve" placeholder="Street" id="address_1" />
59
59
  <div class="row">
60
60
  <div class="six columns">
61
61
  <input type="text" placeholder="City" />
@@ -76,26 +76,26 @@
76
76
  <form>
77
77
  <div class="row">
78
78
  <div class="two mobile-one columns">
79
- <label class="right inline">Address Name:</label>
79
+ <label class="right inline" for="address_name">Address Name:</label>
80
80
  </div>
81
81
  <div class="ten mobile-three columns">
82
- <input type="text" placeholder="e.g. Home" class="eight" />
82
+ <input type="text" placeholder="e.g. Home" class="eight" id="address_name" />
83
83
  </div>
84
84
  </div>
85
85
  <div class="row">
86
86
  <div class="two mobile-one columns">
87
- <label class="right inline">City:</label>
87
+ <label class="right inline" for="city">City:</label>
88
88
  </div>
89
89
  <div class="ten mobile-three columns">
90
- <input type="text" class="eight" />
90
+ <input type="text" class="eight" id="city" />
91
91
  </div>
92
92
  </div>
93
93
  <div class="row">
94
94
  <div class="two mobile-one columns">
95
- <label class="right inline">ZIP:</label>
95
+ <label class="right inline" for="zip">ZIP:</label>
96
96
  </div>
97
97
  <div class="ten mobile-three columns">
98
- <input type="text" class="three" />
98
+ <input type="text" class="three" id="zip" />
99
99
  </div>
100
100
  </div>
101
101
  </form>
@@ -116,11 +116,11 @@
116
116
 
117
117
  <legend>Fieldset Name</legend>
118
118
 
119
- <label>This is a label.</label>
120
- <input type="text" placeholder="Standard Input" />
119
+ <label for="standard_input_2">This is a label.</label>
120
+ <input type="text" placeholder="Standard Input" id="standard_input_2"/>
121
121
 
122
- <label>Address</label>
123
- <input type="text" />
122
+ <label for="address_2">Address</label>
123
+ <input type="text" id="address_2" />
124
124
  <input type="text" class="six" />
125
125
 
126
126
  </fieldset>
@@ -138,7 +138,7 @@
138
138
  </div>
139
139
  <br>
140
140
  <div class="eight columns">
141
- <label>Input with a prefix character</label>
141
+ <label for="input_prefix">Input with a prefix character</label>
142
142
  <div class="row">
143
143
  <div class="eight columns">
144
144
  <div class="row collapse">
@@ -146,17 +146,17 @@
146
146
  <span class="prefix">#</span>
147
147
  </div>
148
148
  <div class="ten mobile-three columns">
149
- <input type="text" />
149
+ <input type="text" id="input_prefix" />
150
150
  </div>
151
151
  </div>
152
152
  </div>
153
153
  </div>
154
- <label>Input with a postfix label</label>
154
+ <label for="input_postfix">Input with a postfix label</label>
155
155
  <div class="row">
156
156
  <div class="eight columns">
157
157
  <div class="row collapse">
158
158
  <div class="nine mobile-three columns">
159
- <input type="text" />
159
+ <input type="text" id="input_postfix" />
160
160
  </div>
161
161
  <div class="three mobile-one columns">
162
162
  <span class="postfix">.com</span>
@@ -164,12 +164,12 @@
164
164
  </div>
165
165
  </div>
166
166
  </div>
167
- <label>Input with a postfix action (button)</label>
167
+ <label for="input_postfix_button">Input with a postfix action (button)</label>
168
168
  <div class="row">
169
169
  <div class="eight columns">
170
170
  <div class="row collapse">
171
171
  <div class="eight mobile-three columns">
172
- <input type="text" />
172
+ <input type="text" id="input_postfix_button" />
173
173
  </div>
174
174
  <div class="four mobile-one columns">
175
175
  <a class="button expand postfix">Search</a>
@@ -192,14 +192,14 @@
192
192
  <div class="eight columns">
193
193
  <div class="row">
194
194
  <div class="six columns">
195
- <label class="error">Field with Error</label>
196
- <input type="text" class="error" />
195
+ <label class="error" for="error">Field with Error</label>
196
+ <input type="text" class="error" id="error" />
197
197
  <small class="error">Invalid entry</small>
198
198
  </div>
199
199
 
200
200
  <div class="six columns end error">
201
- <label>Another Error</label>
202
- <input type="text" />
201
+ <label for="error_2">Another Error</label>
202
+ <input type="text" id="error_2" />
203
203
  <small>Invalid entry</small>
204
204
  </div>
205
205
  </div>
@@ -219,26 +219,26 @@
219
219
  <div class="row">
220
220
  <div class="five columns">
221
221
 
222
- <label>Name</label>
223
- <input type="text" />
222
+ <label for="name">Name</label>
223
+ <input type="text" id="name" />
224
224
 
225
- <label>Occupation</label>
226
- <input type="text" />
225
+ <label for="occupation">Occupation</label>
226
+ <input type="text" id="occupation" />
227
227
 
228
- <label>Twitter</label>
228
+ <label for="twitter">Twitter</label>
229
229
  <div class="row collapse">
230
230
  <div class="two mobile-one columns">
231
231
  <span class="prefix">@</span>
232
232
  </div>
233
233
  <div class="ten mobile-three columns">
234
- <input type="text" placeholder="foundationzurb" />
234
+ <input type="text" placeholder="foundationzurb" id="twitter" />
235
235
  </div>
236
236
  </div>
237
237
 
238
- <label>URL</label>
238
+ <label for="url">URL</label>
239
239
  <div class="row collapse">
240
240
  <div class="nine mobile-three columns">
241
- <input type="text" placeholder="foundation.zurb" />
241
+ <input type="text" placeholder="foundation.zurb" id="url"/>
242
242
  </div>
243
243
  <div class="three mobile-one columns">
244
244
  <span class="postfix">.com</span>
@@ -249,27 +249,27 @@
249
249
 
250
250
  <div class="five columns">
251
251
 
252
- <label class="error">Field with Error</label>
253
- <input type="text" class="error" />
252
+ <label class="error" for="error_3">Field with Error</label>
253
+ <input type="text" class="error" id="error_3" />
254
254
  <small class="error">Invalid entry</small>
255
255
 
256
256
  <div class="error">
257
- <label>Another Error</label>
258
- <input type="text" />
257
+ <label for="error_4">Another Error</label>
258
+ <input type="text" id="error_4" />
259
259
  <small>Invalid entry</small>
260
260
  </div>
261
261
 
262
262
  </div>
263
263
  </div>
264
264
 
265
- <label>Address</label>
266
- <input type="text" placeholder="Street (e.g. 123 Awesome St.)" />
265
+ <label for="address_3">Address</label>
266
+ <input type="text" placeholder="Street (e.g. 123 Awesome St.)" id="address_3" />
267
267
 
268
268
  <div class="row">
269
269
  <div class="six columns">
270
270
  <input type="text" placeholder="City" />
271
271
  </div>
272
- <div class="two columns" />
272
+ <div class="two columns">
273
273
  <select>
274
274
  <option>CA</option>
275
275
  </select>
data/test/reveal.html CHANGED
@@ -33,7 +33,7 @@
33
33
  <h4 class="subheader">Modal dialogs, or pop-up windows, are handy for prototyping and production. Foundation includes Reveal our jQuery modal plugin, to make this easy for you.</h4>
34
34
 
35
35
  <p>
36
- <a href="#" data-reveal-id="exampleModal" class="radius button">
36
+ <a href="#" class="radius button">
37
37
  Example Modal&hellip;
38
38
  </a>
39
39
  </p>
@@ -85,7 +85,7 @@
85
85
  <script src="../vendor/assets/javascripts/foundation/jquery.foundation.orbit.js"></script>
86
86
  <script src="../vendor/assets/javascripts/foundation/app.js"></script>
87
87
  <script type="text/javascript">
88
- // Page-Specific JavaScript Goes Here
88
+ // Page-Specific JavaScript Goes Here
89
89
  </script>
90
90
  </body>
91
91
  </html>
@@ -25,6 +25,7 @@
25
25
 
26
26
  // Font Settings
27
27
 
28
+ // $fontSmoothing: antialiased;
28
29
  // $headerFontFamily: "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;
29
30
  // $headerFontWeight: bold;
30
31
  // $headerFontStyle: normal;
@@ -46,4 +46,5 @@
46
46
  // @import "foundation/components/modules/reveal";
47
47
  // @import "foundation/components/modules/offcanvas";
48
48
 
49
- body { font-size: ms(-3); }
49
+ // Media Queries Overrides
50
+ // @import "foundation/components/modules/mqueries";
@@ -17,7 +17,7 @@
17
17
  $.fn.foundationMagellan ? $doc.foundationMagellan() : null;
18
18
  $.fn.foundationClearing ? $doc.foundationClearing() : null;
19
19
 
20
- $('input, textarea').placeholder();
20
+ $.fn.placeholder ? $('input, textarea').placeholder() : null;
21
21
  });
22
22
 
23
23
  // UNCOMMENT THE LINE YOU WANT BELOW IF YOU WANT IE8 SUPPORT AND ARE USING .block-grids
@@ -19,13 +19,18 @@
19
19
  });
20
20
  } else {
21
21
  $('.accordion li', this).on('click.fndtn', function () {
22
- var p = $(this).parent(),
22
+ var li = $(this),
23
+ p = $(this).parent(),
23
24
  flyout = $(this).children('.content').first();
24
25
 
25
- $('.content', p).not(flyout).hide().parent('li').removeClass('active'); //changed this
26
- flyout.show(0, function () {
27
- flyout.parent('li').addClass('active');
28
- });
26
+ if (li.hasClass('active')) {
27
+ p.find('li').removeClass('active').end().find('.content').hide();
28
+ } else {
29
+ $('.content', p).not(flyout).hide().parent('li').removeClass('active'); //changed this
30
+ flyout.show(0, function () {
31
+ flyout.parent('li').addClass('active');
32
+ });
33
+ }
29
34
  });
30
35
  }
31
36
 
@@ -30,7 +30,11 @@
30
30
  var $el = $(this),
31
31
  button = $el.closest('.button.dropdown'),
32
32
  dropdown = $('> ul', button);
33
- e.preventDefault();
33
+
34
+ // If the click is registered on an actual link then do not preventDefault which stops the browser from following the link
35
+ if (e.target.nodeName !== "A"){
36
+ e.preventDefault();
37
+ }
34
38
 
35
39
  // close other dropdowns
36
40
  closeDropdowns(config.dropdownAsToggle ? dropdown : '');
@@ -44,6 +48,7 @@
44
48
 
45
49
  // close all dropdowns and deactivate all buttons
46
50
  $doc.on('click.fndtn', 'body, html', function (e) {
51
+ if (undefined == e.originalEvent) { return; }
47
52
  // check original target instead of stopping event propagation to play nice with other events
48
53
  if (!$(e.originalEvent.target).is('.button.dropdown:not(.split), .button.dropdown.split span')) {
49
54
  closeDropdowns();
@@ -18,6 +18,7 @@
18
18
  '<p class="clearing-caption"></p><a href="#" class="clearing-main-left"></a>' +
19
19
  '<a href="#" class="clearing-main-right"></a></div>'
20
20
  },
21
+ initialized : false,
21
22
  locked : false
22
23
  },
23
24
 
@@ -43,7 +44,7 @@
43
44
  // if the gallery hasn't been built yet...build it
44
45
  methods.assemble($el.find('li'));
45
46
 
46
- methods.events();
47
+ if (!defaults.initialized) methods.events();
47
48
 
48
49
  }
49
50
  });
@@ -54,10 +55,15 @@
54
55
 
55
56
  doc.on('click.fndtn.clearing', 'ul[data-clearing] li', function (e, current, target) {
56
57
  var current = current || $(this),
57
- target = target || current;
58
+ target = target || current,
59
+ settings = current.parent().data('fndtn.clearing.settings');
58
60
 
59
61
  e.preventDefault();
60
62
 
63
+ if (!settings) {
64
+ current.parent().foundationClearing();
65
+ }
66
+
61
67
  // set current and target to the clicked li if not otherwise defined.
62
68
  methods.open($(e.target), current, target);
63
69
  methods.update_paddles(target);
@@ -85,7 +91,7 @@
85
91
  methods.go(clearing, 'prev');
86
92
  });
87
93
 
88
- doc.on('click.fndtn.clearing', 'a.clearing-close, div.clearing-blackout', function (e) {
94
+ doc.on('click.fndtn.clearing', 'a.clearing-close, div.clearing-blackout, div.visible-img', function (e) {
89
95
  var root = (function (target) {
90
96
  if (/blackout/.test(target.selector)) {
91
97
  return target;
@@ -122,6 +128,10 @@
122
128
  if (e.which === 37) {
123
129
  methods.go(clearing, 'prev');
124
130
  }
131
+
132
+ if (e.which === 27) {
133
+ $('a.clearing-close').trigger('click');
134
+ }
125
135
  });
126
136
 
127
137
  doc.on('movestart', function(e) {
@@ -144,9 +154,11 @@
144
154
  var clearing = $('.clearing-blackout').find('ul[data-clearing]');
145
155
  methods.go(clearing, 'prev');
146
156
  });
157
+
158
+ defaults.initialized = true;
147
159
  },
148
160
 
149
- assemble : function ($li, target) {
161
+ assemble : function ($li) {
150
162
  var $el = $li.parent(),
151
163
  settings = $el.data('fndtn.clearing.settings'),
152
164
  grid = $el.detach(),
@@ -376,11 +376,11 @@
376
376
 
377
377
  var toggleRadio = function($element) {
378
378
  var $input = $element.prev(),
379
+ $form = $input.closest('form.custom'),
379
380
  input = $input[0];
380
381
 
381
382
  if (false === $input.is(':disabled')) {
382
-
383
- $('input:radio[name="' + $input.attr('name') + '"]').next().not($element).removeClass('checked');
383
+ $form.find('input:radio[name="' + $input.attr('name') + '"]').next().not($element).removeClass('checked');
384
384
  if ( !$element.hasClass('checked') ) {
385
385
  $element.toggleClass('checked');
386
386
  }
@@ -1,5 +1,5 @@
1
1
  /*
2
- * jQuery Foundation Joyride Plugin 2.0.1
2
+ * jQuery Foundation Joyride Plugin 2.0.2
3
3
  * http://foundation.zurb.com
4
4
  * Copyright 2012, ZURB
5
5
  * Free to use under the MIT license.
@@ -56,7 +56,7 @@
56
56
  settings.$window = $(window);
57
57
  settings.$content_el = $(this);
58
58
  settings.body_offset = $(settings.tipContainer).position();
59
- settings.$tip_content = $('li', settings.$content_el);
59
+ settings.$tip_content = $('> li', settings.$content_el);
60
60
  settings.paused = false;
61
61
  settings.attempts = 0;
62
62
 
@@ -109,12 +109,12 @@
109
109
 
110
110
  });
111
111
 
112
- $('.joyride-close-tip').on('click.joyride', function (e) {
112
+ settings.$document.on('click.joyride', '.joyride-close-tip', function (e) {
113
113
  e.preventDefault();
114
114
  methods.end();
115
115
  });
116
116
 
117
- settings.$window.on('resize.joyride', function (e) {
117
+ settings.$window.bind('resize.joyride', function (e) {
118
118
  if (methods.is_phone()) {
119
119
  methods.pos_phone();
120
120
  } else {
@@ -537,8 +537,8 @@
537
537
 
538
538
  corners : function (el) {
539
539
  var w = settings.$window,
540
- right = w.outerWidth() + w.scrollLeft(),
541
- bottom = w.outerWidth() + w.scrollTop();
540
+ right = w.width() + w.scrollLeft(),
541
+ bottom = w.width() + w.scrollTop();
542
542
 
543
543
  return [
544
544
  el.offset().top <= w.scrollTop(),
@@ -597,13 +597,13 @@
597
597
  // define on() and off() for older jQuery
598
598
  if (!$.isFunction($.fn.on)) {
599
599
 
600
- $.fn.on = function(types, sel, fn) {
600
+ $.fn.on = function (types, sel, fn) {
601
601
 
602
602
  return this.delegate(sel, types, fn);
603
603
 
604
604
  };
605
605
 
606
- $.fn.off = function(types, sel, fn) {
606
+ $.fn.off = function (types, sel, fn) {
607
607
 
608
608
  return this.undelegate(sel, types, fn);
609
609
 
@@ -12,8 +12,9 @@
12
12
  'use strict';
13
13
 
14
14
  $.fn.foundationMagellan = function(options) {
15
- var defaults = {
16
- threshold: 25,
15
+ var $fixedMagellan = $('[data-magellan-expedition=fixed]'),
16
+ defaults = {
17
+ threshold: ($fixedMagellan.length) ? $fixedMagellan.outerHeight(true) : 25,
17
18
  activeClass: 'active'
18
19
  },
19
20
 
@@ -37,21 +38,21 @@
37
38
  .addClass($expedition.attr('data-magellan-active-class') || options.activeClass);
38
39
 
39
40
  // Update fixed position
40
- $('[data-magellan-expedition=fixed]').on('magellan.update-position', function(){
41
+ $fixedMagellan.on('magellan.update-position', function(){
41
42
  var $el = $(this);
42
43
  $el.data("magellan-fixed-position","");
43
44
  $el.data("magellan-top-offset", "");
44
45
  });
45
46
 
46
- $('[data-magellan-expedition=fixed]').trigger('magellan.update-position');
47
+ $fixedMagellan.trigger('magellan.update-position');
47
48
 
48
49
  $(window).on('resize.magellan', function() {
49
- $('[data-magellan-expedition=fixed]').trigger('magellan.update-position');
50
+ $fixedMagellan.trigger('magellan.update-position');
50
51
  });
51
52
 
52
53
  $(window).on('scroll.magellan', function() {
53
54
  var windowScrollTop = $(window).scrollTop();
54
- $('[data-magellan-expedition=fixed]').each(function() {
55
+ $fixedMagellan.each(function() {
55
56
  var $expedition = $(this);
56
57
  if ($expedition.data("magellan-top-offset") === "") {
57
58
  $expedition.data("magellan-top-offset", $expedition.offset().top);
@@ -1,43 +1,56 @@
1
- ;(function ($, window, undefined) {
1
+ ;(function ($, window, document, undefined) {
2
2
  'use strict';
3
3
 
4
- $.fn.foundationTabs = function (options) {
5
-
6
- var settings = $.extend({
7
- callback: $.noop
8
- }, options);
9
-
10
- var activateTab = function ($tab) {
11
- var $activeTab = $tab.closest('dl, ul').find('.active'),
12
- target = $tab.children('a').attr("href"),
13
- hasHash = /^#/.test(target),
14
- contentLocation = '';
15
-
16
- if (hasHash) {
17
- contentLocation = target + 'Tab';
18
-
19
- // Strip off the current url that IE adds
20
- contentLocation = contentLocation.replace(/^.+#/, '#');
21
-
22
- //Show Tab Content
23
- $(contentLocation).closest('.tabs-content').children('li').removeClass('active').hide();
24
- $(contentLocation).css('display', 'block').addClass('active');
4
+ var settings = {
5
+ callback: $.noop,
6
+ init: false
7
+ },
8
+
9
+ methods = {
10
+ init : function (options) {
11
+ settings = $.extend({}, options, settings);
12
+
13
+ return this.each(function () {
14
+ if (!settings.init) methods.events();
15
+ });
16
+ },
17
+
18
+ events : function () {
19
+ $(document).on('click.fndtn', '.tabs a', function (e) {
20
+ methods.set_tab($(this).parent('dd, li'), e);
21
+ });
22
+
23
+ settings.init = true;
24
+ },
25
+
26
+ set_tab : function ($tab, e) {
27
+ var $activeTab = $tab.closest('dl, ul').find('.active'),
28
+ target = $tab.children('a').attr("href"),
29
+ hasHash = /^#/.test(target),
30
+ $content = $(target + 'Tab');
31
+
32
+ if (hasHash && $content.length > 0) {
33
+ // Show tab content
34
+ e.preventDefault();
35
+ $content.closest('.tabs-content').children('li').removeClass('active').hide();
36
+ $content.css('display', 'block').addClass('active');
37
+ }
38
+
39
+ // Make active tab
40
+ $activeTab.removeClass('active');
41
+ $tab.addClass('active');
42
+
43
+ settings.callback();
44
+ }
25
45
  }
26
46
 
27
- //Make Tab Active
28
- $activeTab.removeClass('active');
29
- $tab.addClass('active');
30
- };
31
-
32
- $(document).on('click.fndtn', '.tabs a', function (event){
33
- activateTab($(this).parent('dd, li'));
34
- });
35
-
36
- if (window.location.hash) {
37
- activateTab($('a[href="' + window.location.hash + '"]').parent('dd, li'));
38
- settings.callback();
47
+ $.fn.foundationTabs = function (method) {
48
+ if (methods[method]) {
49
+ return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
50
+ } else if (typeof method === 'object' || !method) {
51
+ return methods.init.apply(this, arguments);
52
+ } else {
53
+ $.error('Method ' + method + ' does not exist on jQuery.foundationTooltips');
39
54
  }
40
-
41
55
  };
42
-
43
- })(jQuery, this);
56
+ }(jQuery, this, this.document));
@@ -1,5 +1,5 @@
1
1
  /*
2
- * jQuery Foundation Top Bar 2.0.1
2
+ * jQuery Foundation Top Bar 2.0.2
3
3
  * http://foundation.zurb.com
4
4
  * Copyright 2012, ZURB
5
5
  * Free to use under the MIT license.
@@ -20,7 +20,8 @@
20
20
  return this.each(function () {
21
21
  settings = $.extend(settings, options);
22
22
  settings.$w = $(window),
23
- settings.$topbar = $('nav.top-bar');
23
+ settings.$topbar = $('nav.top-bar'),
24
+ settings.$section = settings.$topbar.find('section'),
24
25
  settings.$titlebar = settings.$topbar.children('ul:first');
25
26
  var breakpoint = $("<div class='top-bar-js-breakpoint'/>").appendTo("body");
26
27
  settings.breakPoint = breakpoint.width();
@@ -46,6 +47,13 @@
46
47
  settings.$topbar.toggleClass('expanded');
47
48
  settings.$topbar.css('min-height', '');
48
49
  }
50
+
51
+ if (!settings.$topbar.hasClass('expanded')) {
52
+ settings.$section.css({left: '0%'});
53
+ settings.$section.find('>.name').css({left: '100%'});
54
+ settings.$section.find('li.moved').removeClass('moved');
55
+ settings.index = 0;
56
+ }
49
57
  });
50
58
 
51
59
  // Show the Dropdown Levels on Click
@@ -57,14 +65,13 @@
57
65
  var $this = $(this),
58
66
  $selectedLi = $this.closest('li'),
59
67
  $nextLevelUl = $selectedLi.children('ul'),
60
- $section = $this.closest('section'),
61
68
  $nextLevelUlHeight = 0,
62
69
  $largestUl;
63
70
 
64
71
  settings.index += 1;
65
72
  $selectedLi.addClass('moved');
66
- $section.css({'left': -(100 * settings.index) + '%'});
67
- $section.find('>.name').css({'left': 100 * settings.index + '%'});
73
+ settings.$section.css({left: -(100 * settings.index) + '%'});
74
+ settings.$section.find('>.name').css({left: 100 * settings.index + '%'});
68
75
 
69
76
  $this.siblings('ul').height(settings.height + settings.$titlebar.outerHeight(true));
70
77
  settings.$topbar.css('min-height', settings.height + settings.$titlebar.outerHeight(true) * 2)
@@ -83,12 +90,11 @@
83
90
 
84
91
  var $this = $(this),
85
92
  $movedLi = $this.closest('li.moved'),
86
- $section = $this.closest('section'),
87
93
  $previousLevelUl = $movedLi.parent();
88
94
 
89
95
  settings.index -= 1;
90
- $section.css({'left': -(100 * settings.index) + '%'});
91
- $section.find('>.name').css({'left': 100 * settings.index + '%'});
96
+ settings.$section.css({left: -(100 * settings.index) + '%'});
97
+ settings.$section.find('>.name').css({'left': 100 * settings.index + '%'});
92
98
 
93
99
  if (settings.index === 0) {
94
100
  settings.$topbar.css('min-height', 0);
@@ -104,12 +110,10 @@
104
110
  return settings.$w.width() < settings.breakPoint;
105
111
  },
106
112
  assemble : function () {
107
- var $section = settings.$topbar.children('section');
108
-
109
113
  // Pull element out of the DOM for manipulation
110
- $section.detach();
114
+ settings.$section.detach();
111
115
 
112
- $section.find('.has-dropdown>a').each(function () {
116
+ settings.$section.find('.has-dropdown>a').each(function () {
113
117
  var $link = $(this),
114
118
  $dropdown = $link.siblings('.dropdown'),
115
119
  $titleLi = $('<li class="title back js-generated"><h5><a href="#"></a></h5></li>');
@@ -120,7 +124,7 @@
120
124
  });
121
125
 
122
126
  // Put element back in the DOM
123
- $section.appendTo(settings.$topbar);
127
+ settings.$section.appendTo(settings.$topbar);
124
128
  },
125
129
  largestUL : function () {
126
130
  var uls = settings.$topbar.find('section ul ul'),
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zurb-foundation
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.2.0
4
+ version: 3.2.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-10-26 00:00:00.000000000 Z
12
+ date: 2012-11-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: compass
@@ -213,7 +213,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
213
213
  version: '0'
214
214
  segments:
215
215
  - 0
216
- hash: -3236275237627838417
216
+ hash: 1729638945161195289
217
217
  required_rubygems_version: !ruby/object:Gem::Requirement
218
218
  none: false
219
219
  requirements:
@@ -222,7 +222,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
222
222
  version: '0'
223
223
  segments:
224
224
  - 0
225
- hash: -3236275237627838417
225
+ hash: 1729638945161195289
226
226
  requirements: []
227
227
  rubyforge_project:
228
228
  rubygems_version: 1.8.23