compass-core-sass37 1.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.
Files changed (147) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.txt +22 -0
  3. data/VERSION +1 -0
  4. data/data/caniuse.json +1 -0
  5. data/data/caniuse_extras/css-placeholder.json +171 -0
  6. data/lib/compass/browser_support.rb +64 -0
  7. data/lib/compass/configuration/adapters.rb +109 -0
  8. data/lib/compass/configuration/data.rb +199 -0
  9. data/lib/compass/configuration/defaults.rb +207 -0
  10. data/lib/compass/configuration/inheritance.rb +307 -0
  11. data/lib/compass/configuration/paths.rb +19 -0
  12. data/lib/compass/configuration/watch.rb +38 -0
  13. data/lib/compass/configuration.rb +175 -0
  14. data/lib/compass/core/caniuse.rb +314 -0
  15. data/lib/compass/core/generated_version.rb +6 -0
  16. data/lib/compass/core/sass_extensions/functions/colors.rb +67 -0
  17. data/lib/compass/core/sass_extensions/functions/configuration.rb +173 -0
  18. data/lib/compass/core/sass_extensions/functions/constants.rb +56 -0
  19. data/lib/compass/core/sass_extensions/functions/cross_browser_support.rb +270 -0
  20. data/lib/compass/core/sass_extensions/functions/display.rb +32 -0
  21. data/lib/compass/core/sass_extensions/functions/enumerate.rb +7 -0
  22. data/lib/compass/core/sass_extensions/functions/env.rb +72 -0
  23. data/lib/compass/core/sass_extensions/functions/files.rb +33 -0
  24. data/lib/compass/core/sass_extensions/functions/font_files.rb +65 -0
  25. data/lib/compass/core/sass_extensions/functions/gradient_support.rb +859 -0
  26. data/lib/compass/core/sass_extensions/functions/image_size.rb +117 -0
  27. data/lib/compass/core/sass_extensions/functions/inline_image.rb +63 -0
  28. data/lib/compass/core/sass_extensions/functions/lists.rb +102 -0
  29. data/lib/compass/core/sass_extensions/functions/math.rb +105 -0
  30. data/lib/compass/core/sass_extensions/functions/selectors.rb +79 -0
  31. data/lib/compass/core/sass_extensions/functions/urls.rb +315 -0
  32. data/lib/compass/core/sass_extensions/functions.rb +41 -0
  33. data/lib/compass/core/sass_extensions/monkey_patches/browser_support.rb +119 -0
  34. data/lib/compass/core/sass_extensions/monkey_patches/traversal.rb +23 -0
  35. data/lib/compass/core/sass_extensions/monkey_patches.rb +3 -0
  36. data/lib/compass/core/sass_extensions.rb +10 -0
  37. data/lib/compass/core/version.rb +13 -0
  38. data/lib/compass/core.rb +78 -0
  39. data/lib/compass/error.rb +5 -0
  40. data/lib/compass/frameworks.rb +181 -0
  41. data/lib/compass/util.rb +19 -0
  42. data/lib/compass-core.rb +1 -0
  43. data/stylesheets/_compass.scss +3 -0
  44. data/stylesheets/_lemonade.scss +38 -0
  45. data/stylesheets/compass/_configuration.scss +54 -0
  46. data/stylesheets/compass/_css3.scss +21 -0
  47. data/stylesheets/compass/_layout.scss +3 -0
  48. data/stylesheets/compass/_reset-legacy.scss +3 -0
  49. data/stylesheets/compass/_reset.scss +3 -0
  50. data/stylesheets/compass/_support.scss +447 -0
  51. data/stylesheets/compass/_typography.scss +4 -0
  52. data/stylesheets/compass/_utilities.scss +9 -0
  53. data/stylesheets/compass/css3/_animation.scss +122 -0
  54. data/stylesheets/compass/css3/_appearance.scss +17 -0
  55. data/stylesheets/compass/css3/_background-clip.scss +35 -0
  56. data/stylesheets/compass/css3/_background-origin.scss +37 -0
  57. data/stylesheets/compass/css3/_background-size.scss +19 -0
  58. data/stylesheets/compass/css3/_border-radius.scss +107 -0
  59. data/stylesheets/compass/css3/_box-shadow.scss +88 -0
  60. data/stylesheets/compass/css3/_box-sizing.scss +21 -0
  61. data/stylesheets/compass/css3/_box.scss +85 -0
  62. data/stylesheets/compass/css3/_columns.scss +212 -0
  63. data/stylesheets/compass/css3/_deprecated-support.scss +272 -0
  64. data/stylesheets/compass/css3/_filter.scss +50 -0
  65. data/stylesheets/compass/css3/_flexbox.scss +156 -0
  66. data/stylesheets/compass/css3/_font-face.scss +48 -0
  67. data/stylesheets/compass/css3/_hyphenation.scss +71 -0
  68. data/stylesheets/compass/css3/_images.scss +152 -0
  69. data/stylesheets/compass/css3/_inline-block.scss +31 -0
  70. data/stylesheets/compass/css3/_opacity.scss +27 -0
  71. data/stylesheets/compass/css3/_pie.scss +1 -0
  72. data/stylesheets/compass/css3/_regions.scss +27 -0
  73. data/stylesheets/compass/css3/_selection.scss +59 -0
  74. data/stylesheets/compass/css3/_shared.scss +5 -0
  75. data/stylesheets/compass/css3/_text-shadow.scss +82 -0
  76. data/stylesheets/compass/css3/_transform.scss +590 -0
  77. data/stylesheets/compass/css3/_transition.scss +190 -0
  78. data/stylesheets/compass/css3/_user-interface.scss +71 -0
  79. data/stylesheets/compass/layout/_grid-background.scss +178 -0
  80. data/stylesheets/compass/layout/_sticky-footer.scss +23 -0
  81. data/stylesheets/compass/layout/_stretching.scss +24 -0
  82. data/stylesheets/compass/reset/_utilities-legacy.scss +135 -0
  83. data/stylesheets/compass/reset/_utilities.scss +142 -0
  84. data/stylesheets/compass/typography/_links.scss +3 -0
  85. data/stylesheets/compass/typography/_lists.scss +4 -0
  86. data/stylesheets/compass/typography/_text.scss +4 -0
  87. data/stylesheets/compass/typography/_units.scss +183 -0
  88. data/stylesheets/compass/typography/_vertical_rhythm.scss +300 -0
  89. data/stylesheets/compass/typography/links/_hover-link.scss +5 -0
  90. data/stylesheets/compass/typography/links/_link-colors.scss +28 -0
  91. data/stylesheets/compass/typography/links/_unstyled-link.scss +7 -0
  92. data/stylesheets/compass/typography/lists/_bullets.scss +34 -0
  93. data/stylesheets/compass/typography/lists/_horizontal-list.scss +63 -0
  94. data/stylesheets/compass/typography/lists/_inline-block-list.scss +50 -0
  95. data/stylesheets/compass/typography/lists/_inline-list.scss +47 -0
  96. data/stylesheets/compass/typography/text/_ellipsis.scss +25 -0
  97. data/stylesheets/compass/typography/text/_force-wrap.scss +12 -0
  98. data/stylesheets/compass/typography/text/_nowrap.scss +2 -0
  99. data/stylesheets/compass/typography/text/_replacement.scss +74 -0
  100. data/stylesheets/compass/utilities/_color.scss +1 -0
  101. data/stylesheets/compass/utilities/_general.scss +6 -0
  102. data/stylesheets/compass/utilities/_links.scss +5 -0
  103. data/stylesheets/compass/utilities/_lists.scss +6 -0
  104. data/stylesheets/compass/utilities/_print.scss +17 -0
  105. data/stylesheets/compass/utilities/_sass.scss +2 -0
  106. data/stylesheets/compass/utilities/_sprites.scss +2 -0
  107. data/stylesheets/compass/utilities/_tables.scss +3 -0
  108. data/stylesheets/compass/utilities/_text.scss +5 -0
  109. data/stylesheets/compass/utilities/color/_brightness.scss +20 -0
  110. data/stylesheets/compass/utilities/color/_contrast.scss +52 -0
  111. data/stylesheets/compass/utilities/general/_clearfix.scss +44 -0
  112. data/stylesheets/compass/utilities/general/_float.scss +38 -0
  113. data/stylesheets/compass/utilities/general/_hacks.scss +65 -0
  114. data/stylesheets/compass/utilities/general/_min.scss +16 -0
  115. data/stylesheets/compass/utilities/general/_reset.scss +2 -0
  116. data/stylesheets/compass/utilities/general/_tabs.scss +1 -0
  117. data/stylesheets/compass/utilities/general/_tag-cloud.scss +18 -0
  118. data/stylesheets/compass/utilities/links/_hover-link.scss +3 -0
  119. data/stylesheets/compass/utilities/links/_link-colors.scss +3 -0
  120. data/stylesheets/compass/utilities/links/_unstyled-link.scss +3 -0
  121. data/stylesheets/compass/utilities/lists/_bullets.scss +3 -0
  122. data/stylesheets/compass/utilities/lists/_horizontal-list.scss +3 -0
  123. data/stylesheets/compass/utilities/lists/_inline-block-list.scss +3 -0
  124. data/stylesheets/compass/utilities/lists/_inline-list.scss +3 -0
  125. data/stylesheets/compass/utilities/sass/_lists.scss +16 -0
  126. data/stylesheets/compass/utilities/sass/_maps.scss +19 -0
  127. data/stylesheets/compass/utilities/sprites/_base.scss +92 -0
  128. data/stylesheets/compass/utilities/sprites/_sprite-img.scss +81 -0
  129. data/stylesheets/compass/utilities/tables/_alternating-rows-and-columns.scss +22 -0
  130. data/stylesheets/compass/utilities/tables/_borders.scss +38 -0
  131. data/stylesheets/compass/utilities/tables/_scaffolding.scss +9 -0
  132. data/stylesheets/compass/utilities/text/_ellipsis.scss +3 -0
  133. data/stylesheets/compass/utilities/text/_nowrap.scss +3 -0
  134. data/stylesheets/compass/utilities/text/_replacement.scss +3 -0
  135. data/templates/ellipsis/ellipsis.sass +9 -0
  136. data/templates/ellipsis/manifest.rb +27 -0
  137. data/templates/ellipsis/xml/ellipsis.xml +14 -0
  138. data/templates/extension/manifest.rb +26 -0
  139. data/templates/extension/stylesheets/main.sass +1 -0
  140. data/templates/extension/templates/project/manifest.rb +2 -0
  141. data/templates/extension/templates/project/screen.sass +2 -0
  142. data/templates/project/USAGE.markdown +32 -0
  143. data/templates/project/ie.sass +6 -0
  144. data/templates/project/manifest.rb +4 -0
  145. data/templates/project/print.sass +6 -0
  146. data/templates/project/screen.sass +7 -0
  147. metadata +257 -0
@@ -0,0 +1,19 @@
1
+ // Background Size
2
+ @import "compass/support";
3
+
4
+ // The the user threshold for background-clip support. Defaults to `$critical-usage-threshold`
5
+ $background-size-threshold: $critical-usage-threshold !default;
6
+
7
+ // override to change the default
8
+ $default-background-size: 100% auto !default;
9
+
10
+
11
+ // Set the size of background images using px, width and height, or percentages.
12
+ // Currently supported in: Opera, Gecko, Webkit.
13
+ //
14
+ // * percentages are relative to the background-origin (default = padding-box)
15
+ // * mixin defaults to: `$default-background-size`
16
+ @mixin background-size($size...) {
17
+ $size: set-arglist-default($size, $default-background-size);
18
+ @include prefixed-properties(background-img-opts, $background-size-threshold, (background-size: $size));
19
+ }
@@ -0,0 +1,107 @@
1
+ // Border Radius
2
+
3
+ @import "compass/support";
4
+
5
+
6
+ // The the user threshold for border-radius support. Defaults to `$graceful-usage-threshold`
7
+ $border-radius-threshold: $graceful-usage-threshold !default;
8
+
9
+ // The length of a border-radius to be used by default.
10
+ $default-border-radius: 5px !default;
11
+
12
+
13
+ // Round all corners by a specific amount, defaults to value of `$default-border-radius`.
14
+ //
15
+ // When two values are passed, the first is the horizontal radius
16
+ // and the second is the vertical radius.
17
+ //
18
+ // Note: webkit does not support shorthand syntax for several corners at once.
19
+ // So in the case where you pass several values only the first will be passed to webkit.
20
+ //
21
+ // Examples:
22
+ //
23
+ // .simple { @include border-radius(4px, 4px); }
24
+ // .compound { @include border-radius(2px 5px, 3px 6px); }
25
+ // .crazy { @include border-radius(1px 3px 5px 7px, 2px 4px 6px 8px)}
26
+ //
27
+ // Which generates:
28
+ //
29
+ // .simple {
30
+ // -moz-border-radius: 4px / 4px;
31
+ // -webkit-border-radius: 4px 4px;
32
+ // border-radius: 4px / 4px; }
33
+ //
34
+ // .compound {
35
+ // -moz-border-radius: 2px 5px / 3px 6px;
36
+ // -webkit-border-radius: 2px 3px;
37
+ // border-radius: 2px 5px / 3px 6px; }
38
+ //
39
+ // .crazy {
40
+ // -moz-border-radius: 1px 3px 5px 7px / 2px 4px 6px 8px;
41
+ // -webkit-border-radius: 1px 2px;
42
+ // border-radius: 1px 3px 5px 7px / 2px 4px 6px 8px; }
43
+ @mixin border-radius($radius: $default-border-radius, $vertical-radius: false) {
44
+ @include with-each-prefix(border-radius, $border-radius-threshold) {
45
+ @if $current-prefix == -webkit {
46
+ // Legacy Webkit didn't understand the official shorthand syntax for specifying a vertical radius.
47
+ $legacy-webkit-radius: first-value-of($radius);
48
+ @if $vertical-radius { $legacy-webkit-radius: append($legacy-webkit-radius, first-value-of($vertical-radius)); }
49
+ @include prefix-prop(border-radius, $legacy-webkit-radius);
50
+ } @else {
51
+ // Official syntax for everyone else
52
+ @include prefix-prop(border-radius, if($vertical-radius, #{$radius} / #{$vertical-radius}, $radius));
53
+ }
54
+ }
55
+ }
56
+
57
+ // Round radius at position by amount.
58
+ //
59
+ // * legal values for `$vert`: `top`, `bottom`
60
+ // * legal values for `$horz`: `left`, `right`
61
+ @mixin border-corner-radius($vert, $horz, $radius: $default-border-radius) {
62
+ @include with-each-prefix(border-radius, $border-radius-threshold) {
63
+ @if $current-prefix == -moz {
64
+ // Support for mozilla's syntax for specifying a corner
65
+ @include prefix-prop("border-radius-#{$vert}#{$horz}", $radius);
66
+ } @else {
67
+ // Official syntax for everyone else
68
+ @include prefix-prop("border-#{$vert}-#{$horz}-radius", $radius);
69
+ }
70
+ }
71
+ }
72
+
73
+ // Round top-left corner only
74
+ @mixin border-top-left-radius($radius: $default-border-radius) {
75
+ @include border-corner-radius(top, left, $radius); }
76
+
77
+ // Round top-right corner only
78
+ @mixin border-top-right-radius($radius: $default-border-radius) {
79
+ @include border-corner-radius(top, right, $radius); }
80
+
81
+ // Round bottom-left corner only
82
+ @mixin border-bottom-left-radius($radius: $default-border-radius) {
83
+ @include border-corner-radius(bottom, left, $radius); }
84
+
85
+ // Round bottom-right corner only
86
+ @mixin border-bottom-right-radius($radius: $default-border-radius) {
87
+ @include border-corner-radius(bottom, right, $radius); }
88
+
89
+ // Round both top corners by amount
90
+ @mixin border-top-radius($radius: $default-border-radius) {
91
+ @include border-top-left-radius($radius);
92
+ @include border-top-right-radius($radius); }
93
+
94
+ // Round both right corners by amount
95
+ @mixin border-right-radius($radius: $default-border-radius) {
96
+ @include border-top-right-radius($radius);
97
+ @include border-bottom-right-radius($radius); }
98
+
99
+ // Round both bottom corners by amount
100
+ @mixin border-bottom-radius($radius: $default-border-radius) {
101
+ @include border-bottom-left-radius($radius);
102
+ @include border-bottom-right-radius($radius); }
103
+
104
+ // Round both left corners by amount
105
+ @mixin border-left-radius($radius: $default-border-radius) {
106
+ @include border-top-left-radius($radius);
107
+ @include border-bottom-left-radius($radius); }
@@ -0,0 +1,88 @@
1
+ // Box Shadow
2
+
3
+ @import "compass/support";
4
+
5
+ // The prefixed support threshold for box-shadow.
6
+ // Defaults to the $graceful-usage-threshold.
7
+ $box-shadow-support-threshold: $graceful-usage-threshold !default;
8
+
9
+
10
+ // The default color for box shadows
11
+ $default-box-shadow-color: #333333 !default;
12
+
13
+ // The default horizontal offset. Positive is to the right.
14
+ $default-box-shadow-h-offset: 0px !default;
15
+
16
+ // The default vertical offset. Positive is down.
17
+ $default-box-shadow-v-offset: 0px !default;
18
+
19
+ // The default blur length.
20
+ $default-box-shadow-blur: 5px !default;
21
+
22
+ // The default spread length.
23
+ $default-box-shadow-spread: null !default;
24
+
25
+ // The default shadow inset: inset or null (for standard shadow).
26
+ $default-box-shadow-inset: null !default;
27
+
28
+ @function default-box-shadow() {
29
+ @return compact(if($default-box-shadow-inset, inset, null)
30
+ $default-box-shadow-h-offset
31
+ $default-box-shadow-v-offset
32
+ $default-box-shadow-blur
33
+ $default-box-shadow-spread
34
+ $default-box-shadow-color);
35
+ }
36
+
37
+ // Provides cross-browser for Webkit, Gecko, and CSS3 box shadows
38
+ // when one or more box shadows are needed.
39
+ // Each shadow argument should adhere to the standard css3 syntax
40
+ // for the box-shadow property.
41
+ @mixin box-shadow($shadow...) {
42
+ $shadow: set-arglist-default($shadow, default-box-shadow());
43
+ @include prefixed-properties(css-boxshadow, $box-shadow-support-threshold, (box-shadow: $shadow));
44
+ }
45
+
46
+ // Provides a single cross-browser CSS box shadow for Webkit, Gecko, and CSS3.
47
+ // Includes default arguments for color, horizontal offset, vertical offset, blur length, spread length, and inset.
48
+ @mixin single-box-shadow(
49
+ $hoff : null,
50
+ $voff : null,
51
+ $blur : null,
52
+ $spread : null,
53
+ $color : null,
54
+ $inset : $default-box-shadow-inset
55
+ ) {
56
+ // Handle legacy argument order
57
+ @if not ($hoff == none or $hoff == null) and type-of($hoff) != number {
58
+ @warn "The $color argument for single-box-shadow is now the 5th argument instead of the 1st.";
59
+ $tmp-color: $color;
60
+ $color: $hoff;
61
+ $hoff: $voff;
62
+ $voff: $blur;
63
+ $blur: $spread;
64
+ $spread: $tmp-color
65
+ }
66
+
67
+ // Need to set these defaults here instead of the arglist to support the above backwards compat handling
68
+ @if $hoff == null { $hoff: $default-box-shadow-h-offset; }
69
+ @if $voff == null { $hoff: $default-box-shadow-v-offset; }
70
+ @if $blur == null { $blur: $default-box-shadow-blur; }
71
+ @if $spread == null { $spread: $default-box-shadow-spread; }
72
+ @if $color == null { $color: $default-box-shadow-color; }
73
+
74
+ @if not ($inset == true or $inset == false or $inset == null or $inset == inset) {
75
+ @warn "$inset expected to be true or the inset keyword. Got #{$inset} instead. Using: inset";
76
+ }
77
+
78
+ @if $hoff == none {
79
+ @include box-shadow(none);
80
+ } @else {
81
+ $full : $hoff $voff;
82
+ @if $blur { $full: $full $blur; }
83
+ @if $spread { $full: $full $spread; }
84
+ @if $color { $full: $full $color; }
85
+ @if $inset { $full: inset $full; }
86
+ @include box-shadow($full);
87
+ }
88
+ }
@@ -0,0 +1,21 @@
1
+ // Box Sizing
2
+
3
+ @import "compass/support";
4
+
5
+ // The prefixed support threshold for box-sizing.
6
+ // Defaults to the $graceful-usage-threshold.
7
+ $box-sizing-support-threshold: $critical-usage-threshold !default;
8
+
9
+ // The default box-sizing model when no argument is provided to the box-sizing mixin: [ content-box | border-box | padding-box ]
10
+ //
11
+ // The browser default is content-box, compass defaults to border-box.
12
+ $default-box-sizing: border-box !default;
13
+
14
+
15
+ // Change the box model for Mozilla, Webkit, IE8 and the future
16
+ //
17
+ // $box-model: [ content-box | border-box | padding-box ]
18
+ @mixin box-sizing($box-model: $default-box-sizing) {
19
+ $box-model: unquote($box-model);
20
+ @include prefixed-properties(css3-boxsizing, $box-sizing-support-threshold, (box-sizing: $box-model));
21
+ }
@@ -0,0 +1,85 @@
1
+ // Flexible Box
2
+ @import "deprecated-support";
3
+
4
+ @warn "The compass/css3/box module is DEPRECATED and will be removed in the next release. Please use compass/css3/flexbox instead.";
5
+
6
+ // @private css3-feature-support variables must always include a list of five boolean values
7
+ $legacy-box-support: -moz, -webkit, not -o, -ms, not -khtml;
8
+
9
+ // Default box orientation, assuming that the user wants something less block-like
10
+ $default-box-orient : horizontal !default;
11
+
12
+ // Default box-align
13
+ $default-box-align : stretch !default;
14
+
15
+ // Default box flex
16
+ $default-box-flex : 0 !default;
17
+
18
+ // Default flex group
19
+ $default-box-flex-group : 1 !default;
20
+
21
+ // Box direction default value
22
+ $default-box-direction : normal !default;
23
+
24
+ // Default ordinal group
25
+ $default-box-ordinal-group : 1 !default;
26
+
27
+ // Default box lines
28
+ $default-box-lines : single !default;
29
+
30
+ // Default box pack
31
+ $default-box-pack : start !default;
32
+
33
+
34
+ // Apply 'display:box;' to an element.
35
+ // - must be used for any of the other flexbox mixins to work properly
36
+ @mixin display-box {
37
+ @include experimental-value(display, box, $legacy-box-support...);
38
+ }
39
+
40
+ // Box orientation [ horizontal | vertical | inline-axis | block-axis | inherit ]
41
+ @mixin box-orient($orientation: $default-box-orient) {
42
+ $orientation : unquote($orientation);
43
+ @include experimental(box-orient, $orientation, $legacy-box-support...);
44
+ }
45
+
46
+ // Box align [ start | end | center | baseline | stretch ]
47
+ @mixin box-align($alignment: $default-box-align) {
48
+ $alignment : unquote($alignment);
49
+ @include experimental(box-align, $alignment, $legacy-box-support...);
50
+ }
51
+
52
+ // Takes an int argument for box flex. Apply this to the children inside the box.
53
+ //
54
+ // For example: "div.display-box > div.child-box" would get the box flex mixin.
55
+ @mixin box-flex($flex: $default-box-flex) {
56
+ @include experimental(box-flex, $flex, $legacy-box-support...);
57
+ }
58
+
59
+ // Takes an int argument for flexible grouping
60
+ @mixin box-flex-group($group: $default-box-flex-group) {
61
+ @include experimental(box-flex-group, $group, $legacy-box-support...);
62
+ }
63
+
64
+ // Takes an int argument for ordinal grouping and rearranging the order
65
+ @mixin box-ordinal-group($group: $default-box-ordinal-group) {
66
+ @include experimental(box-ordinal-group, $group, $legacy-box-support...);
67
+ }
68
+
69
+ // Box direction [ normal | reverse | inherit ]
70
+ @mixin box-direction($direction: $default-box-direction) {
71
+ $direction: unquote($direction);
72
+ @include experimental(box-direction, $direction, $legacy-box-support...);
73
+ }
74
+
75
+ // Box lines [ single | multiple ]
76
+ @mixin box-lines($lines: $default-box-lines) {
77
+ $lines: unquote($lines);
78
+ @include experimental(box-lines, $lines, $legacy-box-support...);
79
+ }
80
+
81
+ // Box pack [ start | end | center | justify ]
82
+ @mixin box-pack($pack: $default-box-pack) {
83
+ $pack: unquote($pack);
84
+ @include experimental(box-pack, $pack, $legacy-box-support...);
85
+ }
@@ -0,0 +1,212 @@
1
+ // Columns
2
+ @import "compass/support";
3
+
4
+ // The prefixed support threshold for columns.
5
+ // Defaults to the $critical-usage-threshold.
6
+ $multicolumn-support-threshold: $critical-usage-threshold !default;
7
+
8
+
9
+ // Specify the shorthand `columns` property.
10
+ //
11
+ // Example:
12
+ //
13
+ // @include columns(20em 2);
14
+ @mixin columns($width-and-count) {
15
+ @include prefixed-properties(multicolumn, $multicolumn-support-threshold,(
16
+ columns: $width-and-count
17
+ ));
18
+ }
19
+
20
+ // Specify the number of columns
21
+ @mixin column-count($count) {
22
+ @include prefixed-properties(multicolumn, $multicolumn-support-threshold,(
23
+ column-count: $count
24
+ ));
25
+ }
26
+
27
+ // Specify the gap between columns e.g. `20px`
28
+ @mixin column-gap($width) {
29
+ @include prefixed-properties(multicolumn, $multicolumn-support-threshold,(
30
+ column-gap: $width
31
+ ));
32
+ }
33
+
34
+ // Specify the width of columns e.g. `100px`
35
+ @mixin column-width($width) {
36
+ @include prefixed-properties(multicolumn, $multicolumn-support-threshold,(
37
+ column-width: $width
38
+ ));
39
+ }
40
+
41
+ // Specify how many columns an element should span across.
42
+ //
43
+ // * legal values are 1, all
44
+ @mixin column-span($columns) {
45
+ @include prefixed-properties(multicolumn, $multicolumn-support-threshold,(
46
+ column-span: $columns
47
+ ));
48
+ }
49
+
50
+ // Specify the width of the rule between columns e.g. `1px`
51
+ @mixin column-rule-width($width) {
52
+ @include prefixed-properties(multicolumn, $multicolumn-support-threshold,(
53
+ rule-width: $width
54
+ ));
55
+ }
56
+
57
+ // Specify the style of the rule between columns e.g. `dotted`.
58
+ // This works like border-style.
59
+ @mixin column-rule-style($style) {
60
+ @include prefixed-properties(multicolumn, $multicolumn-support-threshold,(
61
+ rule-style: $style
62
+ ));
63
+ }
64
+
65
+ // Specify the color of the rule between columns e.g. `blue`.
66
+ // This works like border-color.
67
+ @mixin column-rule-color($color) {
68
+ @include prefixed-properties(multicolumn, $multicolumn-support-threshold,(
69
+ rule-color: $color
70
+ ));
71
+ }
72
+
73
+ // Mixin encompassing all column rule properties
74
+ // For example:
75
+ //
76
+ // @include column-rule(1px, solid, #c00)
77
+ //
78
+ // Or the values can be space separated:
79
+ //
80
+ // @include column-rule(1px solid #c00)
81
+ @mixin column-rule($width, $style: null, $color: null) {
82
+ @include prefixed-properties(multicolumn, $multicolumn-support-threshold,(
83
+ column-rule: $width $style $color
84
+ ));
85
+ }
86
+
87
+ // All-purpose mixin for setting column breaks.
88
+ //
89
+ // * legal values for $type : before, after, inside
90
+ // * legal values for '$value' are dependent on $type
91
+ // * when $type = before, legal values are auto, always, avoid, left, right, page, column, avoid-page, avoid-column
92
+ // * when $type = after, legal values are auto, always, avoid, left, right, page, column, avoid-page, avoid-column
93
+ // * when $type = inside, legal values are auto, avoid, avoid-page, avoid-column
94
+ //
95
+ // Examples:
96
+ // h2.before {@include column-break(before, always);}
97
+ // h2.after {@include column-break(after, always); }
98
+ // h2.inside {@include column-break(inside); }
99
+ //
100
+ // Which generates:
101
+ // h2.before {
102
+ // -webkit-column-break-before: always;
103
+ // break-before: always;}
104
+ //
105
+ // h2.after {
106
+ // -webkit-column-break-after: always;
107
+ // break-after: always; }
108
+ //
109
+ // h2.inside {
110
+ // -webkit-column-break-inside: auto;
111
+ // break-inside: auto;}
112
+
113
+ @mixin column-break($type: before, $value: auto){
114
+ @include with-each-prefix(multicolumn, $multicolumn-support-threshold) {
115
+ @if $current-prefix == -webkit {
116
+ // Webkit uses non-standard syntax
117
+ -webkit-column-break-#{$type}: $value;
118
+ } @else if $current-prefix == -moz {
119
+ // Moz uses a different non-standard syntax
120
+ -moz-page-break-#{$type}: $value;
121
+ } @else {
122
+ @include prefix-prop(break-#{$type}, $value);
123
+ }
124
+ }
125
+ }
126
+
127
+ // Mixin for setting break-before
128
+ //
129
+ // * legal values are auto, always, avoid, left, right, page, column, avoid-page, avoid-column
130
+ //
131
+ // Example:
132
+ // h2.before {@include break-before(always);}
133
+ //
134
+ // Which generates:
135
+ //
136
+ // h2.before {
137
+ // -webkit-column-break-before: always;
138
+ // break-before: always;}
139
+ @mixin break-before($value: auto){
140
+ @include column-break(before, $value);
141
+ }
142
+
143
+ @mixin column-break-before($value: auto){
144
+ @include column-break(before, $value);
145
+ @warn '"column-break-before" has been deprecated in favor of the official syntax: "break-before".';
146
+ }
147
+
148
+ // Mixin for setting break-after
149
+ //
150
+ // * legal values are auto, always, avoid, left, right, page, column, avoid-page, avoid-column
151
+ //
152
+ // Example:
153
+ // h2.after {@include break-after(always); }
154
+ //
155
+ // Which generates:
156
+ //
157
+ // h2.after {
158
+ // -webkit-column-break-after: always;
159
+ // break-after: always; }
160
+ @mixin break-after($value: auto){
161
+ @include column-break(after, $value);
162
+ }
163
+
164
+ @mixin column-break-after($value: auto){
165
+ @include column-break(after, $value);
166
+ @warn '"column-break-after" has been deprecated in favor of the official syntax: "break-after".';
167
+ }
168
+
169
+ // Mixin for setting break-inside
170
+ //
171
+ // * legal values are auto, avoid, avoid-page, avoid-column
172
+ //
173
+ // Example:
174
+ // h2.inside {@include break-inside();}
175
+ //
176
+ // Which generates:
177
+ //
178
+ // h2.inside {
179
+ // -webkit-column-break-inside: auto;
180
+ // break-inside: auto;}
181
+ @mixin break-inside($value: auto){
182
+ @include column-break(inside, $value);
183
+ }
184
+
185
+ @mixin column-break-inside($value: auto){
186
+ @include column-break(inside, $value);
187
+ @warn '"column-break-inside" has been deprecated in favor of the official syntax: "break-inside".';
188
+ }
189
+
190
+ // Mixin for setting column-span
191
+ //
192
+ // * legal values: none, all
193
+ //
194
+ // Example:
195
+ // h2.span {@include column-span();}
196
+ @mixin column-span($span: all){
197
+ @include prefixed-properties(multicolumn, $multicolumn-support-threshold,(
198
+ column-span: $span
199
+ ));
200
+ }
201
+
202
+ // Mixin for setting column-fill
203
+ //
204
+ // * legal values: auto, balance
205
+ //
206
+ // Example:
207
+ // h2.fill {@include column-fill();}
208
+ @mixin column-fill($fill: balance){
209
+ @include prefixed-properties(multicolumn, $multicolumn-support-threshold,(
210
+ column-fill: $fill
211
+ ));
212
+ }