daiblogs 0.1.0
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/README.md +3 -0
- data/_includes/footer-nav.html +40 -0
- data/_includes/footer.html +47 -0
- data/_includes/head.html +29 -0
- data/_includes/header.html +56 -0
- data/_includes/iehacks.html +18 -0
- data/_includes/svg-defs.html +194 -0
- data/_includes/webfonts.html +9 -0
- data/_layouts/blog.html +0 -0
- data/_layouts/default.html +14 -0
- data/_layouts/home.html +0 -0
- data/_layouts/page.html +0 -0
- data/_layouts/post.html +0 -0
- data/assets/_sass/_blog.scss +1 -0
- data/assets/_sass/_grid.scss +48 -0
- data/assets/_sass/_layout.scss +2 -0
- data/assets/_sass/_legacy.scss +2919 -0
- data/assets/_sass/_mixins.scss +75 -0
- data/assets/_sass/_typesetting.scss +0 -0
- data/assets/_sass/_variables.scss +70 -0
- data/assets/_sass/bourbon/_bourbon-deprecated-upcoming.scss +13 -0
- data/assets/_sass/bourbon/_bourbon.scss +59 -0
- data/assets/_sass/bourbon/addons/_button.scss +273 -0
- data/assets/_sass/bourbon/addons/_clearfix.scss +29 -0
- data/assets/_sass/bourbon/addons/_font-family.scss +5 -0
- data/assets/_sass/bourbon/addons/_hide-text.scss +5 -0
- data/assets/_sass/bourbon/addons/_html5-input-types.scss +56 -0
- data/assets/_sass/bourbon/addons/_position.scss +42 -0
- data/assets/_sass/bourbon/addons/_prefixer.scss +49 -0
- data/assets/_sass/bourbon/addons/_retina-image.scss +32 -0
- data/assets/_sass/bourbon/addons/_size.scss +44 -0
- data/assets/_sass/bourbon/addons/_timing-functions.scss +32 -0
- data/assets/_sass/bourbon/addons/_triangle.scss +45 -0
- data/assets/_sass/bourbon/css3/_animation.scss +52 -0
- data/assets/_sass/bourbon/css3/_appearance.scss +3 -0
- data/assets/_sass/bourbon/css3/_backface-visibility.scss +6 -0
- data/assets/_sass/bourbon/css3/_background-image.scss +48 -0
- data/assets/_sass/bourbon/css3/_background.scss +103 -0
- data/assets/_sass/bourbon/css3/_border-image.scss +55 -0
- data/assets/_sass/bourbon/css3/_border-radius.scss +22 -0
- data/assets/_sass/bourbon/css3/_box-sizing.scss +4 -0
- data/assets/_sass/bourbon/css3/_columns.scss +47 -0
- data/assets/_sass/bourbon/css3/_flex-box.scss +52 -0
- data/assets/_sass/bourbon/css3/_font-face.scss +23 -0
- data/assets/_sass/bourbon/css3/_hidpi-media-query.scss +10 -0
- data/assets/_sass/bourbon/css3/_image-rendering.scss +13 -0
- data/assets/_sass/bourbon/css3/_inline-block.scss +8 -0
- data/assets/_sass/bourbon/css3/_keyframes.scss +43 -0
- data/assets/_sass/bourbon/css3/_linear-gradient.scss +41 -0
- data/assets/_sass/bourbon/css3/_perspective.scss +8 -0
- data/assets/_sass/bourbon/css3/_placeholder.scss +29 -0
- data/assets/_sass/bourbon/css3/_radial-gradient.scss +44 -0
- data/assets/_sass/bourbon/css3/_transform.scss +15 -0
- data/assets/_sass/bourbon/css3/_transition.scss +34 -0
- data/assets/_sass/bourbon/css3/_user-select.scss +3 -0
- data/assets/_sass/bourbon/functions/_compact.scss +11 -0
- data/assets/_sass/bourbon/functions/_flex-grid.scss +39 -0
- data/assets/_sass/bourbon/functions/_grid-width.scss +13 -0
- data/assets/_sass/bourbon/functions/_linear-gradient.scss +13 -0
- data/assets/_sass/bourbon/functions/_modular-scale.scss +40 -0
- data/assets/_sass/bourbon/functions/_px-to-em.scss +8 -0
- data/assets/_sass/bourbon/functions/_radial-gradient.scss +23 -0
- data/assets/_sass/bourbon/functions/_tint-shade.scss +9 -0
- data/assets/_sass/bourbon/functions/_transition-property-name.scss +22 -0
- data/assets/_sass/bourbon/helpers/_deprecated-webkit-gradient.scss +39 -0
- data/assets/_sass/bourbon/helpers/_gradient-positions-parser.scss +13 -0
- data/assets/_sass/bourbon/helpers/_linear-positions-parser.scss +61 -0
- data/assets/_sass/bourbon/helpers/_radial-arg-parser.scss +69 -0
- data/assets/_sass/bourbon/helpers/_radial-positions-parser.scss +18 -0
- data/assets/_sass/bourbon/helpers/_render-gradients.scss +26 -0
- data/assets/_sass/bourbon/helpers/_shape-size-stripper.scss +10 -0
- data/assets/css/site.scss +10 -0
- data/assets/js/site.js +3 -0
- metadata +158 -0
@@ -0,0 +1,103 @@
|
|
1
|
+
//************************************************************************//
|
2
|
+
// Background property for adding multiple backgrounds using shorthand
|
3
|
+
// notation.
|
4
|
+
//************************************************************************//
|
5
|
+
|
6
|
+
@mixin background(
|
7
|
+
$background-1 , $background-2: false,
|
8
|
+
$background-3: false, $background-4: false,
|
9
|
+
$background-5: false, $background-6: false,
|
10
|
+
$background-7: false, $background-8: false,
|
11
|
+
$background-9: false, $background-10: false,
|
12
|
+
$fallback: false
|
13
|
+
) {
|
14
|
+
$backgrounds: compact($background-1, $background-2,
|
15
|
+
$background-3, $background-4,
|
16
|
+
$background-5, $background-6,
|
17
|
+
$background-7, $background-8,
|
18
|
+
$background-9, $background-10);
|
19
|
+
|
20
|
+
$fallback-color: false;
|
21
|
+
@if (type-of($fallback) == color) or ($fallback == "transparent") {
|
22
|
+
$fallback-color: $fallback;
|
23
|
+
}
|
24
|
+
@else {
|
25
|
+
$fallback-color: _extract-background-color($backgrounds);
|
26
|
+
}
|
27
|
+
|
28
|
+
@if $fallback-color {
|
29
|
+
background-color: $fallback-color;
|
30
|
+
}
|
31
|
+
background: _background-add-prefix($backgrounds, webkit);
|
32
|
+
background: _background-add-prefix($backgrounds);
|
33
|
+
}
|
34
|
+
|
35
|
+
@function _extract-background-color($backgrounds) {
|
36
|
+
$final-bg-layer: nth($backgrounds, length($backgrounds));
|
37
|
+
@if type-of($final-bg-layer) == list {
|
38
|
+
@for $i from 1 through length($final-bg-layer) {
|
39
|
+
$value: nth($final-bg-layer, $i);
|
40
|
+
@if type-of($value) == color {
|
41
|
+
@return $value;
|
42
|
+
}
|
43
|
+
}
|
44
|
+
}
|
45
|
+
@return false;
|
46
|
+
}
|
47
|
+
|
48
|
+
@function _background-add-prefix($backgrounds, $vendor: false) {
|
49
|
+
$backgrounds-prefixed: ();
|
50
|
+
|
51
|
+
@for $i from 1 through length($backgrounds) {
|
52
|
+
$shorthand: nth($backgrounds, $i); // Get member for current index
|
53
|
+
$type: type-of($shorthand); // Get type of variable - List (gradient) or String (image)
|
54
|
+
|
55
|
+
// If shorthand is a list (gradient)
|
56
|
+
@if $type == list {
|
57
|
+
$first-member: nth($shorthand, 1); // Get first member of shorthand
|
58
|
+
|
59
|
+
// Linear Gradient
|
60
|
+
@if index(linear radial, nth($first-member, 1)) {
|
61
|
+
$gradient-type: nth($first-member, 1); // linear || radial
|
62
|
+
$gradient-args: false;
|
63
|
+
$gradient-positions: false;
|
64
|
+
$shorthand-start: false;
|
65
|
+
@if type-of($first-member) == list { // Linear gradient plus additional shorthand values - lg(red,orange)repeat,...
|
66
|
+
$gradient-positions: nth($first-member, 2);
|
67
|
+
$gradient-args: nth($first-member, 3);
|
68
|
+
$shorthand-start: 2;
|
69
|
+
}
|
70
|
+
@else { // Linear gradient only - lg(red,orange),...
|
71
|
+
$gradient-positions: nth($shorthand, 2);
|
72
|
+
$gradient-args: nth($shorthand, 3); // Get gradient (red, blue)
|
73
|
+
}
|
74
|
+
|
75
|
+
$gradient-positions: _gradient-positions-parser($gradient-type, $gradient-positions);
|
76
|
+
$gradient: _render-gradients($gradient-positions, $gradient-args, $gradient-type, $vendor);
|
77
|
+
|
78
|
+
// Append any additional shorthand args to gradient
|
79
|
+
@if $shorthand-start {
|
80
|
+
@for $j from $shorthand-start through length($shorthand) {
|
81
|
+
$gradient: join($gradient, nth($shorthand, $j), space);
|
82
|
+
}
|
83
|
+
}
|
84
|
+
$backgrounds-prefixed: append($backgrounds-prefixed, $gradient, comma);
|
85
|
+
}
|
86
|
+
// Image with additional properties
|
87
|
+
@else {
|
88
|
+
$backgrounds-prefixed: append($backgrounds-prefixed, $shorthand, comma);
|
89
|
+
}
|
90
|
+
}
|
91
|
+
// If shorthand is a simple string (color or image)
|
92
|
+
@else if $type == string {
|
93
|
+
$backgrounds-prefixed: join($backgrounds-prefixed, $shorthand, comma);
|
94
|
+
}
|
95
|
+
}
|
96
|
+
@return $backgrounds-prefixed;
|
97
|
+
}
|
98
|
+
|
99
|
+
//Examples:
|
100
|
+
//@include background(linear-gradient(top, orange, red));
|
101
|
+
//@include background(radial-gradient(circle at 40% 40%, orange, red));
|
102
|
+
//@include background(url("/images/a.png") no-repeat, linear-gradient(orange, red));
|
103
|
+
//@include background(url("image.png") center center, linear-gradient(orange, red), url("image.png"));
|
@@ -0,0 +1,55 @@
|
|
1
|
+
@mixin border-image($images) {
|
2
|
+
-webkit-border-image: _border-add-prefix($images, webkit);
|
3
|
+
-moz-border-image: _border-add-prefix($images, moz);
|
4
|
+
-o-border-image: _border-add-prefix($images, o);
|
5
|
+
border-image: _border-add-prefix($images);
|
6
|
+
}
|
7
|
+
|
8
|
+
@function _border-add-prefix($images, $vendor: false) {
|
9
|
+
$border-image: null;
|
10
|
+
$images-type: type-of(nth($images, 1));
|
11
|
+
$first-var: nth(nth($images, 1), 1); // Get type of Gradient (Linear || radial)
|
12
|
+
|
13
|
+
// If input is a gradient
|
14
|
+
@if $images-type == string {
|
15
|
+
@if ($first-var == "linear") or ($first-var == "radial") {
|
16
|
+
$gradient-type: nth($images, 1); // Get type of gradient (linear || radial)
|
17
|
+
$gradient-pos: nth($images, 2); // Get gradient position
|
18
|
+
$gradient-args: nth($images, 3); // Get actual gradient (red, blue)
|
19
|
+
$gradient-positions: _gradient-positions-parser($gradient-type, $gradient-pos);
|
20
|
+
$border-image: _render-gradients($gradient-positions, $gradient-args, $gradient-type, $vendor);
|
21
|
+
}
|
22
|
+
// If input is a URL
|
23
|
+
@else {
|
24
|
+
$border-image: $images;
|
25
|
+
}
|
26
|
+
}
|
27
|
+
// If input is gradient or url + additional args
|
28
|
+
@else if $images-type == list {
|
29
|
+
$type: type-of(nth($images, 1)); // Get type of variable - List or String
|
30
|
+
|
31
|
+
// If variable is a list - Gradient
|
32
|
+
@if $type == list {
|
33
|
+
$gradient: nth($images, 1);
|
34
|
+
$gradient-type: nth($gradient, 1); // Get type of gradient (linear || radial)
|
35
|
+
$gradient-pos: nth($gradient, 2); // Get gradient position
|
36
|
+
$gradient-args: nth($gradient, 3); // Get actual gradient (red, blue)
|
37
|
+
$gradient-positions: _gradient-positions-parser($gradient-type, $gradient-pos);
|
38
|
+
$border-image: _render-gradients($gradient-positions, $gradient-args, $gradient-type, $vendor);
|
39
|
+
|
40
|
+
@for $i from 2 through length($images) {
|
41
|
+
$border-image: append($border-image, nth($images, $i));
|
42
|
+
}
|
43
|
+
}
|
44
|
+
}
|
45
|
+
@return $border-image;
|
46
|
+
}
|
47
|
+
|
48
|
+
//Examples:
|
49
|
+
// @include border-image(url("image.png"));
|
50
|
+
// @include border-image(url("image.png") 20 stretch);
|
51
|
+
// @include border-image(linear-gradient(45deg, orange, yellow));
|
52
|
+
// @include border-image(linear-gradient(45deg, orange, yellow) stretch);
|
53
|
+
// @include border-image(linear-gradient(45deg, orange, yellow) 20 30 40 50 stretch round);
|
54
|
+
// @include border-image(radial-gradient(top, cover, orange, yellow, orange));
|
55
|
+
|
@@ -0,0 +1,22 @@
|
|
1
|
+
//************************************************************************//
|
2
|
+
// Shorthand Border-radius mixins
|
3
|
+
//************************************************************************//
|
4
|
+
@mixin border-top-radius($radii) {
|
5
|
+
@include prefixer(border-top-left-radius, $radii, spec);
|
6
|
+
@include prefixer(border-top-right-radius, $radii, spec);
|
7
|
+
}
|
8
|
+
|
9
|
+
@mixin border-bottom-radius($radii) {
|
10
|
+
@include prefixer(border-bottom-left-radius, $radii, spec);
|
11
|
+
@include prefixer(border-bottom-right-radius, $radii, spec);
|
12
|
+
}
|
13
|
+
|
14
|
+
@mixin border-left-radius($radii) {
|
15
|
+
@include prefixer(border-top-left-radius, $radii, spec);
|
16
|
+
@include prefixer(border-bottom-left-radius, $radii, spec);
|
17
|
+
}
|
18
|
+
|
19
|
+
@mixin border-right-radius($radii) {
|
20
|
+
@include prefixer(border-top-right-radius, $radii, spec);
|
21
|
+
@include prefixer(border-bottom-right-radius, $radii, spec);
|
22
|
+
}
|
@@ -0,0 +1,47 @@
|
|
1
|
+
@mixin columns($arg: auto) {
|
2
|
+
// <column-count> || <column-width>
|
3
|
+
@include prefixer(columns, $arg, webkit moz spec);
|
4
|
+
}
|
5
|
+
|
6
|
+
@mixin column-count($int: auto) {
|
7
|
+
// auto || integer
|
8
|
+
@include prefixer(column-count, $int, webkit moz spec);
|
9
|
+
}
|
10
|
+
|
11
|
+
@mixin column-gap($length: normal) {
|
12
|
+
// normal || length
|
13
|
+
@include prefixer(column-gap, $length, webkit moz spec);
|
14
|
+
}
|
15
|
+
|
16
|
+
@mixin column-fill($arg: auto) {
|
17
|
+
// auto || length
|
18
|
+
@include prefixer(columns-fill, $arg, webkit moz spec);
|
19
|
+
}
|
20
|
+
|
21
|
+
@mixin column-rule($arg) {
|
22
|
+
// <border-width> || <border-style> || <color>
|
23
|
+
@include prefixer(column-rule, $arg, webkit moz spec);
|
24
|
+
}
|
25
|
+
|
26
|
+
@mixin column-rule-color($color) {
|
27
|
+
@include prefixer(column-rule-color, $color, webkit moz spec);
|
28
|
+
}
|
29
|
+
|
30
|
+
@mixin column-rule-style($style: none) {
|
31
|
+
// none | hidden | dashed | dotted | double | groove | inset | inset | outset | ridge | solid
|
32
|
+
@include prefixer(column-rule-style, $style, webkit moz spec);
|
33
|
+
}
|
34
|
+
|
35
|
+
@mixin column-rule-width ($width: none) {
|
36
|
+
@include prefixer(column-rule-width, $width, webkit moz spec);
|
37
|
+
}
|
38
|
+
|
39
|
+
@mixin column-span($arg: none) {
|
40
|
+
// none || all
|
41
|
+
@include prefixer(column-span, $arg, webkit moz spec);
|
42
|
+
}
|
43
|
+
|
44
|
+
@mixin column-width($length: auto) {
|
45
|
+
// auto || length
|
46
|
+
@include prefixer(column-width, $length, webkit moz spec);
|
47
|
+
}
|
@@ -0,0 +1,52 @@
|
|
1
|
+
// CSS3 Flexible Box Model and property defaults
|
2
|
+
|
3
|
+
// Custom shorthand notation for flexbox
|
4
|
+
@mixin box($orient: inline-axis, $pack: start, $align: stretch) {
|
5
|
+
@include display-box;
|
6
|
+
@include box-orient($orient);
|
7
|
+
@include box-pack($pack);
|
8
|
+
@include box-align($align);
|
9
|
+
}
|
10
|
+
|
11
|
+
@mixin display-box {
|
12
|
+
display: -webkit-box;
|
13
|
+
display: -moz-box;
|
14
|
+
display: box;
|
15
|
+
}
|
16
|
+
|
17
|
+
@mixin box-orient($orient: inline-axis) {
|
18
|
+
// horizontal|vertical|inline-axis|block-axis|inherit
|
19
|
+
@include prefixer(box-orient, $orient, webkit moz spec);
|
20
|
+
}
|
21
|
+
|
22
|
+
@mixin box-pack($pack: start) {
|
23
|
+
// start|end|center|justify
|
24
|
+
@include prefixer(box-pack, $pack, webkit moz spec);
|
25
|
+
}
|
26
|
+
|
27
|
+
@mixin box-align($align: stretch) {
|
28
|
+
// start|end|center|baseline|stretch
|
29
|
+
@include prefixer(box-align, $align, webkit moz spec);
|
30
|
+
}
|
31
|
+
|
32
|
+
@mixin box-direction($direction: normal) {
|
33
|
+
// normal|reverse|inherit
|
34
|
+
@include prefixer(box-direction, $direction, webkit moz spec);
|
35
|
+
}
|
36
|
+
|
37
|
+
@mixin box-lines($lines: single) {
|
38
|
+
// single|multiple
|
39
|
+
@include prefixer(box-lines, $lines, webkit moz spec);
|
40
|
+
}
|
41
|
+
|
42
|
+
@mixin box-ordinal-group($int: 1) {
|
43
|
+
@include prefixer(box-ordinal-group, $int, webkit moz spec);
|
44
|
+
}
|
45
|
+
|
46
|
+
@mixin box-flex($value: 0.0) {
|
47
|
+
@include prefixer(box-flex, $value, webkit moz spec);
|
48
|
+
}
|
49
|
+
|
50
|
+
@mixin box-flex-group($int: 1) {
|
51
|
+
@include prefixer(box-flex-group, $int, webkit moz spec);
|
52
|
+
}
|
@@ -0,0 +1,23 @@
|
|
1
|
+
// Order of the includes matters, and it is: normal, bold, italic, bold+italic.
|
2
|
+
|
3
|
+
@mixin font-face($font-family, $file-path, $weight: normal, $style: normal, $asset-pipeline: false ) {
|
4
|
+
@font-face {
|
5
|
+
font-family: $font-family;
|
6
|
+
font-weight: $weight;
|
7
|
+
font-style: $style;
|
8
|
+
|
9
|
+
@if $asset-pipeline == true {
|
10
|
+
src: font-url('#{$file-path}.eot');
|
11
|
+
src: font-url('#{$file-path}.eot?#iefix') format('embedded-opentype'),
|
12
|
+
font-url('#{$file-path}.woff') format('woff'),
|
13
|
+
font-url('#{$file-path}.ttf') format('truetype'),
|
14
|
+
font-url('#{$file-path}.svg##{$font-family}') format('svg');
|
15
|
+
} @else {
|
16
|
+
src: url('#{$file-path}.eot');
|
17
|
+
src: url('#{$file-path}.eot?#iefix') format('embedded-opentype'),
|
18
|
+
url('#{$file-path}.woff') format('woff'),
|
19
|
+
url('#{$file-path}.ttf') format('truetype'),
|
20
|
+
url('#{$file-path}.svg##{$font-family}') format('svg');
|
21
|
+
}
|
22
|
+
}
|
23
|
+
}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
// HiDPI mixin. Default value set to 1.3 to target Google Nexus 7 (http://bjango.com/articles/min-device-pixel-ratio/)
|
2
|
+
@mixin hidpi($ratio: 1.3) {
|
3
|
+
@media only screen and (-webkit-min-device-pixel-ratio: $ratio),
|
4
|
+
only screen and (min--moz-device-pixel-ratio: $ratio),
|
5
|
+
only screen and (-o-min-device-pixel-ratio: #{$ratio}/1),
|
6
|
+
only screen and (min-resolution: #{round($ratio*96)}dpi),
|
7
|
+
only screen and (min-resolution: #{$ratio}dppx) {
|
8
|
+
@content;
|
9
|
+
}
|
10
|
+
}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
@mixin image-rendering ($mode:optimizeQuality) {
|
2
|
+
|
3
|
+
@if ($mode == optimize-contrast) {
|
4
|
+
image-rendering: -moz-crisp-edges;
|
5
|
+
image-rendering: -o-crisp-edges;
|
6
|
+
image-rendering: -webkit-optimize-contrast;
|
7
|
+
image-rendering: optimize-contrast;
|
8
|
+
}
|
9
|
+
|
10
|
+
@else {
|
11
|
+
image-rendering: $mode;
|
12
|
+
}
|
13
|
+
}
|
@@ -0,0 +1,43 @@
|
|
1
|
+
// Adds keyframes blocks for supported prefixes, removing redundant prefixes in the block's content
|
2
|
+
@mixin keyframes($name) {
|
3
|
+
$original-prefix-for-webkit: $prefix-for-webkit;
|
4
|
+
$original-prefix-for-mozilla: $prefix-for-mozilla;
|
5
|
+
$original-prefix-for-microsoft: $prefix-for-microsoft;
|
6
|
+
$original-prefix-for-opera: $prefix-for-opera;
|
7
|
+
$original-prefix-for-spec: $prefix-for-spec;
|
8
|
+
|
9
|
+
@if $original-prefix-for-webkit {
|
10
|
+
@include disable-prefix-for-all();
|
11
|
+
$prefix-for-webkit: true;
|
12
|
+
@-webkit-keyframes #{$name} {
|
13
|
+
@content;
|
14
|
+
}
|
15
|
+
}
|
16
|
+
@if $original-prefix-for-mozilla {
|
17
|
+
@include disable-prefix-for-all();
|
18
|
+
$prefix-for-mozilla: true;
|
19
|
+
@-moz-keyframes #{$name} {
|
20
|
+
@content;
|
21
|
+
}
|
22
|
+
}
|
23
|
+
@if $original-prefix-for-opera {
|
24
|
+
@include disable-prefix-for-all();
|
25
|
+
$prefix-for-opera: true;
|
26
|
+
@-o-keyframes #{$name} {
|
27
|
+
@content;
|
28
|
+
}
|
29
|
+
}
|
30
|
+
@if $original-prefix-for-spec {
|
31
|
+
@include disable-prefix-for-all();
|
32
|
+
$prefix-for-spec: true;
|
33
|
+
@keyframes #{$name} {
|
34
|
+
@content;
|
35
|
+
}
|
36
|
+
}
|
37
|
+
|
38
|
+
$prefix-for-webkit: $original-prefix-for-webkit;
|
39
|
+
$prefix-for-mozilla: $original-prefix-for-mozilla;
|
40
|
+
$prefix-for-microsoft: $original-prefix-for-microsoft;
|
41
|
+
$prefix-for-opera: $original-prefix-for-opera;
|
42
|
+
$prefix-for-spec: $original-prefix-for-spec;
|
43
|
+
}
|
@@ -0,0 +1,41 @@
|
|
1
|
+
@mixin linear-gradient($pos, $G1, $G2: false,
|
2
|
+
$G3: false, $G4: false,
|
3
|
+
$G5: false, $G6: false,
|
4
|
+
$G7: false, $G8: false,
|
5
|
+
$G9: false, $G10: false,
|
6
|
+
$deprecated-pos1: left top,
|
7
|
+
$deprecated-pos2: left bottom,
|
8
|
+
$fallback: false) {
|
9
|
+
// Detect what type of value exists in $pos
|
10
|
+
$pos-type: type-of(nth($pos, 1));
|
11
|
+
$pos-spec: null;
|
12
|
+
$pos-degree: null;
|
13
|
+
|
14
|
+
// If $pos is missing from mixin, reassign vars and add default position
|
15
|
+
@if ($pos-type == color) or (nth($pos, 1) == "transparent") {
|
16
|
+
$G10: $G9; $G9: $G8; $G8: $G7; $G7: $G6; $G6: $G5;
|
17
|
+
$G5: $G4; $G4: $G3; $G3: $G2; $G2: $G1; $G1: $pos;
|
18
|
+
$pos: null;
|
19
|
+
}
|
20
|
+
|
21
|
+
@if $pos {
|
22
|
+
$positions: _linear-positions-parser($pos);
|
23
|
+
$pos-degree: nth($positions, 1);
|
24
|
+
$pos-spec: nth($positions, 2);
|
25
|
+
}
|
26
|
+
|
27
|
+
$full: compact($G1, $G2, $G3, $G4, $G5, $G6, $G7, $G8, $G9, $G10);
|
28
|
+
|
29
|
+
// Set $G1 as the default fallback color
|
30
|
+
$fallback-color: nth($G1, 1);
|
31
|
+
|
32
|
+
// If $fallback is a color use that color as the fallback color
|
33
|
+
@if (type-of($fallback) == color) or ($fallback == "transparent") {
|
34
|
+
$fallback-color: $fallback;
|
35
|
+
}
|
36
|
+
|
37
|
+
background-color: $fallback-color;
|
38
|
+
background-image: _deprecated-webkit-gradient(linear, $deprecated-pos1, $deprecated-pos2, $full); // Safari <= 5.0
|
39
|
+
background-image: -webkit-linear-gradient($pos-degree $full); // Safari 5.1+, Chrome
|
40
|
+
background-image: unquote("linear-gradient(#{$pos-spec}#{$full})");
|
41
|
+
}
|