susy 1.0.9 → 2.2.14
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/LICENSE.txt +1 -1
- data/README.md +20 -115
- data/VERSION +1 -1
- data/docs/changelog.rst +783 -0
- data/lib/compass-susy.rb +1 -0
- data/lib/susy.rb +14 -4
- data/sass/_su.scss +4 -0
- data/sass/_susy.scss +3 -15
- data/sass/_susyone.scss +4 -0
- data/sass/susy/_su.scss +7 -0
- data/sass/susy/language/_susy.scss +24 -0
- data/sass/susy/language/_susyone.scss +13 -0
- data/sass/susy/language/susy/_background.scss +385 -0
- data/sass/susy/language/susy/_bleed.scss +200 -0
- data/sass/susy/language/susy/_box-sizing.scss +47 -0
- data/sass/susy/language/susy/_breakpoint-plugin.scss +185 -0
- data/sass/susy/language/susy/_container.scss +81 -0
- data/sass/susy/language/susy/_context.scss +36 -0
- data/sass/susy/language/susy/_gallery.scss +94 -0
- data/sass/susy/language/susy/_grids.scss +64 -0
- data/sass/susy/language/susy/_gutters.scss +154 -0
- data/sass/susy/language/susy/_isolate.scss +77 -0
- data/sass/susy/language/susy/_margins.scss +94 -0
- data/sass/susy/language/susy/_padding.scss +74 -0
- data/sass/susy/language/susy/_rows.scss +138 -0
- data/sass/susy/language/susy/_settings.scss +216 -0
- data/sass/susy/language/susy/_span.scss +163 -0
- data/sass/susy/language/susy/_validation.scss +16 -0
- data/sass/susy/{_background.scss → language/susyone/_background.scss} +0 -0
- data/sass/susy/{_functions.scss → language/susyone/_functions.scss} +23 -22
- data/sass/susy/{_grid.scss → language/susyone/_grid.scss} +76 -50
- data/sass/susy/{_isolation.scss → language/susyone/_isolation.scss} +0 -0
- data/sass/susy/{_margin.scss → language/susyone/_margin.scss} +0 -0
- data/sass/susy/{_media.scss → language/susyone/_media.scss} +26 -33
- data/sass/susy/{_padding.scss → language/susyone/_padding.scss} +0 -0
- data/sass/susy/{_settings.scss → language/susyone/_settings.scss} +4 -0
- data/sass/susy/output/_float.scss +9 -0
- data/sass/susy/output/_shared.scss +15 -0
- data/sass/susy/output/_support.scss +9 -0
- data/sass/susy/output/float/_container.scss +16 -0
- data/sass/susy/output/float/_end.scss +40 -0
- data/sass/susy/output/float/_isolate.scss +22 -0
- data/sass/susy/output/float/_span.scss +35 -0
- data/sass/susy/output/shared/_background.scss +26 -0
- data/sass/susy/output/shared/_container.scss +21 -0
- data/sass/susy/output/shared/_direction.scss +42 -0
- data/sass/susy/output/shared/_inspect.scss +25 -0
- data/sass/susy/output/shared/_margins.scss +23 -0
- data/sass/susy/output/shared/_output.scss +14 -0
- data/sass/susy/output/shared/_padding.scss +23 -0
- data/sass/susy/output/support/_background.scss +58 -0
- data/sass/susy/output/support/_box-sizing.scss +19 -0
- data/sass/susy/output/support/_clearfix.scss +18 -0
- data/sass/susy/output/support/_prefix.scss +19 -0
- data/sass/susy/output/support/_rem.scss +22 -0
- data/sass/susy/output/support/_support.scss +95 -0
- data/sass/susy/su/_grid.scss +103 -0
- data/sass/susy/su/_settings.scss +73 -0
- data/sass/susy/su/_utilities.scss +111 -0
- data/sass/susy/su/_validation.scss +57 -0
- data/templates/project/_grids.scss +9 -0
- data/templates/project/manifest.rb +6 -10
- data/templates/project/style.scss +4 -0
- metadata +106 -111
- data/CHANGELOG.mkdn +0 -296
- data/Manifest +0 -39
- data/Rakefile +0 -19
- data/sass/susy/_support.scss +0 -198
- data/sass/susy/_units.scss +0 -159
- data/susy.gemspec +0 -35
- data/templates/project/_base.scss +0 -14
- data/templates/project/screen.scss +0 -12
- data/test/config.rb +0 -10
- data/test/css/background.css +0 -16
- data/test/css/bleed.css +0 -20
- data/test/css/functions.css +0 -7
- data/test/css/grid.css +0 -134
- data/test/css/isolation.css +0 -46
- data/test/css/margin.css +0 -20
- data/test/css/media.css +0 -101
- data/test/css/padding.css +0 -12
- data/test/scss/background.scss +0 -11
- data/test/scss/bleed.scss +0 -19
- data/test/scss/functions.scss +0 -15
- data/test/scss/grid.scss +0 -77
- data/test/scss/isolation.scss +0 -19
- data/test/scss/margin.scss +0 -27
- data/test/scss/media.scss +0 -50
- data/test/scss/padding.scss +0 -19
File without changes
|
@@ -42,6 +42,10 @@ $container-style : magic !default;
|
|
42
42
|
// and simply apply the border-box-sizing mixin.
|
43
43
|
$border-box-sizing : false !default;
|
44
44
|
|
45
|
+
// Pixel Values only:
|
46
|
+
// Make sure only pixel values are set for the container width.
|
47
|
+
$pixel-values-only : false !default;
|
48
|
+
|
45
49
|
// ---------------------------------------------------------------------------
|
46
50
|
// IE Settings
|
47
51
|
|
@@ -0,0 +1,15 @@
|
|
1
|
+
// Shared API
|
2
|
+
// ==========
|
3
|
+
|
4
|
+
@import "support";
|
5
|
+
|
6
|
+
@import "shared/inspect";
|
7
|
+
@import "shared/output";
|
8
|
+
@import "shared/direction";
|
9
|
+
@import "shared/background";
|
10
|
+
@import "shared/container";
|
11
|
+
@import "shared/margins";
|
12
|
+
@import "shared/padding";
|
13
|
+
|
14
|
+
|
15
|
+
|
@@ -0,0 +1,16 @@
|
|
1
|
+
// Float Container API
|
2
|
+
// ===================
|
3
|
+
|
4
|
+
// Float Container
|
5
|
+
// ---------------
|
6
|
+
// - [$width] : <length>
|
7
|
+
// - [$justify] : left | center | right
|
8
|
+
// - [$math] : fluid | static
|
9
|
+
@mixin float-container(
|
10
|
+
$width,
|
11
|
+
$justify: auto auto,
|
12
|
+
$property: max-width
|
13
|
+
) {
|
14
|
+
@include susy-clearfix;
|
15
|
+
@include container-output($width, $justify, $property);
|
16
|
+
}
|
@@ -0,0 +1,40 @@
|
|
1
|
+
// Float Ends API
|
2
|
+
// ==============
|
3
|
+
|
4
|
+
// Susy End Defaults
|
5
|
+
// -----------------
|
6
|
+
// - PRIVATE
|
7
|
+
@include susy-defaults((
|
8
|
+
last-flow: to,
|
9
|
+
));
|
10
|
+
|
11
|
+
// Float Last
|
12
|
+
// ----------
|
13
|
+
// - [$flow] : ltr | rtl
|
14
|
+
@mixin float-last(
|
15
|
+
$flow: map-get($susy-defaults, flow),
|
16
|
+
$last-flow: map-get($susy-defaults, last-flow),
|
17
|
+
$margin: 0
|
18
|
+
) {
|
19
|
+
$to: to($flow);
|
20
|
+
|
21
|
+
$output: (
|
22
|
+
float: if($last-flow == to, $to, null),
|
23
|
+
margin-#{$to}: $margin,
|
24
|
+
);
|
25
|
+
|
26
|
+
@include output($output);
|
27
|
+
}
|
28
|
+
|
29
|
+
// Float First
|
30
|
+
// -----------
|
31
|
+
// - [$flow] : ltr | rtl
|
32
|
+
@mixin float-first(
|
33
|
+
$flow: map-get($susy-defaults, flow)
|
34
|
+
) {
|
35
|
+
$output: (
|
36
|
+
margin-#{from($flow)}: 0,
|
37
|
+
);
|
38
|
+
|
39
|
+
@include output($output);
|
40
|
+
}
|
@@ -0,0 +1,22 @@
|
|
1
|
+
// Float Isolation API
|
2
|
+
// ===================
|
3
|
+
|
4
|
+
// Isolate Output
|
5
|
+
// --------------
|
6
|
+
// - $push : <length>
|
7
|
+
// - [$flow] : ltr | rtl
|
8
|
+
@mixin isolate-output(
|
9
|
+
$push,
|
10
|
+
$flow: map-get($susy-defaults, flow)
|
11
|
+
) {
|
12
|
+
$to: to($flow);
|
13
|
+
$from: from($flow);
|
14
|
+
|
15
|
+
$output: (
|
16
|
+
float: $from,
|
17
|
+
margin-#{$from}: $push,
|
18
|
+
margin-#{$to}: -100%,
|
19
|
+
);
|
20
|
+
|
21
|
+
@include output($output);
|
22
|
+
}
|
@@ -0,0 +1,35 @@
|
|
1
|
+
// Float Span API
|
2
|
+
// ==============
|
3
|
+
|
4
|
+
// Float Span Output
|
5
|
+
// -----------------
|
6
|
+
// - $width : <length>
|
7
|
+
// - [$float] : from | to
|
8
|
+
// - [$margin-before] : <length>
|
9
|
+
// - [$margin-after] : <length>
|
10
|
+
// - [$padding-before] : <length>
|
11
|
+
// - [$padding-after] : <length>
|
12
|
+
// - [$flow] : ltr | rtl
|
13
|
+
@mixin float-span-output(
|
14
|
+
$width,
|
15
|
+
$float : from,
|
16
|
+
$margin-before : null,
|
17
|
+
$margin-after : null,
|
18
|
+
$padding-before : null,
|
19
|
+
$padding-after : null,
|
20
|
+
$flow : map-get($susy-defaults, flow)
|
21
|
+
) {
|
22
|
+
$to : to($flow);
|
23
|
+
$from : from($flow);
|
24
|
+
|
25
|
+
$output: (
|
26
|
+
width: $width,
|
27
|
+
float: if($float == to, $to, null) or if($float == from, $from, null),
|
28
|
+
margin-#{$from}: $margin-before,
|
29
|
+
margin-#{$to}: $margin-after,
|
30
|
+
padding-#{$from}: $padding-before,
|
31
|
+
padding-#{$to}: $padding-after,
|
32
|
+
);
|
33
|
+
|
34
|
+
@include output($output);
|
35
|
+
}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
// Grid Background API
|
2
|
+
// ===================
|
3
|
+
// - Sub-pixel rounding can lead to several pixels variation between browsers.
|
4
|
+
|
5
|
+
// Grid Background Output
|
6
|
+
// ----------------------
|
7
|
+
// - $image: background-image
|
8
|
+
// - $size: background-size
|
9
|
+
// - $clip: background-clip
|
10
|
+
// - [$flow]: ltr | rtl
|
11
|
+
@mixin background-grid-output (
|
12
|
+
$image,
|
13
|
+
$size: null,
|
14
|
+
$clip: null,
|
15
|
+
$flow: map-get($susy-defaults, flow)
|
16
|
+
) {
|
17
|
+
$output: (
|
18
|
+
background-image: $image,
|
19
|
+
background-size: $size,
|
20
|
+
background-origin: $clip,
|
21
|
+
background-clip: $clip,
|
22
|
+
background-position: from($flow) top,
|
23
|
+
);
|
24
|
+
|
25
|
+
@include output($output);
|
26
|
+
}
|
@@ -0,0 +1,21 @@
|
|
1
|
+
// Shared Container API
|
2
|
+
// ====================
|
3
|
+
|
4
|
+
// Container Output
|
5
|
+
// ----------------
|
6
|
+
// - [$width] : <length>
|
7
|
+
// - [$justify] : left | center | right
|
8
|
+
// - [$math] : fluid | static
|
9
|
+
@mixin container-output(
|
10
|
+
$width,
|
11
|
+
$justify: auto auto,
|
12
|
+
$property: max-width
|
13
|
+
) {
|
14
|
+
$output: (
|
15
|
+
#{$property}: $width or 100%,
|
16
|
+
margin-left: nth($justify, 1),
|
17
|
+
margin-right: nth($justify, 2),
|
18
|
+
);
|
19
|
+
|
20
|
+
@include output($output);
|
21
|
+
}
|
@@ -0,0 +1,42 @@
|
|
1
|
+
// Direction Helpers
|
2
|
+
// =================
|
3
|
+
|
4
|
+
// Susy Flow Defaults
|
5
|
+
// ------------------
|
6
|
+
// - PRIVATE
|
7
|
+
@include susy-defaults((
|
8
|
+
flow: ltr,
|
9
|
+
));
|
10
|
+
|
11
|
+
// Get Direction
|
12
|
+
// -------------
|
13
|
+
// Return the 'from' or 'to' direction of a ltr or rtl flow.
|
14
|
+
// - [$flow] : ltr | rtl
|
15
|
+
// - [$key] : from | to
|
16
|
+
@function get-direction(
|
17
|
+
$flow: map-get($susy-defaults, flow),
|
18
|
+
$key: from
|
19
|
+
) {
|
20
|
+
$return: if($flow == rtl, (from: right, to: left), (from: left, to: right));
|
21
|
+
@return map-get($return, $key);
|
22
|
+
}
|
23
|
+
|
24
|
+
// To
|
25
|
+
// --
|
26
|
+
// Return the 'to' direction of a flow
|
27
|
+
// - [$flow] : ltr | rtl
|
28
|
+
@function to(
|
29
|
+
$flow: map-get($susy-defaults, flow)
|
30
|
+
) {
|
31
|
+
@return get-direction($flow, to);
|
32
|
+
}
|
33
|
+
|
34
|
+
// From
|
35
|
+
// ----
|
36
|
+
// Return the 'from' direction of a flow
|
37
|
+
// - [$flow] : ltr | rtl
|
38
|
+
@function from(
|
39
|
+
$flow: map-get($susy-defaults, flow)
|
40
|
+
) {
|
41
|
+
@return get-direction($flow, from);
|
42
|
+
}
|
@@ -0,0 +1,25 @@
|
|
1
|
+
// Debugging
|
2
|
+
// =========
|
3
|
+
|
4
|
+
// Susy Inspect
|
5
|
+
// ------------
|
6
|
+
// Output arguments passed to a inspect.
|
7
|
+
// - $mixin : <susy mixin>
|
8
|
+
// - $inspec : <mixin arguments>
|
9
|
+
|
10
|
+
@mixin susy-inspect(
|
11
|
+
$mixin,
|
12
|
+
$inspect
|
13
|
+
) {
|
14
|
+
$show: false;
|
15
|
+
|
16
|
+
@each $item in $inspect {
|
17
|
+
@if index($item, inspect) {
|
18
|
+
$show: true;
|
19
|
+
}
|
20
|
+
}
|
21
|
+
|
22
|
+
@if $show or susy-get(debug inspect) {
|
23
|
+
-susy-#{$mixin}: inspect($inspect);
|
24
|
+
}
|
25
|
+
}
|
@@ -0,0 +1,23 @@
|
|
1
|
+
// Margins API
|
2
|
+
// ===========
|
3
|
+
|
4
|
+
// Margin Output
|
5
|
+
// -------------
|
6
|
+
// - $before : <length>
|
7
|
+
// - $after : <length>
|
8
|
+
// - [$flow] : ltr | rtl
|
9
|
+
@mixin margin-output(
|
10
|
+
$before,
|
11
|
+
$after,
|
12
|
+
$flow: map-get($susy-defaults, flow)
|
13
|
+
) {
|
14
|
+
$to: to($flow);
|
15
|
+
$from: from($flow);
|
16
|
+
|
17
|
+
$output: (
|
18
|
+
margin-#{$from}: $before,
|
19
|
+
margin-#{$to}: $after,
|
20
|
+
);
|
21
|
+
|
22
|
+
@include output($output);
|
23
|
+
}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
// Output
|
2
|
+
// ======
|
3
|
+
|
4
|
+
// Output
|
5
|
+
// ------
|
6
|
+
// Output CSS with proper browser support.
|
7
|
+
// - $styles : <map of css property-value pairs>
|
8
|
+
@mixin output(
|
9
|
+
$styles
|
10
|
+
) {
|
11
|
+
@each $prop, $val in $styles {
|
12
|
+
@include susy-support($prop, $val);
|
13
|
+
}
|
14
|
+
}
|
@@ -0,0 +1,23 @@
|
|
1
|
+
// Padding API
|
2
|
+
// ===========
|
3
|
+
|
4
|
+
// Padding Output
|
5
|
+
// --------------
|
6
|
+
// - $before : <length>
|
7
|
+
// - $after : <length>
|
8
|
+
// - [$flow] : ltr | rtl
|
9
|
+
@mixin padding-output(
|
10
|
+
$before,
|
11
|
+
$after,
|
12
|
+
$flow: map-get($susy-defaults, flow)
|
13
|
+
) {
|
14
|
+
$to: to($flow);
|
15
|
+
$from: from($flow);
|
16
|
+
|
17
|
+
$output: (
|
18
|
+
padding-#{$from}: $before,
|
19
|
+
padding-#{$to}: $after,
|
20
|
+
);
|
21
|
+
|
22
|
+
@include output($output);
|
23
|
+
}
|
@@ -0,0 +1,58 @@
|
|
1
|
+
// Background Properties
|
2
|
+
// =====================
|
3
|
+
|
4
|
+
// Susy Background Image
|
5
|
+
// ---------------------
|
6
|
+
// Check for an existing support mixin, or provide a simple fallback.
|
7
|
+
// - $image: <background-image>
|
8
|
+
@mixin susy-background-image(
|
9
|
+
$image
|
10
|
+
) {
|
11
|
+
@if susy-support(background-image, (mixin: background-image), $warn: false) {
|
12
|
+
@include background-image($image...);
|
13
|
+
} @else {
|
14
|
+
background-image: $image;
|
15
|
+
}
|
16
|
+
}
|
17
|
+
|
18
|
+
// Susy Background Size
|
19
|
+
// ---------------------
|
20
|
+
// Check for an existing support mixin, or provide a simple fallback.
|
21
|
+
// - $image: <background-size>
|
22
|
+
@mixin susy-background-size(
|
23
|
+
$size
|
24
|
+
) {
|
25
|
+
@if susy-support(background-options, (mixin: background-size)) {
|
26
|
+
@include background-size($size);
|
27
|
+
} @else {
|
28
|
+
background-size: $size;
|
29
|
+
}
|
30
|
+
}
|
31
|
+
|
32
|
+
// Susy Background Origin
|
33
|
+
// ----------------------
|
34
|
+
// Check for an existing support mixin, or provide a simple fallback.
|
35
|
+
// - $image: <background-origin>
|
36
|
+
@mixin susy-background-origin(
|
37
|
+
$origin
|
38
|
+
) {
|
39
|
+
@if susy-support(background-options, (mixin: background-origin)) {
|
40
|
+
@include background-origin($origin);
|
41
|
+
} @else {
|
42
|
+
background-origin: $origin;
|
43
|
+
}
|
44
|
+
}
|
45
|
+
|
46
|
+
// Susy Background Clip
|
47
|
+
// --------------------
|
48
|
+
// Check for an existing support mixin, or provide a simple fallback.
|
49
|
+
// - $image: <background-clip>
|
50
|
+
@mixin susy-background-clip(
|
51
|
+
$clip
|
52
|
+
) {
|
53
|
+
@if susy-support(background-options, (mixin: background-clip)) {
|
54
|
+
@include background-clip($clip);
|
55
|
+
} @else {
|
56
|
+
background-clip: $clip;
|
57
|
+
}
|
58
|
+
}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
// Box Sizing
|
2
|
+
// ==========
|
3
|
+
|
4
|
+
// Box Sizing
|
5
|
+
// ----------
|
6
|
+
// Check for an existing support mixin, or provide a simple fallback.
|
7
|
+
// - $model: <box-sizing>
|
8
|
+
@mixin susy-box-sizing(
|
9
|
+
$model: content-box
|
10
|
+
) {
|
11
|
+
@if $model {
|
12
|
+
@if susy-support(box-sizing, (mixin: box-sizing), $warn: false) {
|
13
|
+
@include box-sizing($model);
|
14
|
+
} @else {
|
15
|
+
$prefix: (moz, webkit, official);
|
16
|
+
@include susy-prefix(box-sizing, $model, $prefix);
|
17
|
+
}
|
18
|
+
}
|
19
|
+
}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
// Susy Fallback Clearfix
|
2
|
+
// ======================
|
3
|
+
|
4
|
+
|
5
|
+
// Clearfix
|
6
|
+
// --------
|
7
|
+
// Check for an existing support mixin, or provide a simple fallback.
|
8
|
+
@mixin susy-clearfix {
|
9
|
+
@if susy-support(clearfix, (mixin: clearfix)) {
|
10
|
+
@include clearfix;
|
11
|
+
} @else {
|
12
|
+
&:after {
|
13
|
+
content: " ";
|
14
|
+
display: block;
|
15
|
+
clear: both;
|
16
|
+
}
|
17
|
+
}
|
18
|
+
}
|