susy 1.0.9 → 2.2.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|
+
}
|