archetype 0.0.1.pre.10 → 0.0.1.pre.11
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/archetype.rb +0 -4
- data/lib/archetype/functions/hash.rb +12 -28
- data/lib/archetype/functions/helpers.rb +13 -46
- data/lib/archetype/functions/styleguide_memoizer.rb +1 -9
- data/lib/archetype/sass_extensions/functions/lists.rb +42 -36
- data/lib/archetype/sass_extensions/functions/locale.rb +16 -32
- data/lib/archetype/sass_extensions/functions/styleguide.rb +39 -121
- data/lib/archetype/sass_extensions/functions/ui.rb +2 -3
- data/lib/archetype/sass_extensions/functions/version.rb +6 -11
- data/lib/archetype/sass_extensions/monkey_patches.rb +1 -1
- data/lib/archetype/version.rb +1 -1
- data/stylesheets/archetype/_base.scss +2 -7
- data/stylesheets/archetype/_config.scss +1 -8
- data/stylesheets/archetype/_hacks.scss +17 -51
- data/stylesheets/archetype/_ui.scss +5 -16
- data/stylesheets/archetype/base/_h5bp.scss +12 -12
- data/stylesheets/archetype/base/_normalize.scss +139 -178
- data/stylesheets/archetype/grid/_grid.scss +13 -13
- data/stylesheets/archetype/styleguide/components/_buttons.scss +0 -1
- data/stylesheets/archetype/util/_debug.scss +4 -4
- data/stylesheets/archetype/util/_lists.scss +1 -1
- data/stylesheets/archetype/util/_misc.scss +1 -1
- data/stylesheets/archetype/util/_rtl.scss +1 -1
- data/stylesheets/archetype/util/_spacing.scss +6 -6
- data/stylesheets/archetype/util/_styles.scss +10 -27
- data/stylesheets/archetype/util/_targeting.scss +1 -1
- data/test/fixtures/stylesheets/archetype/config.rb +0 -2
- data/test/fixtures/stylesheets/archetype/saved/styleguide/buttons.css +2027 -0
- data/test/fixtures/stylesheets/archetype/saved/styleguide/fallback_styles.css +9 -0
- data/test/fixtures/stylesheets/archetype/source/styleguide/buttons.scss +1 -5
- data/test/fixtures/stylesheets/archetype/source/styleguide/fallback_styles.scss +2 -1
- data/test/fixtures/stylesheets/archetype/source/styleguide/nested_styleguides.scss +1 -1
- data/test/fixtures/stylesheets/archetype/source/styleguide/selective_state.scss +1 -1
- data/test/fixtures/stylesheets/archetype/source/ui/glyph_icon.scss +0 -30
- data/test/fixtures/stylesheets/archetype/source/utilities/custom_output_styler.scss +3 -4
- data/test/fixtures/stylesheets/archetype/source/utilities/targeting/target-browser.scss +1 -8
- data/test/helpers/test_case.rb +2 -2
- data/test/integrations/archetype_test.rb +1 -3
- data/test/units/sass_extensions_test.rb +25 -18
- metadata +6 -29
- data/lib/archetype/actions/help.rb +0 -16
- data/lib/archetype/actions/theme.rb +0 -73
- data/lib/archetype/executor.rb +0 -27
- data/test/fixtures/stylesheets/archetype/saved/base.css +0 -349
- data/test/fixtures/stylesheets/archetype/saved/hacks/transparent_focusable.css +0 -4
- data/test/fixtures/stylesheets/archetype/saved/locale.css +0 -23
- data/test/fixtures/stylesheets/archetype/source/base.scss +0 -3
- data/test/fixtures/stylesheets/archetype/source/hacks/transparent_focusable.scss +0 -5
- data/test/fixtures/stylesheets/archetype/source/locale.scss +0 -43
- data/test/fixtures/stylesheets/archetype/source/styleguide/alerts.scss +0 -21
- data/test/fixtures/stylesheets/archetype/source/styleguide/drop.scss +0 -101
- data/test/fixtures/stylesheets/archetype/source/styleguide/extend.scss +0 -24
- data/test/fixtures/stylesheets/archetype/source/styleguide/invalid_structures.scss +0 -85
- data/test/fixtures/stylesheets/archetype/source/styleguide/multi_value.scss +0 -18
- data/test/fixtures/stylesheets/archetype/source/utilities/associative.scss +0 -24
@@ -18,11 +18,10 @@ module Archetype::SassExtensions::UI
|
|
18
18
|
# - {String} the unique string
|
19
19
|
#
|
20
20
|
def unique(prefix = '')
|
21
|
-
prefix = helpers.to_str(prefix
|
21
|
+
prefix = helpers.to_str(prefix).gsub(/\A"|"\Z/, '')
|
22
22
|
prefix = '.' if prefix == 'class'
|
23
23
|
prefix = '#' if prefix == 'id'
|
24
|
-
|
25
|
-
return Sass::Script::String.new("#{prefix}archetype-uid-#{suffix}")
|
24
|
+
return Sass::Script::String.new("#{prefix}archetype-uid-#{uid}")
|
26
25
|
end
|
27
26
|
|
28
27
|
#
|
@@ -8,7 +8,7 @@ require 'sass/version'
|
|
8
8
|
#
|
9
9
|
module Archetype::SassExtensions::Version
|
10
10
|
# :stopdoc:
|
11
|
-
COMPARATOR_PATTERN = /(
|
11
|
+
COMPARATOR_PATTERN = /([neglt]+|[><=!]+)/
|
12
12
|
VERSION_PATTERN = /\d+(\.\d+)*(\.[x|\*])?/
|
13
13
|
# :startdoc:
|
14
14
|
|
@@ -21,15 +21,10 @@ module Archetype::SassExtensions::Version
|
|
21
21
|
# - {String|Boolean} if no test or test is just a lookup of a framework, it returns the version of that framework, otherwise it returns the result of the test
|
22
22
|
#
|
23
23
|
def archetype_version(test = nil)
|
24
|
-
test = test.nil? ? 'archetype' : helpers.to_str(test
|
25
|
-
lib =
|
26
|
-
if test.include?('compass')
|
27
|
-
|
28
|
-
elsif test.include?('sass')
|
29
|
-
lib = Sass::VERSION
|
30
|
-
else
|
31
|
-
lib = Archetype::VERSION
|
32
|
-
end
|
24
|
+
test = test.nil? ? 'archetype' : helpers.to_str(test).gsub(/\A"|"\Z/, '').downcase
|
25
|
+
lib = Archetype::VERSION
|
26
|
+
lib = Compass::VERSION if test.include?('compass')
|
27
|
+
lib = Sass::VERSION if test.include?('sass')
|
33
28
|
# strip off any non-official versioning (e.g. pre/alpha/rc)
|
34
29
|
lib = lib.match(VERSION_PATTERN)[0]
|
35
30
|
result = compare_version(lib, test.match(VERSION_PATTERN), test.match(COMPARATOR_PATTERN))
|
@@ -60,7 +55,7 @@ private
|
|
60
55
|
# check for wild cards
|
61
56
|
wild = version.index('x')
|
62
57
|
# check the comparison
|
63
|
-
comparator = (
|
58
|
+
comparator = (comparator || [])[0] || 'eq'
|
64
59
|
eq = comparator =~ /(e|=)/
|
65
60
|
lt = comparator =~ /(l|<)/
|
66
61
|
gt = comparator =~ /(g|>)/
|
data/lib/archetype/version.rb
CHANGED
@@ -2,7 +2,6 @@
|
|
2
2
|
@import "base/normalize";
|
3
3
|
@import "base/reset";
|
4
4
|
@import "base/hybrid";
|
5
|
-
@import "base/h5bp";
|
6
5
|
|
7
6
|
// protect against multiple resets
|
8
7
|
$RESET_INIT: false !default;
|
@@ -12,8 +11,8 @@ $RESET_INIT: false !default;
|
|
12
11
|
// sets the base styles for the page (e.g. reset or normalize)
|
13
12
|
// @mixin base
|
14
13
|
// @param $exclude {List} the list of styles to exclude @see _normalize.scss and _reset.scss
|
15
|
-
// @param $method {String} reset method [reset|normalize|
|
16
|
-
// @param $force {
|
14
|
+
// @param $method {String} reset method [reset|normalize|hybrid]
|
15
|
+
// @param $force {Bool} force reset to invoke; by default base() can only be invoked once, to re-invoke must pass in $force: true
|
17
16
|
@mixin base($exclude: $CONFIG_RESET_EXCLUDES, $method: $CONFIG_RESET_METHOD, $force: false) {
|
18
17
|
@if not $RESET_INIT or $force {
|
19
18
|
$RESET_INIT: true;
|
@@ -21,10 +20,6 @@ $RESET_INIT: false !default;
|
|
21
20
|
@if $method == normalize {
|
22
21
|
@include base-normalize($exclude: $exclude);
|
23
22
|
}
|
24
|
-
// html5 boiler plate
|
25
|
-
@else if $method == h5bp {
|
26
|
-
@include base-h5bp($exclude: $exclude);
|
27
|
-
}
|
28
23
|
// hyrbid reset (reset + some normalize)
|
29
24
|
@else if $method == hybrid {
|
30
25
|
@include base-hybrid($exclude: $exclude);
|
@@ -40,7 +40,6 @@ $CONTENT_PLACEHOLDER: '\0020' !default;
|
|
40
40
|
$CONFIG_DISABLED_CSS: () !default; // a list of CSS3 features to always disable when using output-style()
|
41
41
|
$CONFIG_GENERATED_TAG_PREFIX: x-archetype !default; // the prefix for the tag name to create when using ie-pseudo method
|
42
42
|
$CONFIG_GENERATED_TAG_CSS: false !default; // styles to apply to the generated tag when using ie-pseudo method (use this as a way to reset styles on these tags)
|
43
|
-
$CONFIG_GENERATED_TAG_INLINE: true !default; // if `true` insert the styles inline on the generated tag, otherwise insert the styles in a unique css rule
|
44
43
|
|
45
44
|
// z-layers
|
46
45
|
$CONFIG_Z_INDEX_BASE: 0 !default; // the default starting layer for z-index calculations
|
@@ -61,7 +60,7 @@ $CONFIG_KEYFRAME_LOADERS: archetype-loader !default;
|
|
61
60
|
$CONFIG_GLYPHS_NAME: FontAwesome !default; // name for the font-face
|
62
61
|
$CONFIG_GLYPHS_VERSION: '0.0.1' !default; // the glyph library version number
|
63
62
|
$CONFIG_GLYPHS_SVG_ID: $CONFIG_GLYPHS_NAME !default;
|
64
|
-
$CONFIG_GLYPHS_BASE_PATH: 'vendor/archetype/fontawesome-webfont' !default; // generic path to all
|
63
|
+
$CONFIG_GLYPHS_BASE_PATH: 'vendor/archetype/fontawesome-webfont' !default; // generic path to all glpyh fonts (sans extensions)
|
65
64
|
$CONFIG_GLYPHS_EOT: '#{$CONFIG_GLYPHS_BASE_PATH}.eot' !default;
|
66
65
|
$CONFIG_GLYPHS_FILES: font-files('#{$CONFIG_GLYPHS_BASE_PATH}.woff', '#{$CONFIG_GLYPHS_BASE_PATH}.ttf', '#{$CONFIG_GLYPHS_BASE_PATH}.svg##{$CONFIG_GLYPHS_SVG_ID}') !default;
|
67
66
|
$CONFIG_GLYPHS_WEIGHT: normal !default; // font-weight for glyphs
|
@@ -381,9 +380,3 @@ $CORE_SAFE_FONTS: (
|
|
381
380
|
); // note that this declaration isn't a `default`, but rather is enforced everytime. this can be modified (via extending $CONFIG_SAFE_FONTS)
|
382
381
|
$CONFIG_SAFE_FONTS: () !default;
|
383
382
|
$CONFIG_SAFE_FONTS: associative-merge($CORE_SAFE_FONTS, $CONFIG_SAFE_FONTS);
|
384
|
-
|
385
|
-
$archetype-glyph-selector: false !default;
|
386
|
-
$archetype-pseudo-selector: false !default;
|
387
|
-
|
388
|
-
$CORE_GLYPH_SELECTOR_VAR: '$archetype-glyph-selector';
|
389
|
-
$CORE_GLYPH_SELECTOR_VAR: '$archetype-pseudo-selector';
|
@@ -34,44 +34,33 @@
|
|
34
34
|
}
|
35
35
|
|
36
36
|
// proxy for ie-pseudo
|
37
|
-
// @mixin
|
38
|
-
// @param
|
39
|
-
// @param
|
40
|
-
// @param
|
41
|
-
// @content
|
37
|
+
// @mixin ie-pseudo-before
|
38
|
+
// @param $styles {String} the styles to apply to the pseudo-element
|
39
|
+
// @param $content {String} the content to insert into the element (similar to css `content` attribute)
|
40
|
+
// @param $name {String} the name of the element
|
42
41
|
@mixin ie-pseudo-before($styles: false, $content: false, $name: '') {
|
43
|
-
@include ie-pseudo($styles, $content, before, $name)
|
44
|
-
@content;
|
45
|
-
}
|
42
|
+
@include ie-pseudo($styles, $content, before, $name);
|
46
43
|
}
|
47
44
|
|
48
45
|
// proxy for ie-pseudo
|
49
|
-
// @mixin
|
50
|
-
// @param
|
51
|
-
// @param
|
52
|
-
// @param
|
53
|
-
// @content
|
46
|
+
// @mixin ie-pseudo-after
|
47
|
+
// @param $styles {String} the styles to apply to the pseudo-element
|
48
|
+
// @param $content {String} the content to insert into the element (similar to css `content` attribute)
|
49
|
+
// @param $name {String} the name of the element
|
54
50
|
@mixin ie-pseudo-after($styles: false, $content: false, $name: '') {
|
55
|
-
@include ie-pseudo($styles, $content, after, $name)
|
56
|
-
@content;
|
57
|
-
}
|
51
|
+
@include ie-pseudo($styles, $content, after, $name);
|
58
52
|
}
|
59
53
|
|
60
54
|
// this creates a one-type executing expression that inserts an element relative to `this` element.
|
61
55
|
// this allows some level of support for :before/:after in IE6/7
|
62
56
|
// inspired by http://nicolasgallagher.com/better-float-containment-in-ie/
|
63
|
-
// @mixin
|
64
|
-
// @param
|
65
|
-
// @param
|
66
|
-
// @param
|
67
|
-
// @param
|
68
|
-
|
69
|
-
// @content
|
70
|
-
@mixin ie-pseudo($styles: false, $content: false, $placement: before, $name: '', $uid: false) {
|
71
|
-
$archetype-pseudo-selector: false;
|
57
|
+
// @mixin ie-pseudo
|
58
|
+
// @param $styles {String} the styles to apply to the pseudo-element
|
59
|
+
// @param $content {String} the content to insert into the element (similar to css `content` attribute)
|
60
|
+
// @param $placement {String} [before|after] simulate :before or :after behavior
|
61
|
+
// @param $name {String} the name of the element
|
62
|
+
@mixin ie-pseudo($styles: false, $content: false, $placement: before, $name: '') {
|
72
63
|
@if $legacy-support-for-ie6 or $legacy-support-for-ie7 {
|
73
|
-
$uid: if($uid, $uid, unique('ie-pseudo-'));
|
74
|
-
$archetype-pseudo-selector: '& ##{$uid}';
|
75
64
|
$this: 't';
|
76
65
|
$cmd: (unquote('#{$this}.el=document.createElement("#{prefixed-tag($name)}")'));
|
77
66
|
$method: if($placement == before, insertBefore, appendChild);
|
@@ -81,7 +70,7 @@
|
|
81
70
|
@if $CONFIG_GENERATED_TAG_CSS {
|
82
71
|
$styles: if($styles and $styles != nil, #{$CONFIG_GENERATED_TAG_CSS}#{$styles}, $CONFIG_GENERATED_TAG_CSS);
|
83
72
|
}
|
84
|
-
@if $styles and $styles != nil
|
73
|
+
@if $styles and $styles != nil {
|
85
74
|
// sets the icon styles on the node
|
86
75
|
$cmd: append($cmd, unquote('#{$this}.el.style.cssText="#{$styles}"'), comma);
|
87
76
|
}
|
@@ -94,28 +83,5 @@
|
|
94
83
|
// this prevents an edge case in IE crashing with an `Operation Aborted` if the node hasn't finished rendering yet
|
95
84
|
// http://www.nczonline.net/blog/2008/03/17/the-dreaded-operation-aborted-error/
|
96
85
|
*zoom: expression(#{$runOnce},(function(#{$this}){setTimeout(function(){#{$cmd}})}(this)));
|
97
|
-
|
98
|
-
// if we're NOT using inline styles...
|
99
|
-
@if not $CONFIG_GENERATED_TAG_INLINE {
|
100
|
-
// output it on the generated selector
|
101
|
-
#{$archetype-pseudo-selector} {
|
102
|
-
@include to-styles(-style-string-to-list(unquote($styles)));
|
103
|
-
@if archetype-version('Sass >= 3.2') {
|
104
|
-
@content;
|
105
|
-
}
|
106
|
-
}
|
107
|
-
}
|
108
86
|
}
|
109
87
|
}
|
110
|
-
|
111
|
-
// a hack that allows elements with transparent backgrounds to be focusable in IE
|
112
|
-
// @mixin transparent-focusable
|
113
|
-
// @param $url {String} an optional URL to point to an image (not required)
|
114
|
-
// @param $data {String} an optional data URI for a transparent image (not required)
|
115
|
-
@mixin transparent-focusable($url: url(https://), $data: 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7') {
|
116
|
-
$bg: (transparent);
|
117
|
-
background: append($bg, $data);
|
118
|
-
@if $url {
|
119
|
-
@include target-browser(ie lte 7, background, append($bg, $url));
|
120
|
-
}
|
121
|
-
}
|
@@ -117,9 +117,9 @@
|
|
117
117
|
clip: rect(1px, 1px, 1px, 1px);
|
118
118
|
}
|
119
119
|
|
120
|
-
//
|
120
|
+
// revert hide element with config
|
121
121
|
// @mixin unhide-element
|
122
|
-
// @
|
122
|
+
// @link http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
|
123
123
|
// @param $position {String} value for the position property
|
124
124
|
// @param $height {String} value for the height property
|
125
125
|
// @param $width {String} value for the width property
|
@@ -168,11 +168,8 @@
|
|
168
168
|
// @param $size {Number} the size of the icon
|
169
169
|
// @param $color {Color} the color of the font
|
170
170
|
// @param $placement {String} where to place the icon [before|after|inline]
|
171
|
-
// @param $ie-styles {String} styles to apply to IE6/7 (this is needed because the faux :before isn't
|
172
|
-
|
173
|
-
// @content
|
174
|
-
@mixin glyph-icon($icon, $size: default, $color: inherit, $placement: before, $ie-styles: false, $ie-uid: false) {
|
175
|
-
$archetype-glyph-selector: false;
|
171
|
+
// @param $ie-styles {String} styles to apply to IE6/7 (this is needed because the faux :before isn't extensible)
|
172
|
+
@mixin glyph-icon($icon, $size: default, $color: inherit, $placement: before, $ie-styles: false) {
|
176
173
|
$char-mapping: nil;
|
177
174
|
$char-code: nil;
|
178
175
|
@if $icon {
|
@@ -207,7 +204,6 @@
|
|
207
204
|
content: $char-code;
|
208
205
|
}
|
209
206
|
}
|
210
|
-
$archetype-glyph-selector: $selector;
|
211
207
|
@if($selector != '&' and $ie-styles != nil) {
|
212
208
|
// support for IE6/7
|
213
209
|
$styles: "font-family:'#{$CONFIG_GLYPHS_NAME}-#{$CONFIG_GLYPHS_VERSION}', '#{$CONFIG_GLYPHS_NAME}';font-weight:#{$CONFIG_GLYPHS_WEIGHT};font-style:#{$CONFIG_GLYPHS_STYLE};text-decoration:inherit;";
|
@@ -220,14 +216,7 @@
|
|
220
216
|
@if($ie-styles) {
|
221
217
|
$styles: $styles + $ie-styles;
|
222
218
|
}
|
223
|
-
|
224
|
-
@include ie-pseudo($styles: $styles, $content: $char-code, $placement: $placement, $name: glyph, $uid: $ie-uid);
|
225
|
-
@if $archetype-pseudo-selector {
|
226
|
-
$archetype-glyph-selector: '#{$selector}, #{$archetype-pseudo-selector}';
|
227
|
-
}
|
228
|
-
}
|
229
|
-
#{$archetype-glyph-selector} {
|
230
|
-
@content;
|
219
|
+
@include ie-pseudo($styles: $styles, $content: $char-code, $placement: $placement, $name: glyph);
|
231
220
|
}
|
232
221
|
}
|
233
222
|
}
|
@@ -6,7 +6,7 @@
|
|
6
6
|
/* ==========================================================================
|
7
7
|
Base styles: opinionated defaults
|
8
8
|
========================================================================== */
|
9
|
-
|
9
|
+
|
10
10
|
html,
|
11
11
|
button,
|
12
12
|
input,
|
@@ -14,32 +14,32 @@
|
|
14
14
|
textarea {
|
15
15
|
color: #222;
|
16
16
|
}
|
17
|
-
|
17
|
+
|
18
18
|
body {
|
19
19
|
font-size: 1em;
|
20
20
|
line-height: 1.4;
|
21
21
|
}
|
22
|
-
|
22
|
+
|
23
23
|
/*
|
24
24
|
* Remove text-shadow in selection highlight: h5bp.com/i
|
25
25
|
* These selection declarations have to be separate.
|
26
26
|
* Customize the background color to match your design.
|
27
27
|
*/
|
28
|
-
|
28
|
+
|
29
29
|
::-moz-selection {
|
30
30
|
background: #b3d4fc;
|
31
31
|
text-shadow: none;
|
32
32
|
}
|
33
|
-
|
33
|
+
|
34
34
|
::selection {
|
35
35
|
background: #b3d4fc;
|
36
36
|
text-shadow: none;
|
37
37
|
}
|
38
|
-
|
38
|
+
|
39
39
|
/*
|
40
40
|
* A better looking default horizontal rule
|
41
41
|
*/
|
42
|
-
|
42
|
+
|
43
43
|
hr {
|
44
44
|
display: block;
|
45
45
|
height: 1px;
|
@@ -54,7 +54,7 @@
|
|
54
54
|
/*
|
55
55
|
* Remove the gap between images and the bottom of their containers: h5bp.com/i/440
|
56
56
|
*/
|
57
|
-
|
57
|
+
|
58
58
|
img {
|
59
59
|
vertical-align: middle;
|
60
60
|
}
|
@@ -77,7 +77,7 @@
|
|
77
77
|
/*
|
78
78
|
* Allow only vertical resizing of textareas.
|
79
79
|
*/
|
80
|
-
|
80
|
+
|
81
81
|
textarea {
|
82
82
|
resize: vertical;
|
83
83
|
}
|
@@ -87,7 +87,7 @@
|
|
87
87
|
/* ==========================================================================
|
88
88
|
Chrome Frame prompt
|
89
89
|
========================================================================== */
|
90
|
-
|
90
|
+
|
91
91
|
.chromeframe {
|
92
92
|
margin: 0.2em 0;
|
93
93
|
background: #ccc;
|
@@ -117,7 +117,7 @@
|
|
117
117
|
content: "";
|
118
118
|
display: block;
|
119
119
|
width: 0;
|
120
|
-
height:
|
120
|
+
height: 100%;
|
121
121
|
}
|
122
122
|
|
123
123
|
/*
|
@@ -277,7 +277,7 @@
|
|
277
277
|
// @param $exclude {List} the list of features to exclude from the reset
|
278
278
|
// @link https://github.com/h5bp/html5-boilerplate/
|
279
279
|
@mixin base-h5bp($exclude: ()) {
|
280
|
-
/*! HTML5 Boilerplate | MIT License | @
|
280
|
+
/*! HTML5 Boilerplate | MIT License | @b378ce239d */
|
281
281
|
/*
|
282
282
|
* HTML5 Boilerplate
|
283
283
|
*
|
@@ -1,4 +1,4 @@
|
|
1
|
-
// normalize.css v2.1
|
1
|
+
// normalize.css v2.0.1 | MIT License | git.io/normalize
|
2
2
|
|
3
3
|
// @category base
|
4
4
|
@mixin base-normalize-html5() {
|
@@ -6,9 +6,9 @@
|
|
6
6
|
HTML5 display definitions
|
7
7
|
========================================================================== */
|
8
8
|
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
/*
|
10
|
+
* Corrects `block` display not defined in IE 8/9.
|
11
|
+
*/
|
12
12
|
|
13
13
|
article,
|
14
14
|
aside,
|
@@ -18,16 +18,15 @@
|
|
18
18
|
footer,
|
19
19
|
header,
|
20
20
|
hgroup,
|
21
|
-
main,
|
22
21
|
nav,
|
23
22
|
section,
|
24
23
|
summary {
|
25
24
|
display: block;
|
26
25
|
}
|
27
26
|
|
28
|
-
|
29
|
-
|
30
|
-
|
27
|
+
/*
|
28
|
+
* Corrects `inline-block` display not defined in IE 8/9.
|
29
|
+
*/
|
31
30
|
|
32
31
|
audio,
|
33
32
|
canvas,
|
@@ -35,43 +34,41 @@
|
|
35
34
|
@include inline-block();
|
36
35
|
}
|
37
36
|
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
37
|
+
/*
|
38
|
+
* Prevents modern browsers from displaying `audio` without controls.
|
39
|
+
* Remove excess height in iOS 5 devices.
|
40
|
+
*/
|
42
41
|
|
43
42
|
audio:not([controls]) {
|
44
43
|
display: none;
|
45
44
|
height: 0;
|
46
45
|
}
|
47
46
|
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
*/
|
47
|
+
/*
|
48
|
+
* Addresses styling for `hidden` attribute not present in IE 8/9.
|
49
|
+
*/
|
52
50
|
|
53
|
-
[hidden]
|
54
|
-
template {
|
51
|
+
[hidden] {
|
55
52
|
display: none;
|
56
53
|
}
|
57
54
|
}
|
58
55
|
|
59
56
|
@mixin base-normalize-text-adjust() {
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
57
|
+
/*
|
58
|
+
* 0. Corrects text resizing oddly in IE6/7 when body font-size is set using em units
|
59
|
+
* http://clagnut.com/blog/348/#c790
|
60
|
+
* 1. Sets default font family to sans-serif.
|
61
|
+
* 2. Prevents iOS text size adjust after orientation change, without disabling user zoom
|
62
|
+
* www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/
|
63
|
+
*/
|
67
64
|
html {
|
68
65
|
// legacy
|
69
66
|
@if $legacy-support-for-ie7 or $legacy-support-for-ie6 {
|
70
67
|
font-size: 100%; /* 0 */
|
71
68
|
}
|
72
69
|
font-family: sans-serif; /* 1 */
|
73
|
-
-ms-text-size-adjust: 100%; /* 2 */
|
74
70
|
-webkit-text-size-adjust: 100%; /* 2 */
|
71
|
+
-ms-text-size-adjust: 100%; /* 2 */
|
75
72
|
}
|
76
73
|
|
77
74
|
}
|
@@ -81,9 +78,9 @@
|
|
81
78
|
Base
|
82
79
|
========================================================================== */
|
83
80
|
|
84
|
-
|
85
|
-
|
86
|
-
|
81
|
+
/*
|
82
|
+
* Removes default margin.
|
83
|
+
*/
|
87
84
|
|
88
85
|
body {
|
89
86
|
margin: 0;
|
@@ -95,29 +92,17 @@
|
|
95
92
|
Links
|
96
93
|
========================================================================== */
|
97
94
|
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
// @see transparent-focusable
|
102
|
-
///**
|
103
|
-
// * Remove the gray background color from active links in IE 10.
|
104
|
-
// */
|
105
|
-
//
|
106
|
-
//a {
|
107
|
-
// background: transparent;
|
108
|
-
//}
|
109
|
-
|
110
|
-
/**
|
111
|
-
* Addresses `outline` inconsistency between Chrome and other browsers.
|
112
|
-
*/
|
95
|
+
/*
|
96
|
+
* Addresses `outline` inconsistency between Chrome and other browsers.
|
97
|
+
*/
|
113
98
|
|
114
99
|
a:focus {
|
115
100
|
outline: thin dotted;
|
116
101
|
}
|
117
102
|
|
118
|
-
|
119
|
-
|
120
|
-
|
103
|
+
/*
|
104
|
+
* Improves readability when focused and also mouse hovered in all browsers.
|
105
|
+
*/
|
121
106
|
|
122
107
|
a:active,
|
123
108
|
a:hover {
|
@@ -126,9 +111,9 @@
|
|
126
111
|
}
|
127
112
|
|
128
113
|
@mixin base-normalize-typogrpahy-core() {
|
129
|
-
|
130
|
-
|
131
|
-
|
114
|
+
/*
|
115
|
+
* Corrects font family set oddly in Safari 5 and Chrome.
|
116
|
+
*/
|
132
117
|
|
133
118
|
code,
|
134
119
|
kbd,
|
@@ -138,9 +123,9 @@
|
|
138
123
|
font-size: 1em;
|
139
124
|
}
|
140
125
|
|
141
|
-
|
142
|
-
|
143
|
-
|
126
|
+
/*
|
127
|
+
* Improves readability of pre-formatted text in all browsers.
|
128
|
+
*/
|
144
129
|
|
145
130
|
pre {
|
146
131
|
white-space: pre;
|
@@ -149,17 +134,17 @@
|
|
149
134
|
}
|
150
135
|
|
151
136
|
|
152
|
-
|
153
|
-
|
154
|
-
|
137
|
+
/*
|
138
|
+
* Addresses inconsistent and variable font size in all browsers.
|
139
|
+
*/
|
155
140
|
|
156
141
|
small {
|
157
142
|
font-size: 80%;
|
158
143
|
}
|
159
144
|
|
160
|
-
|
161
|
-
|
162
|
-
|
145
|
+
/*
|
146
|
+
* Prevents `sub` and `sup` affecting `line-height` in all browsers.
|
147
|
+
*/
|
163
148
|
|
164
149
|
sub,
|
165
150
|
sup {
|
@@ -183,10 +168,10 @@
|
|
183
168
|
Typography
|
184
169
|
========================================================================== */
|
185
170
|
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
171
|
+
/*
|
172
|
+
* Addresses font sizes and margins set differently in IE6/7
|
173
|
+
* Addresses font sizes within 'section' and 'article' in FF4+, Chrome, S5
|
174
|
+
*/
|
190
175
|
|
191
176
|
h1 {
|
192
177
|
font-size: 2em;
|
@@ -218,45 +203,33 @@
|
|
218
203
|
margin: 2.33em 0;
|
219
204
|
}
|
220
205
|
|
221
|
-
|
222
|
-
|
223
|
-
|
206
|
+
/*
|
207
|
+
* Addresses styling not present in IE 8/9, Safari 5, and Chrome.
|
208
|
+
*/
|
224
209
|
|
225
210
|
abbr[title] {
|
226
211
|
border-bottom: 1px dotted;
|
227
212
|
}
|
228
213
|
|
229
|
-
|
230
|
-
|
231
|
-
|
214
|
+
/*
|
215
|
+
* Addresses style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
|
216
|
+
*/
|
232
217
|
|
233
218
|
b,
|
234
219
|
strong {
|
235
220
|
font-weight: bold;
|
236
221
|
}
|
237
|
-
|
238
|
-
|
239
|
-
|
240
|
-
*/
|
222
|
+
/*
|
223
|
+
* Addresses styling not present in Safari 5 and Chrome.
|
224
|
+
*/
|
241
225
|
|
242
226
|
dfn {
|
243
227
|
font-style: italic;
|
244
228
|
}
|
245
229
|
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
hr {
|
251
|
-
-moz-box-sizing: content-box;
|
252
|
-
box-sizing: content-box;
|
253
|
-
height: 0;
|
254
|
-
}
|
255
|
-
|
256
|
-
|
257
|
-
/**
|
258
|
-
* Addresses styling not present in IE 8/9.
|
259
|
-
*/
|
230
|
+
/*
|
231
|
+
* Addresses styling not present in IE 8/9.
|
232
|
+
*/
|
260
233
|
|
261
234
|
mark {
|
262
235
|
background: #ff0;
|
@@ -267,9 +240,9 @@
|
|
267
240
|
margin: 1em 40px;
|
268
241
|
}
|
269
242
|
|
270
|
-
|
271
|
-
|
272
|
-
|
243
|
+
/*
|
244
|
+
* Addresses margins set differently in IE6/7
|
245
|
+
*/
|
273
246
|
|
274
247
|
p,
|
275
248
|
pre {
|
@@ -278,9 +251,9 @@
|
|
278
251
|
}
|
279
252
|
|
280
253
|
@mixin base-normalize-quotes() {
|
281
|
-
|
282
|
-
|
283
|
-
|
254
|
+
/*
|
255
|
+
* Sets consistent quote types.
|
256
|
+
*/
|
284
257
|
q {
|
285
258
|
quotes: "\201C" "\201D" "\2018" "\2019";
|
286
259
|
}
|
@@ -293,7 +266,7 @@
|
|
293
266
|
Lists
|
294
267
|
========================================================================== */
|
295
268
|
|
296
|
-
|
269
|
+
/*
|
297
270
|
* Addresses margins set differently in IE6/7
|
298
271
|
*/
|
299
272
|
|
@@ -308,7 +281,7 @@
|
|
308
281
|
margin: 0 0 0 40px;
|
309
282
|
}
|
310
283
|
|
311
|
-
|
284
|
+
/*
|
312
285
|
* Addresses paddings set differently in IE6/7
|
313
286
|
*/
|
314
287
|
|
@@ -318,7 +291,7 @@
|
|
318
291
|
padding: 0 0 0 40px;
|
319
292
|
}
|
320
293
|
|
321
|
-
|
294
|
+
/*
|
322
295
|
* Corrects list images handled incorrectly in IE7
|
323
296
|
*/
|
324
297
|
|
@@ -331,11 +304,11 @@
|
|
331
304
|
}
|
332
305
|
|
333
306
|
@mixin base-normalize-image() {
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
|
307
|
+
/*
|
308
|
+
* 1. Removes border when inside 'a' element in IE6/7/8/9, FF3
|
309
|
+
* 2. Improves image quality when scaled in IE7
|
310
|
+
* code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/
|
311
|
+
*/
|
339
312
|
|
340
313
|
img {
|
341
314
|
border: 0; /* 1 */
|
@@ -351,10 +324,10 @@
|
|
351
324
|
Embedded content
|
352
325
|
========================================================================== */
|
353
326
|
@include base-normalize-image();
|
354
|
-
|
355
|
-
|
356
|
-
|
357
|
-
|
327
|
+
|
328
|
+
/*
|
329
|
+
* Corrects overflow displayed oddly in IE9
|
330
|
+
*/
|
358
331
|
|
359
332
|
svg:not(:root) {
|
360
333
|
overflow: hidden;
|
@@ -366,9 +339,9 @@
|
|
366
339
|
Figures
|
367
340
|
========================================================================== */
|
368
341
|
|
369
|
-
|
370
|
-
|
371
|
-
|
342
|
+
/*
|
343
|
+
* Addresses margin not present in IE6/7/8/9, S5, O11
|
344
|
+
*/
|
372
345
|
|
373
346
|
figure {
|
374
347
|
margin: 0;
|
@@ -376,9 +349,9 @@
|
|
376
349
|
}
|
377
350
|
|
378
351
|
@mixin base-normalize-fieldset() {
|
379
|
-
|
380
|
-
|
381
|
-
|
352
|
+
/*
|
353
|
+
* Define consistent border, margin, and padding.
|
354
|
+
*/
|
382
355
|
|
383
356
|
fieldset {
|
384
357
|
border: 1px solid #c0c0c0;
|
@@ -392,19 +365,19 @@
|
|
392
365
|
Forms
|
393
366
|
========================================================================== */
|
394
367
|
|
395
|
-
|
396
|
-
|
397
|
-
|
368
|
+
/*
|
369
|
+
* Corrects margin displayed oddly in IE6/7
|
370
|
+
*/
|
398
371
|
|
399
372
|
form {
|
400
373
|
margin: 0;
|
401
374
|
}
|
402
375
|
|
403
|
-
|
404
|
-
|
405
|
-
|
406
|
-
|
407
|
-
|
376
|
+
/*
|
377
|
+
* 1. Corrects color not being inherited in IE6/7/8/9
|
378
|
+
* 2. Corrects text not wrapping in FF3
|
379
|
+
* 3. Corrects alignment displayed oddly in IE6/7
|
380
|
+
*/
|
408
381
|
|
409
382
|
legend {
|
410
383
|
border: 0; /* 1 */
|
@@ -416,12 +389,12 @@
|
|
416
389
|
}
|
417
390
|
}
|
418
391
|
|
419
|
-
|
420
|
-
|
421
|
-
|
422
|
-
|
423
|
-
|
424
|
-
|
392
|
+
/*
|
393
|
+
* 1. Corrects font family not being inherited in all browsers.
|
394
|
+
* 2. Corrects font size not being inherited in all browsers.
|
395
|
+
* 3. Addresses margins set differently in Firefox 4+, Safari 5, and Chrome
|
396
|
+
* 4. Improves appearance and consistency in all browsers
|
397
|
+
*/
|
425
398
|
|
426
399
|
button,
|
427
400
|
input,
|
@@ -437,35 +410,23 @@
|
|
437
410
|
}
|
438
411
|
}
|
439
412
|
|
440
|
-
|
441
|
-
|
442
|
-
|
413
|
+
/*
|
414
|
+
* Addresses FF3/4 setting line-height on 'input' using !important in the UA stylesheet
|
415
|
+
*/
|
443
416
|
|
444
417
|
button,
|
445
418
|
input {
|
446
419
|
line-height: normal; /* 1 */
|
447
420
|
}
|
448
421
|
|
449
|
-
|
450
|
-
|
451
|
-
|
452
|
-
|
453
|
-
|
454
|
-
|
455
|
-
|
456
|
-
|
457
|
-
select {
|
458
|
-
text-transform: none;
|
459
|
-
}
|
460
|
-
|
461
|
-
/**
|
462
|
-
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
|
463
|
-
* and `video` controls.
|
464
|
-
* 2. Correct inability to style clickable `input` types in iOS.
|
465
|
-
* 3. Improve usability and consistency of cursor style between image-type
|
466
|
-
* `input` and others.
|
467
|
-
* 4. Removes inner spacing in IE7 without affecting normal text inputs
|
468
|
-
*/
|
422
|
+
/*
|
423
|
+
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
|
424
|
+
* and `video` controls.
|
425
|
+
* 2. Corrects inability to style clickable `input` types in iOS.
|
426
|
+
* 3. Improves usability and consistency of cursor style between image-type
|
427
|
+
* `input` and others.
|
428
|
+
* 4. Removes inner spacing in IE7 without affecting normal text inputs
|
429
|
+
*/
|
469
430
|
|
470
431
|
button,
|
471
432
|
html input[type="button"], /* 1 */
|
@@ -479,21 +440,21 @@
|
|
479
440
|
}
|
480
441
|
}
|
481
442
|
|
482
|
-
|
483
|
-
|
484
|
-
|
443
|
+
/*
|
444
|
+
* Re-set default cursor for disabled elements.
|
445
|
+
*/
|
485
446
|
|
486
447
|
button[disabled],
|
487
|
-
|
448
|
+
input[disabled] {
|
488
449
|
cursor: default;
|
489
450
|
}
|
490
451
|
|
491
|
-
|
492
|
-
|
493
|
-
|
494
|
-
|
452
|
+
/*
|
453
|
+
* 1. Addresses box sizing set to `content-box` in IE 8/9.
|
454
|
+
* 2. Removes excess padding in IE 8/9.
|
455
|
+
* 3. Removes excess padding in IE7
|
495
456
|
Known issue: excess padding remains in IE6
|
496
|
-
|
457
|
+
*/
|
497
458
|
|
498
459
|
input[type="checkbox"],
|
499
460
|
input[type="radio"] {
|
@@ -506,11 +467,11 @@
|
|
506
467
|
}
|
507
468
|
}
|
508
469
|
|
509
|
-
|
510
|
-
|
511
|
-
|
512
|
-
|
513
|
-
|
470
|
+
/*
|
471
|
+
* 1. Addresses `appearance` set to `searchfield` in Safari 5 and Chrome.
|
472
|
+
* 2. Addresses `box-sizing` set to `border-box` in Safari 5 and Chrome
|
473
|
+
* (include `-moz` to future-proof).
|
474
|
+
*/
|
514
475
|
|
515
476
|
input[type="search"] {
|
516
477
|
-webkit-appearance: textfield; /* 1 */
|
@@ -520,10 +481,10 @@
|
|
520
481
|
}
|
521
482
|
|
522
483
|
|
523
|
-
|
524
|
-
|
525
|
-
|
526
|
-
|
484
|
+
/*
|
485
|
+
* Removes inner padding and search cancel button in Safari 5 and Chrome
|
486
|
+
* on OS X.
|
487
|
+
*/
|
527
488
|
|
528
489
|
input[type="search"]::-webkit-search-cancel-button,
|
529
490
|
input[type="search"]::-webkit-search-decoration {
|
@@ -531,9 +492,9 @@
|
|
531
492
|
}
|
532
493
|
|
533
494
|
|
534
|
-
|
535
|
-
|
536
|
-
|
495
|
+
/*
|
496
|
+
* Removes inner padding and border in Firefox 4+.
|
497
|
+
*/
|
537
498
|
|
538
499
|
button::-moz-focus-inner,
|
539
500
|
input::-moz-focus-inner {
|
@@ -541,16 +502,16 @@
|
|
541
502
|
padding: 0;
|
542
503
|
}
|
543
504
|
|
544
|
-
|
545
|
-
|
546
|
-
|
547
|
-
|
505
|
+
/*
|
506
|
+
* 1. Removes default vertical scrollbar in IE6/7/8/9
|
507
|
+
* 2. Improves readability and alignment in all browsers
|
508
|
+
*/
|
548
509
|
|
549
510
|
textarea {
|
550
511
|
overflow: auto; /* 1 */
|
551
512
|
vertical-align: top; /* 2 */
|
552
513
|
}
|
553
|
-
|
514
|
+
|
554
515
|
}
|
555
516
|
|
556
517
|
@mixin base-normalize-ime() {
|
@@ -568,9 +529,9 @@
|
|
568
529
|
Tables
|
569
530
|
========================================================================== */
|
570
531
|
|
571
|
-
|
572
|
-
|
573
|
-
|
532
|
+
/*
|
533
|
+
* Remove most spacing between table cells.
|
534
|
+
*/
|
574
535
|
|
575
536
|
table {
|
576
537
|
border-collapse: collapse;
|
@@ -584,7 +545,7 @@
|
|
584
545
|
// @param $exclude {List} the list of features to exclude from the reset
|
585
546
|
// @link http://github.com/necolas/normalize.css
|
586
547
|
@mixin base-normalize($exclude: ()) {
|
587
|
-
/*! normalize.css v2.1
|
548
|
+
/*! normalize.css v2.0.1 | MIT License | git.io/normalize */
|
588
549
|
$exclude: -compass-list($exclude);
|
589
550
|
@if(not index($exclude, normalize-html5)) {
|
590
551
|
@include base-normalize-html5();
|