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.
- data/CHANGELOG.md +15 -0
- data/README.md +1 -0
- data/lib/foundation/version.rb +1 -1
- data/scss/foundation/_settings.scss +1 -0
- data/scss/foundation/common/_globals.scss +3 -2
- data/scss/foundation/components/modules/_clearing.scss +1 -1
- data/scss/foundation/components/modules/_joyride.scss +1 -1
- data/scss/foundation/components/modules/_mqueries.scss +5 -3
- data/scss/foundation/components/modules/_topbar.scss +4 -2
- data/scss/foundation/components/modules/_ui.scss +3 -3
- data/scss/foundation/mixins/_clearfix.scss +2 -2
- data/scss/foundation/mixins/_semantic-grid.scss +10 -10
- data/templates/project/index.html +1 -1
- data/templates/project/scss/_settings.scss +1 -0
- data/templates/project/scss/app.scss +3 -0
- data/test/clearing.html +2 -0
- data/test/elements.html +2 -2
- data/test/forms.html +39 -39
- data/test/reveal.html +2 -2
- data/test/scss/_settings.scss +1 -0
- data/test/scss/styles.scss +2 -1
- data/vendor/assets/javascripts/foundation/app.js +1 -1
- data/vendor/assets/javascripts/foundation/jquery.foundation.accordion.js +10 -5
- data/vendor/assets/javascripts/foundation/jquery.foundation.buttons.js +6 -1
- data/vendor/assets/javascripts/foundation/jquery.foundation.clearing.js +16 -4
- data/vendor/assets/javascripts/foundation/jquery.foundation.forms.js +2 -2
- data/vendor/assets/javascripts/foundation/jquery.foundation.joyride.js +8 -8
- data/vendor/assets/javascripts/foundation/jquery.foundation.magellan.js +7 -6
- data/vendor/assets/javascripts/foundation/jquery.foundation.tabs.js +50 -37
- data/vendor/assets/javascripts/foundation/jquery.foundation.topbar.js +17 -13
- 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
|
|
data/lib/foundation/version.rb
CHANGED
@@ -2,12 +2,13 @@
|
|
2
2
|
|
3
3
|
/* Global Reset & Standards ---------------------- */
|
4
4
|
|
5
|
-
|
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:
|
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; }
|
@@ -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 /
|
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:
|
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
|
-
&:
|
48
|
-
|
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
|
-
|
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() {
|
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 {
|
59
|
+
%row-i-base { width: auto; max-width: none; min-width: 0; }
|
60
60
|
%row-i { @include innerRow(); }
|
61
61
|
|
62
|
-
%c-base {
|
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
|
-
|
11
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
12
12
|
|
13
13
|
<title>Welcome to Foundation</title>
|
14
14
|
|
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
|
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="#"
|
36
|
+
<a href="#" class="radius button">
|
37
37
|
Example Modal…
|
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
|
-
|
88
|
+
// Page-Specific JavaScript Goes Here
|
89
89
|
</script>
|
90
90
|
</body>
|
91
91
|
</html>
|
data/test/scss/_settings.scss
CHANGED
data/test/scss/styles.scss
CHANGED
@@ -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
|
22
|
+
var li = $(this),
|
23
|
+
p = $(this).parent(),
|
23
24
|
flyout = $(this).children('.content').first();
|
24
25
|
|
25
|
-
|
26
|
-
|
27
|
-
|
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
|
-
|
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
|
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.
|
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
|
-
|
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.
|
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.
|
541
|
-
bottom = w.
|
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
|
16
|
-
|
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
|
-
$
|
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
|
-
$
|
47
|
+
$fixedMagellan.trigger('magellan.update-position');
|
47
48
|
|
48
49
|
$(window).on('resize.magellan', function() {
|
49
|
-
$
|
50
|
+
$fixedMagellan.trigger('magellan.update-position');
|
50
51
|
});
|
51
52
|
|
52
53
|
$(window).on('scroll.magellan', function() {
|
53
54
|
var windowScrollTop = $(window).scrollTop();
|
54
|
-
$
|
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
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
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
|
-
|
28
|
-
|
29
|
-
|
30
|
-
}
|
31
|
-
|
32
|
-
|
33
|
-
|
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.
|
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
|
-
|
67
|
-
|
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
|
-
|
91
|
-
|
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
|
-
|
114
|
+
settings.$section.detach();
|
111
115
|
|
112
|
-
|
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
|
-
|
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.
|
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-
|
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:
|
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:
|
225
|
+
hash: 1729638945161195289
|
226
226
|
requirements: []
|
227
227
|
rubyforge_project:
|
228
228
|
rubygems_version: 1.8.23
|