piecss 0.1.6 → 0.1.6.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/sass/piecss/behavior/base/normalize.scss +1 -1
- data/sass/piecss/behavior/grid/rhythm.scss +0 -33
- data/sass/piecss/settings/constants.scss +6 -0
- data/sass/piecss/settings/form.scss +5 -5
- data/sass/piecss/utilities/layout.scss +9 -5
- data/sass/piecss/utilities/miscellaneous.scss +49 -61
- data/sass/piecss/utilities/rhythm.scss +47 -86
- data/sass/piecss/utilities/sides.scss +244 -252
- data/sass/piecss/utilities/typography.scss +22 -27
- data/sass/piecss/utilities/units.scss +37 -59
- data/sass/piecss/utilities.scss +1 -0
- data/templates/project/screen.scss +4 -4
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1344c40bbaf258d5fcc0b991fbe2bd3307b300d6
|
4
|
+
data.tar.gz: cf60c8b0b54458900350507792eb64c996bd7368
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d7696c62cfbe406c4e19b4833779807ca5fde6e301769fc73d7bcb730c06367d683134dad0e04f68a79524535574dea789803a14523e0c47df3608e1f2985797
|
7
|
+
data.tar.gz: ef2a1e52dfe99c0f0316a18e874b6269794fd4ce95225a5e3651fb514727cf3e6158faa565cf8974f7467934cf5a8d41acad7c2dab2d315f368121a9f503cfd2
|
@@ -32,7 +32,7 @@ html {
|
|
32
32
|
$font-family: extract-type-family($default-font);
|
33
33
|
|
34
34
|
$font-size: to-unit($default-font-size, 1%, $base-font-size);
|
35
|
-
$line-height:
|
35
|
+
$line-height: line-height($default-line-height, $base-font-size, $line-height-unit);
|
36
36
|
|
37
37
|
font: #{$font-style} #{$font-variant} #{$font-weight} #{$font-size}/#{$line-height} #{$font-family};
|
38
38
|
|
@@ -18,37 +18,4 @@ Debug helpers
|
|
18
18
|
body {
|
19
19
|
@extend %debug;
|
20
20
|
}
|
21
|
-
}
|
22
|
-
|
23
|
-
%rhythm-padding {
|
24
|
-
@include vrhythm(1, padding-top);
|
25
|
-
@include vrhythm(1, padding-bottom);
|
26
|
-
&--top {
|
27
|
-
@include vrhythm(1, padding-top);
|
28
|
-
}
|
29
|
-
&--bottom {
|
30
|
-
@include vrhythm(1, padding-bottom);
|
31
|
-
}
|
32
|
-
}
|
33
|
-
|
34
|
-
%rhythm-margin {
|
35
|
-
@include vrhythm(0, margin-top);
|
36
|
-
@include vrhythm(1, margin-bottom);
|
37
|
-
&--top {
|
38
|
-
@include vrhythm(1, margin-top);
|
39
|
-
}
|
40
|
-
&--bottom {
|
41
|
-
@include vrhythm(1, margin-bottom);
|
42
|
-
}
|
43
|
-
}
|
44
|
-
|
45
|
-
$single-direction-selector: '';
|
46
|
-
@if length($single-direction-elements) > 0 and $single-direction-elements != '' {
|
47
|
-
@each $element in $single-direction-elements {
|
48
|
-
// This leaves the last element with a comma, but the compiler will strip that out anyway so leave for now and revisit later
|
49
|
-
$single-direction-selector: $single-direction-selector + $element + ',' !global;
|
50
|
-
}
|
51
|
-
#{$single-direction-selector} {
|
52
|
-
@extend %rhythm-margin;
|
53
|
-
}
|
54
21
|
}
|
@@ -3,6 +3,12 @@
|
|
3
3
|
|
4
4
|
$browser-default-font-size: 16px;
|
5
5
|
|
6
|
+
$keys-side: top right bottom left;
|
7
|
+
$keys-padding: $keys-side;
|
8
|
+
$keys-margin: $keys-side;
|
9
|
+
$keys-border: width style color;
|
10
|
+
$keys-corner: top-left top-right right-bottom left-bottom;
|
11
|
+
|
6
12
|
|
7
13
|
$aliceblue: #f0f8ff;
|
8
14
|
$antiquewhite: #faebd7;
|
@@ -233,7 +233,7 @@ $form-elements: ();
|
|
233
233
|
* @type {Number}
|
234
234
|
*/
|
235
235
|
|
236
|
-
$field-padding-top:
|
236
|
+
$field-padding-top: rhythm(.25) !default;
|
237
237
|
|
238
238
|
/**
|
239
239
|
* Field right-padding.
|
@@ -253,7 +253,7 @@ $field-padding-right: .5em !default;
|
|
253
253
|
* @type {Number}
|
254
254
|
*/
|
255
255
|
|
256
|
-
$field-padding-bottom:
|
256
|
+
$field-padding-bottom: rhythm(.25) !default;
|
257
257
|
|
258
258
|
/**
|
259
259
|
* Field left-padding.
|
@@ -353,7 +353,7 @@ $field-width: 100% !default;
|
|
353
353
|
* @type {Number}
|
354
354
|
*/
|
355
355
|
|
356
|
-
$field-height: $default-line-height + 2
|
356
|
+
$field-height: $default-line-height + 2 * $field-border-width + $field-padding-top + $field-padding-bottom !default;
|
357
357
|
|
358
358
|
/**
|
359
359
|
* Field line-height, relevant for text-area.
|
@@ -619,7 +619,7 @@ $textarea-height: auto !default;
|
|
619
619
|
* @type {Number | String}
|
620
620
|
*/
|
621
621
|
|
622
|
-
$textarea-height-medium:
|
622
|
+
$textarea-height-medium: rhythm(5) - 2*$field-border-width !default;
|
623
623
|
|
624
624
|
/**
|
625
625
|
* Alternate height of textarea element, large.
|
@@ -629,7 +629,7 @@ $textarea-height-medium: vrhythm(5) - 2*$field-border-width !default;
|
|
629
629
|
* @type {Number | String}
|
630
630
|
*/
|
631
631
|
|
632
|
-
$textarea-height-large:
|
632
|
+
$textarea-height-large: rhythm(10) - 2*$field-border-width !default;
|
633
633
|
|
634
634
|
$form-elements: add-properties(
|
635
635
|
(
|
@@ -63,6 +63,10 @@
|
|
63
63
|
|
64
64
|
@function fraction-to-text($fraction)
|
65
65
|
{
|
66
|
+
@if type-of($fraction)==string {
|
67
|
+
@warn "The function fraction-to-text only accepts unquoted fractions (1/2 and not \"1/2\")";
|
68
|
+
}
|
69
|
+
|
66
70
|
@if $fraction == 1/1 { @return "full"; }
|
67
71
|
@if $fraction == 1/2 { @return "half"; }
|
68
72
|
@if $fraction == 1/3 { @return "third"; }
|
@@ -145,7 +149,7 @@
|
|
145
149
|
@if $fraction == 13/16 { @return "thirteen-sixteenth"; }
|
146
150
|
@if $fraction == 15/16 { @return "sixteen-sixteenth"; }
|
147
151
|
|
148
|
-
@return
|
152
|
+
@return "full";
|
149
153
|
}
|
150
154
|
|
151
155
|
|
@@ -244,18 +248,18 @@
|
|
244
248
|
|
245
249
|
@if ($use-margin) {
|
246
250
|
@if $left != false {
|
247
|
-
margin-left:
|
251
|
+
margin-left: rhythm($left);
|
248
252
|
}
|
249
253
|
@if $right != false {
|
250
|
-
margin-right:
|
254
|
+
margin-right: rhythm($right);
|
251
255
|
}
|
252
256
|
}
|
253
257
|
@else {
|
254
258
|
@if $left != false {
|
255
|
-
padding-left:
|
259
|
+
padding-left: rhythm($left);
|
256
260
|
}
|
257
261
|
@if $right != false {
|
258
|
-
padding-right:
|
262
|
+
padding-right: rhythm($right);
|
259
263
|
}
|
260
264
|
}
|
261
265
|
}
|
@@ -37,7 +37,7 @@
|
|
37
37
|
* Converts a list of property values to a property map. Use to convert 'old-style' associative arrays to SASS's new Map type.
|
38
38
|
*
|
39
39
|
* @example
|
40
|
-
*
|
40
|
+
* list-to-map((color #FFF, text-align left))
|
41
41
|
* // Output:
|
42
42
|
* (color: #FFF, text-align: left)
|
43
43
|
*
|
@@ -63,26 +63,42 @@
|
|
63
63
|
|
64
64
|
|
65
65
|
/**
|
66
|
-
*
|
66
|
+
* Mixin for border properties
|
67
67
|
*
|
68
68
|
* @since 0.1
|
69
|
-
* @deprecated
|
70
69
|
*
|
71
|
-
* @param {String} $
|
72
|
-
* @param {Bool
|
70
|
+
* @param {String | Map | List | Numner} $values - The border (or outline) properties
|
71
|
+
* @param {Bool} $outline - If true, will render the values as outline properties
|
73
72
|
*/
|
74
73
|
|
75
|
-
@mixin
|
74
|
+
@mixin border($values, $outline: false)
|
76
75
|
{
|
77
|
-
|
78
|
-
|
76
|
+
// This mixin needs a value-map to work, so convert argument if it is not a value-map;
|
77
|
+
@if not(is-value-map($values, $keys-border)) {
|
78
|
+
$values: value-map($values, $keys-border);
|
79
|
+
}
|
80
|
+
|
81
|
+
$property: if($outline, outline, border);
|
82
|
+
|
83
|
+
// Rem fallback
|
84
|
+
$width: map-get($values, width);
|
85
|
+
@if type-of($width)==number and unit($width)==rem {
|
86
|
+
#{$property}-width: to-px($width);
|
87
|
+
}
|
88
|
+
|
89
|
+
@if map-has-key($values, width) and map-has-key($values, style) and map-has-key($values, color) {
|
90
|
+
#{$property}: map-get($values, width) map-get($values, style) map-get($values, color);
|
91
|
+
}
|
92
|
+
@else {
|
93
|
+
@each $key, $value in $values {
|
94
|
+
#{$property}-#{$key}: $value;
|
95
|
+
}
|
79
96
|
}
|
97
|
+
|
80
98
|
}
|
81
99
|
|
82
100
|
/**
|
83
|
-
*
|
84
101
|
* @alias border
|
85
|
-
* Mixin for outline properties.
|
86
102
|
*/
|
87
103
|
|
88
104
|
@mixin outline($attributes)
|
@@ -90,54 +106,40 @@
|
|
90
106
|
@include border($attributes, true);
|
91
107
|
}
|
92
108
|
|
109
|
+
|
93
110
|
/**
|
94
|
-
*
|
111
|
+
* Provides a cross-browser method to implement opacity. This replaces [Compass's](http://compass-style.org/reference/compass/css3/opacity/) mixin by the same name with a more accessible implementation.
|
95
112
|
*
|
96
113
|
* @since 0.1
|
97
114
|
*
|
98
|
-
* @
|
99
|
-
*
|
100
|
-
* @param {String | Map | List | Numner} $values - The border (or outline) properties
|
101
|
-
* @param {Bool} $outline - If true, will render the values as outline properties
|
115
|
+
* @param {Number} $opacity - A number between 0 and 1, where 0 is transparent and 1 is opaque.
|
102
116
|
*/
|
103
117
|
|
104
|
-
@mixin
|
105
|
-
{
|
106
|
-
|
107
|
-
|
108
|
-
@if type-of($values)=="list" {
|
109
|
-
$map: ();
|
110
|
-
@each $value in $values {
|
111
|
-
@if type-of($value)==number {
|
112
|
-
$map: append($map, width, space);
|
113
|
-
}
|
114
|
-
@else if type-of($value)==color {
|
115
|
-
$map: append($map, color, space);
|
116
|
-
}
|
117
|
-
@elseif type-of($value)==string {
|
118
|
-
$map: append($map, style, space);
|
119
|
-
}
|
120
|
-
}
|
121
|
-
@include border( list-to-map( zip($map, $values) ), $outline);
|
122
|
-
}
|
123
|
-
@elseif type-of($values)=="string" {
|
124
|
-
#{$property}: $values;
|
118
|
+
@mixin opacity($opacity) {
|
119
|
+
@include old-ie() {
|
120
|
+
filter: unquote("progid:DXImageTransform.Microsoft.Alpha(Opacity=#{round($opacity * 100)})");
|
125
121
|
}
|
126
|
-
|
122
|
+
opacity: $opacity;
|
123
|
+
}
|
127
124
|
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
125
|
+
|
126
|
+
/**
|
127
|
+
* Conditional mixin of property
|
128
|
+
*
|
129
|
+
* @since 0.1
|
130
|
+
* @deprecated
|
131
|
+
*
|
132
|
+
* @param {String} $property - A CSS property
|
133
|
+
* @param {Bool | *} $value - A value for the property, or false if the property should not be rendered.
|
134
|
+
*/
|
135
|
+
|
136
|
+
@mixin property($property, $value)
|
137
|
+
{
|
138
|
+
@if to-bool($value) {
|
139
|
+
$property: $value;
|
137
140
|
}
|
138
141
|
}
|
139
142
|
|
140
|
-
|
141
143
|
/**
|
142
144
|
* Support for old-mozilla, cuse it to separate old-ie declarations from your other declarations with either a separate stylesheet or added specificity (Modernizr).
|
143
145
|
*
|
@@ -200,20 +202,6 @@
|
|
200
202
|
vertical-align: #{$vertical-alignment};
|
201
203
|
}
|
202
204
|
}
|
203
|
-
/**
|
204
|
-
* Provides a cross-browser method to implement opacity. This replaces [Compass's](http://compass-style.org/reference/compass/css3/opacity/) mixin by the same name with a more accessible implementation.
|
205
|
-
*
|
206
|
-
* @since 0.1
|
207
|
-
*
|
208
|
-
* @param {Number} $opacity - A number between 0 and 1, where 0 is transparent and 1 is opaque.
|
209
|
-
*/
|
210
|
-
|
211
|
-
@mixin opacity($opacity) {
|
212
|
-
@include old-ie() {
|
213
|
-
filter: unquote("progid:DXImageTransform.Microsoft.Alpha(Opacity=#{round($opacity * 100)})");
|
214
|
-
}
|
215
|
-
opacity: $opacity;
|
216
|
-
}
|
217
205
|
|
218
206
|
/**
|
219
207
|
* Accepts a string which a valid appearance
|
@@ -3,12 +3,8 @@
|
|
3
3
|
|
4
4
|
// Content:
|
5
5
|
// 1. Functions
|
6
|
-
//
|
7
|
-
//
|
8
|
-
// vrhythm-units
|
9
|
-
// 1b. Horizontal Rhythm
|
10
|
-
// hrhythm
|
11
|
-
// vrhythm-units
|
6
|
+
// -rhythm-units
|
7
|
+
// rhythm
|
12
8
|
// 2. Mixins
|
13
9
|
// 2a. Vertical Rhythm:
|
14
10
|
// vrhythm
|
@@ -24,127 +20,92 @@
|
|
24
20
|
* Calculates a value based on the [$rhythm](./#variable-rhythm).
|
25
21
|
*
|
26
22
|
* @since 0.1
|
23
|
+
* @access private
|
27
24
|
*
|
28
|
-
* @param {Int | Fraction} $
|
25
|
+
* @param {Int | Fraction} $units (1) - The number of -rhythm-units (whole or fraction) to span
|
29
26
|
*
|
30
27
|
* @return {Number} - The calculated span in px
|
31
28
|
*/
|
32
29
|
|
33
|
-
@function
|
30
|
+
@function -rhythm-units($units: 1)
|
34
31
|
{
|
35
|
-
@return $rhythm * $
|
32
|
+
@return abs($rhythm * $units);
|
36
33
|
}
|
37
34
|
|
38
35
|
|
39
36
|
/**
|
40
|
-
* Find the optimal rhythm units for a given
|
41
|
-
* If the specified span is too small for the
|
37
|
+
* Find the optimal rhythm units for a given size in px.
|
38
|
+
* If the specified span is too small for the size, find the next best one
|
42
39
|
* based on a specified increment.
|
43
40
|
*
|
44
41
|
* @since 0.1
|
45
42
|
*
|
46
|
-
* @param {Number} $
|
47
|
-
* @param {Number}
|
48
|
-
* @param {Number}
|
43
|
+
* @param {Number} $units - The number of rhythm units to span (whole or fraction), 1 equals 1 $rhythm
|
44
|
+
* @param {Number} $size-px - The size in px
|
45
|
+
* @param {Number} $increment - The increment in rhythm-units (whole or fraction)
|
49
46
|
*
|
50
47
|
* @return {Number} - The calculated span in px
|
51
48
|
*/
|
52
49
|
|
53
|
-
@function
|
50
|
+
@function rhythm($args...)
|
54
51
|
{
|
55
|
-
$
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
52
|
+
$units: false;
|
53
|
+
$size-px: false;
|
54
|
+
$increment: false;
|
55
|
+
|
56
|
+
@each $var in $args {
|
57
|
+
@if unitless($var) and not($units) {
|
58
|
+
$units: $var;
|
59
|
+
} @elseif unitless($var) and not($increment) {
|
60
|
+
$increment: $var;
|
61
|
+
} @elseif not(unitless($var)) and unit($var)==px {
|
62
|
+
$size-px: $var;
|
63
|
+
}
|
60
64
|
}
|
61
65
|
|
62
|
-
@
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
*
|
69
|
-
* @example
|
70
|
-
* padding: hrhythm(.5);
|
71
|
-
* padding: to-unit( hrhythm(.5) );
|
72
|
-
* // Output:
|
73
|
-
* padding: 8px;
|
74
|
-
* padding: .5em;
|
75
|
-
*
|
76
|
-
* @since 0.1
|
77
|
-
*
|
78
|
-
* @param {Number} $fraction (1/2) - A fraction, e.g. 1/2
|
79
|
-
* @param {Value} $context (16px) - The font-size context, defaults to [$default-font-size](./#variable-default-font-size).
|
80
|
-
*
|
81
|
-
* @return {Number} - The calculated span in px
|
82
|
-
*/
|
66
|
+
@if not($units) {
|
67
|
+
$units: 1;
|
68
|
+
}
|
69
|
+
@if not($increment) {
|
70
|
+
$increment: 1;
|
71
|
+
}
|
83
72
|
|
84
|
-
@
|
85
|
-
{
|
86
|
-
|
87
|
-
|
88
|
-
@return $fraction;
|
73
|
+
@if $size-px {
|
74
|
+
@while $size-px >= -rhythm-units($units) {
|
75
|
+
$units: $units + $increment;
|
76
|
+
}
|
89
77
|
}
|
90
78
|
|
91
|
-
|
79
|
+
$span: -rhythm-units($units);
|
80
|
+
|
81
|
+
@return $span;
|
92
82
|
}
|
93
83
|
|
94
84
|
|
95
85
|
// 2. MIXINS
|
96
86
|
|
97
|
-
|
98
|
-
/**
|
99
|
-
* Use for top and bottom margins and paddings.
|
100
|
-
*
|
101
|
-
* @example
|
102
|
-
* @include vrhythm(1, padding-top);
|
103
|
-
*
|
104
|
-
* @since 0.1
|
105
|
-
*
|
106
|
-
* @param {Number} $span - The number of rhythm-units - whole or fraction - to span
|
107
|
-
* @param {String} $property - The property to be set, e.g. padding, margin-top
|
108
|
-
* @param {Value} $context (16px) - The font-size context
|
109
|
-
*/
|
110
|
-
|
111
|
-
@mixin vrhythm($span, $property, $context: $default-font-size)
|
112
|
-
{
|
113
|
-
@if strip-unit($span)==0 {
|
114
|
-
#{$property}: 0;
|
115
|
-
}
|
116
|
-
@else {
|
117
|
-
@if unit($unit)==rem {
|
118
|
-
#{$property}: $span*$default-line-height;
|
119
|
-
}
|
120
|
-
#{$property}: vrhythm($span);
|
121
|
-
}
|
122
|
-
|
123
|
-
}
|
124
|
-
|
125
|
-
|
126
87
|
/**
|
127
88
|
* Use for left and right margins and paddings. Uses [$gutter-width](./#variable-gutter-width) declared in grid settings
|
128
89
|
*
|
129
90
|
* @example
|
130
|
-
* @include
|
91
|
+
* @include rhythm(1, padding-left);
|
131
92
|
*
|
132
93
|
* @since 0.1
|
133
94
|
*
|
134
|
-
* @param {Number} $
|
95
|
+
* @param {Number} $units - The fraction of the gutter measurement
|
135
96
|
* @param {String} $property - The property to be set, e.g. padding, margin-left
|
136
97
|
* @param {Number} $context (16px) - The font-size context
|
137
98
|
*/
|
138
99
|
|
139
|
-
@mixin
|
100
|
+
@mixin rhythm($units, $property, $context: $default-font-size)
|
140
101
|
{
|
141
|
-
@if strip-unit($
|
142
|
-
|
143
|
-
}
|
144
|
-
@if unit($unit)==rem {
|
145
|
-
|
146
|
-
}
|
147
|
-
#{$property}:
|
102
|
+
// @if strip-unit($units)==0 {
|
103
|
+
// #{$property}: 0;
|
104
|
+
// }
|
105
|
+
// @if unit($unit)==rem {
|
106
|
+
// #{$property}: $units*$gutter-width;
|
107
|
+
// }
|
108
|
+
// #{$property}: rhythm($units, $context);
|
148
109
|
}
|
149
110
|
|
150
111
|
|